Skip to content

Commit 3cf3595

Browse files
author
James Campbell
committed
Preparing downloader for depedency system.
1 parent 98ace2d commit 3cf3595

File tree

2 files changed

+22
-8
lines changed

2 files changed

+22
-8
lines changed

lib/cocoapods-deploy/deploy_downloader.rb

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,23 @@ def download(config)
1515
end
1616
end
1717

18-
#Download Normal
1918
def download_source(config)
2019
# TODO: Method for looping through dependency
2120
source = ExternalSources.from_dependency(dependency, config.podfile.defined_in_file)
2221
source.fetch(config.sandbox)
2322
end
2423

25-
#Download Podspecs
2624
def download_podspec(config)
27-
# TODO: Method for looping through dependency
28-
source = ExternalSources.from_dependency(dependency, config.podfile.defined_in_file)
29-
source.fetch(config.sandbox)
25+
dependencies_for_sources(config).each do |dep|
26+
source = ExternalSources.from_dependency(dep, config.podfile.defined_in_file)
27+
source.fetch(config.sandbox)
28+
end
29+
end
30+
31+
private
32+
33+
def dependencies_for_sources(config)
34+
[]
3035
end
3136
end
3237
end

spec/deploy_downloader_spec.rb

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,39 @@ module Pod
1616
Config.instance.stubs(:podfile).returns(@podfile)
1717

1818
@source = MockExternalSource.new
19-
ExternalSources.stubs(:from_dependency).returns(@source)
2019
end
2120

2221
it "should external source outside of repo" do
2322
dependency = Dependency.new("AFNetworking", { :git => "https://github.com/gowalla/AFNetworking.git"})
2423
downloader = DeployDownloader.new(dependency)
2524

25+
ExternalSources.stubs(:from_dependency).returns(@source)
2626
@source.expects(:fetch)
27+
2728
downloader.download(Config.instance)
2829
end
2930

3031
it "should download source from main repo" do
31-
dependency = Dependency.new("AFNetworking", { :podspec => "http://github.com/CocoaPods/Specs.git/master/Specs/AFNetworking/1.0/AFNetworking.podspec.json"})
32+
dependency = Dependency.new("AFNetworking", { :podspec => "{root-url}/master/Specs/AFNetworking/1.0/AFNetworking.podspec.json"})
3233
downloader = DeployDownloader.new(dependency)
34+
expected_dependency = Dependency.new("AFNetworking", { :podspec => "http://github.com/My/Repo.git/master/Specs/AFNetworking/1.0/AFNetworking.podspec.json"})
3335

36+
ExternalSources.expects(:from_dependency).with(expected_dependency, @podfile.defined_in_file)
37+
ExternalSources.stubs(:from_dependency).returns(@source)
3438
@source.expects(:fetch)
39+
3540
downloader.download(Config.instance)
3641
end
3742

3843
it "should download source from external repo" do
39-
dependency = Dependency.new("AFNetworking", { :podspec => "http://github.com/My/Repo.git/master/Specs/AFNetworking/1.0/AFNetworking.podspec.json"})
44+
dependency = Dependency.new("AFNetworking", { :podspec => "{root-url}/master/Specs/AFNetworking/1.0/AFNetworking.podspec.json"})
4045
downloader = DeployDownloader.new(dependency)
46+
expected_dependency = Dependency.new("AFNetworking", { :podspec => "http://github.com/CocoaPods/Specs.git/master/Specs/AFNetworking/1.0/AFNetworking.podspec.json"})
4147

48+
ExternalSources.expects(:from_dependency).with(expected_dependency, @podfile.defined_in_file)
49+
ExternalSources.stubs(:from_dependency).returns(@source)
4250
@source.expects(:fetch)
51+
4352
downloader.download(Config.instance)
4453
end
4554
end

0 commit comments

Comments
 (0)