diff options
Diffstat (limited to 'test/rubygems/test_gem_request_set_gem_dependency_api.rb')
-rw-r--r-- | test/rubygems/test_gem_request_set_gem_dependency_api.rb | 183 |
1 files changed, 94 insertions, 89 deletions
diff --git a/test/rubygems/test_gem_request_set_gem_dependency_api.rb b/test/rubygems/test_gem_request_set_gem_dependency_api.rb index 5fd2bbb9c2..4b5eaa38ed 100644 --- a/test/rubygems/test_gem_request_set_gem_dependency_api.rb +++ b/test/rubygems/test_gem_request_set_gem_dependency_api.rb @@ -1,4 +1,5 @@ # frozen_string_literal: true + require_relative "helper" require "rubygems/request_set" @@ -6,14 +7,12 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def setup super - @GDA = Gem::RequestSet::GemDependencyAPI - @set = Gem::RequestSet.new @git_set = Gem::Resolver::GitSet.new @vendor_set = Gem::Resolver::VendorSet.new - @gda = @GDA.new @set, "gem.deps.rb" + @gda = Gem::RequestSet::GemDependencyAPI.new @set, "gem.deps.rb" @gda.instance_variable_set :@git_set, @git_set @gda.instance_variable_set :@vendor_set, @vendor_set end @@ -45,10 +44,10 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gempspec_with_multiple_runtime_deps save_gemspec "foo", "1.0" do |s| - s.add_runtime_dependency "bar", ">= 1.6.0", "< 1.6.4" + s.add_dependency "bar", ">= 1.6.0", "< 1.6.4" end @gda.gemspec - assert_equal %w[ foo bar ].sort, @set.dependencies.map(&:name).sort + assert_equal %w[foo bar].sort, @set.dependencies.map(&:name).sort bar = @set.dependencies.find {|d| d.name == "bar" } assert_equal [["<", Gem::Version.create("1.6.4")], [">=", Gem::Version.create("1.6.0")]], bar.requirement.requirements.sort @@ -91,11 +90,11 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_git - @gda.gem "a", :git => "git/a" + @gda.gem "a", git: "git/a" assert_equal [dep("a")], @set.dependencies - assert_equal %w[git/a master], @git_set.repositories["a"] + assert_equal ["git/a", nil], @git_set.repositories["a"] expected = { "a" => Gem::Requirement.create("!") } @@ -103,11 +102,11 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_bitbucket - @gda.gem "a", :bitbucket => "example/repository" + @gda.gem "a", bitbucket: "example/repository" assert_equal [dep("a")], @set.dependencies - assert_equal %w[https://example@bitbucket.org/example/repository.git master], + assert_equal ["https://example@bitbucket.org/example/repository.git", nil], @git_set.repositories["a"] expected = { "a" => Gem::Requirement.create("!") } @@ -116,11 +115,11 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_bitbucket_expand_path - @gda.gem "a", :bitbucket => "example" + @gda.gem "a", bitbucket: "example" assert_equal [dep("a")], @set.dependencies - assert_equal %w[https://example@bitbucket.org/example/example.git master], + assert_equal ["https://example@bitbucket.org/example/example.git", nil], @git_set.repositories["a"] expected = { "a" => Gem::Requirement.create("!") } @@ -130,7 +129,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_git_branch _, err = capture_output do - @gda.gem "a", :git => "git/a", :branch => "other", :tag => "v1" + @gda.gem "a", git: "git/a", branch: "other", tag: "v1" end expected = "Gem dependencies file gem.deps.rb includes git reference for both ref/branch and tag but only ref/branch is used." assert_match expected, err @@ -141,17 +140,17 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_git_gist - @gda.gem "a", :gist => "a" + @gda.gem "a", gist: "a" assert_equal [dep("a")], @set.dependencies - assert_equal %w[https://gist.github.com/a.git master], + assert_equal ["https://gist.github.com/a.git", nil], @git_set.repositories["a"] end def test_gem_git_ref _, err = capture_output do - @gda.gem "a", :git => "git/a", :ref => "abcd123", :branch => "other" + @gda.gem "a", git: "git/a", ref: "abcd123", branch: "other" end expected = "Gem dependencies file gem.deps.rb includes git reference for both ref and branch but only ref is used." assert_match expected, err @@ -162,16 +161,16 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_git_submodules - @gda.gem "a", :git => "git/a", :submodules => true + @gda.gem "a", git: "git/a", submodules: true assert_equal [dep("a")], @set.dependencies - assert_equal %w[git/a master], @git_set.repositories["a"] + assert_equal ["git/a", nil], @git_set.repositories["a"] assert_equal %w[git/a], @git_set.need_submodules.keys end def test_gem_git_tag - @gda.gem "a", :git => "git/a", :tag => "v1" + @gda.gem "a", git: "git/a", tag: "v1" assert_equal [dep("a")], @set.dependencies @@ -179,11 +178,11 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_github - @gda.gem "a", :github => "example/repository" + @gda.gem "a", github: "example/repository" assert_equal [dep("a")], @set.dependencies - assert_equal %w[https://github.com/example/repository.git master], + assert_equal ["https://github.com/example/repository.git", nil], @git_set.repositories["a"] expected = { "a" => Gem::Requirement.create("!") } @@ -192,11 +191,11 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_github_expand_path - @gda.gem "a", :github => "example" + @gda.gem "a", github: "example" assert_equal [dep("a")], @set.dependencies - assert_equal %w[https://github.com/example/example.git master], + assert_equal ["https://github.com/example/example.git", nil], @git_set.repositories["a"] expected = { "a" => Gem::Requirement.create("!") } @@ -205,7 +204,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_group - @gda.gem "a", :group => :test + @gda.gem "a", group: :test assert_equal [dep("a")], @set.dependencies end @@ -213,7 +212,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_group_without @gda.without_groups << :test - @gda.gem "a", :group => :test + @gda.gem "a", group: :test assert_empty @set.dependencies @@ -223,7 +222,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_groups - @gda.gem "a", :groups => [:test, :development] + @gda.gem "a", groups: [:test, :development] assert_equal [dep("a")], @set.dependencies end @@ -231,7 +230,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_path name, version, directory = vendor_gem - @gda.gem name, :path => directory + @gda.gem name, path: directory assert_equal [dep(name)], @set.dependencies @@ -245,10 +244,11 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_platforms - win_platform, Gem.win_platform = Gem.win_platform?, false + win_platform = Gem.win_platform? + Gem.win_platform = false with_engine_version "ruby", "2.0.0" do - @gda.gem "a", :platforms => :ruby + @gda.gem "a", platforms: :ruby refute_empty @set.dependencies end @@ -257,36 +257,37 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_platforms_bundler_ruby - win_platform, Gem.win_platform = Gem.win_platform?, false + win_platform = Gem.win_platform? + Gem.win_platform = false with_engine_version "ruby", "2.0.0" do set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :ruby + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :ruby refute_empty set.dependencies end with_engine_version "rbx", "2.0.0" do set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :ruby + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :ruby refute_empty set.dependencies end with_engine_version "truffleruby", "2.0.0" do set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :ruby + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :ruby refute_empty set.dependencies end with_engine_version "jruby", "1.7.6" do set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :ruby + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :ruby assert_empty set.dependencies end @@ -295,8 +296,8 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase with_engine_version "ruby", "2.0.0" do set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :ruby + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :ruby assert_empty set.dependencies end @@ -306,31 +307,32 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_platforms_engine with_engine_version "jruby", "1.7.6" do - @gda.gem "a", :platforms => :mri + @gda.gem "a", platforms: :mri assert_empty @set.dependencies end with_engine_version "truffleruby", "1.2.3" do - @gda.gem "a", :platforms => :mri + @gda.gem "a", platforms: :mri assert_empty @set.dependencies end end def test_gem_platforms_maglev - win_platform, Gem.win_platform = Gem.win_platform?, false + win_platform = Gem.win_platform? + Gem.win_platform = false with_engine_version "maglev", "1.0.0" do set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :ruby + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :ruby refute_empty set.dependencies set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :maglev + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :maglev refute_empty set.dependencies end @@ -341,37 +343,38 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_platforms_truffleruby with_engine_version "truffleruby", "1.0.0" do set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :truffleruby + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :truffleruby refute_empty set.dependencies set = Gem::RequestSet.new - gda = @GDA.new set, "gem.deps.rb" - gda.gem "a", :platforms => :maglev + gda = Gem::RequestSet::GemDependencyAPI.new set, "gem.deps.rb" + gda.gem "a", platforms: :maglev assert_empty set.dependencies end end def test_gem_platforms_multiple - win_platform, Gem.win_platform = Gem.win_platform?, false + win_platform = Gem.win_platform? + Gem.win_platform = false with_engine_version "ruby", "2.0.0" do - @gda.gem "a", :platforms => [:mswin, :jruby] + @gda.gem "a", platforms: [:mswin, :jruby] assert_empty @set.dependencies end - ensure Gem.win_platform = win_platform end def test_gem_platforms_platform - win_platform, Gem.win_platform = Gem.win_platform?, false + win_platform = Gem.win_platform? + Gem.win_platform = false with_engine_version "ruby", "2.0.0" do - @gda.gem "a", :platforms => :jruby, :platform => :ruby + @gda.gem "a", platforms: :jruby, platform: :ruby refute_empty @set.dependencies end @@ -381,7 +384,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_platforms_version with_engine_version "ruby", "2.0.0" do - @gda.gem "a", :platforms => :ruby_18 + @gda.gem "a", platforms: :ruby_18 assert_empty @set.dependencies end @@ -389,15 +392,15 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_platforms_unknown e = assert_raise ArgumentError do - @gda.gem "a", :platforms => :unknown + @gda.gem "a", platforms: :unknown end assert_equal "unknown platform :unknown", e.message end def test_gem_requires - @gda.gem "a", :require => %w[b c] - @gda.gem "d", :require => "e" + @gda.gem "a", require: %w[b c] + @gda.gem "d", require: "e" assert_equal [dep("a"), dep("d")], @set.dependencies @@ -406,7 +409,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_requires_false - @gda.gem "a", :require => false + @gda.gem "a", require: false assert_equal [dep("a")], @set.dependencies @@ -416,7 +419,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_requires_without_group @gda.without_groups << :test - @gda.gem "a", :group => :test + @gda.gem "a", group: :test assert_empty @set.dependencies @@ -444,7 +447,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase end def test_gem_requirements_options - @gda.gem "c", :git => "https://example/c.git" + @gda.gem "c", git: "https://example/c.git" assert_equal [dep("c")], @set.dependencies end @@ -452,19 +455,19 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_source_mismatch name, _, directory = vendor_gem - gda = @GDA.new @set, nil + gda = Gem::RequestSet::GemDependencyAPI.new @set, nil gda.gem name e = assert_raise ArgumentError do - gda.gem name, :path => directory + gda.gem name, path: directory end assert_equal "duplicate source path: #{directory} for gem #{name}", e.message - gda = @GDA.new @set, nil + gda = Gem::RequestSet::GemDependencyAPI.new @set, nil gda.instance_variable_set :@vendor_set, @vendor_set - gda.gem name, :path => directory + gda.gem name, path: directory e = assert_raise ArgumentError do gda.gem name @@ -477,7 +480,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase def test_gem_deps_file assert_equal "gem.deps.rb", @gda.gem_deps_file - gda = @GDA.new @set, "foo/Gemfile" + gda = Gem::RequestSet::GemDependencyAPI.new @set, "foo/Gemfile" assert_equal "Gemfile", gda.gem_deps_file end @@ -486,10 +489,10 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase groups = [] @gda.group :a do - groups = @gda.send :gem_group, "a", :group => :b, :groups => [:c, :d] + groups = @gda.send :gem_group, "a", group: :b, groups: [:c, :d] end - assert_equal [:a, :b, :c, :d], groups.sort_by {|group| group.to_s } + assert_equal [:a, :b, :c, :d], groups.sort_by(&:to_s) end def test_gemspec @@ -534,7 +537,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase @gda.without_groups << :other - @gda.gemspec :development_group => :other + @gda.gemspec development_group: :other assert_equal [dep("a", "= 1"), dep("b", "= 2")], @set.dependencies @@ -566,7 +569,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase s.add_dependency "c", 3 end - @gda.gemspec :name => "b" + @gda.gemspec name: "b" assert_equal [dep("b", "= 2"), dep("c", "= 3")], @set.dependencies end @@ -596,7 +599,7 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase s.add_dependency "b", 2 end - @gda.gemspec :path => "other" + @gda.gemspec path: "other" assert_equal [dep("a", "= 1"), dep("b", "= 2")], @set.dependencies end @@ -609,8 +612,8 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase assert_equal [dep("a"), dep("b")], @set.dependencies - assert_equal %w[git://example/repo.git master], @git_set.repositories["a"] - assert_equal %w[git://example/repo.git master], @git_set.repositories["b"] + assert_equal ["git://example/repo.git", nil], @git_set.repositories["a"] + assert_equal ["git://example/repo.git", nil], @git_set.repositories["b"] end def test_git_source @@ -618,9 +621,9 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase "git://example/#{repo_name}.git" end - @gda.gem "a", :example => "repo" + @gda.gem "a", example: "repo" - assert_equal %w[git://example/repo.git master], @git_set.repositories["a"] + assert_equal ["git://example/repo.git", nil], @git_set.repositories["a"] end def test_group @@ -642,7 +645,7 @@ end GEM_DEPS io.flush - gda = @GDA.new @set, io.path + gda = Gem::RequestSet::GemDependencyAPI.new @set, io.path assert_equal gda, gda.load @@ -653,7 +656,7 @@ end end def test_pin_gem_source - gda = @GDA.new @set, nil + gda = Gem::RequestSet::GemDependencyAPI.new @set, nil gda.send :pin_gem_source, "a" gda.send :pin_gem_source, "a" @@ -674,7 +677,7 @@ end end def test_platform_mswin - if win_platform? + if Gem.win_platform? util_set_arch "x86-mswin32-60" do @gda.platform :mswin do @gda.gem "a" @@ -695,9 +698,10 @@ end end def test_platform_multiple - win_platform, Gem.win_platform = Gem.win_platform?, false + win_platform = Gem.win_platform? + Gem.win_platform = false - gda = @GDA.new @set, nil + gda = Gem::RequestSet::GemDependencyAPI.new @set, nil with_engine_version "ruby", "1.8.7" do gda.platform :mri_19, :mri_20 do @@ -707,7 +711,7 @@ end assert_empty @set.dependencies - gda = @GDA.new @set, nil + gda = Gem::RequestSet::GemDependencyAPI.new @set, nil with_engine_version "ruby", "2.0.0" do gda.platform :mri_19, :mri_20 do @@ -721,7 +725,8 @@ end end def test_platform_ruby - win_platform, Gem.win_platform = Gem.win_platform?, false + win_platform = Gem.win_platform? + Gem.win_platform = false @gda.platform :ruby do @gda.gem "a" @@ -733,7 +738,7 @@ end end def test_platforms - unless win_platform? + unless Gem.win_platform? util_set_arch "i686-darwin8.10.1" do @gda.platforms :ruby do @gda.gem "a" @@ -757,19 +762,19 @@ end def test_ruby_engine with_engine_version "jruby", "1.7.6" do assert @gda.ruby RUBY_VERSION, - :engine => "jruby", :engine_version => "1.7.6" + engine: "jruby", engine_version: "1.7.6" end with_engine_version "truffleruby", "1.0.0-rc11" do assert @gda.ruby RUBY_VERSION, - :engine => "truffleruby", :engine_version => "1.0.0-rc11" + engine: "truffleruby", engine_version: "1.0.0-rc11" end end def test_ruby_engine_mismatch_engine with_engine_version "ruby", "2.0.0" do e = assert_raise Gem::RubyVersionMismatch do - @gda.ruby RUBY_VERSION, :engine => "jruby", :engine_version => "1.7.4" + @gda.ruby RUBY_VERSION, engine: "jruby", engine_version: "1.7.4" end assert_equal "Your Ruby engine is ruby, but your gem.deps.rb requires jruby", @@ -780,7 +785,7 @@ end def test_ruby_engine_mismatch_version with_engine_version "jruby", "1.7.6" do e = assert_raise Gem::RubyVersionMismatch do - @gda.ruby RUBY_VERSION, :engine => "jruby", :engine_version => "1.7.4" + @gda.ruby RUBY_VERSION, engine: "jruby", engine_version: "1.7.4" end assert_equal "Your Ruby engine version is jruby 1.7.6, but your gem.deps.rb requires jruby 1.7.4", @@ -790,7 +795,7 @@ end def test_ruby_engine_no_engine_version e = assert_raise ArgumentError do - @gda.ruby RUBY_VERSION, :engine => "jruby" + @gda.ruby RUBY_VERSION, engine: "jruby" end assert_equal "You must specify engine_version along with the Ruby engine", |