[rubygems/rubygems] Extract some common logic to a test helper

https://github.com/rubygems/rubygems/commit/ef4741b7cb
This commit is contained in:
David Rodríguez 2023-03-14 15:13:12 +01:00 committed by Hiroshi SHIBATA
parent 5733828734
commit 123bedd295

View File

@ -22,12 +22,7 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
a_4, = util_gem "a", 4
install_gem a_4, :install_dir => gemhome2
Gem::Specification.dirs = [@gemhome, gemhome2]
assert_includes Gem::Specification.all_names, "a-1"
assert_includes Gem::Specification.all_names, "a-4"
assert_includes Gem::Specification.all_names, "b-2"
assert_includes Gem::Specification.all_names, "default-1"
assert_gems_presence "a-1", "a-4", "b-2", "default-1", dirs: [@gemhome, gemhome2]
@cmd.options[:all] = true
@cmd.options[:args] = %w[a]
@ -346,11 +341,7 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
a_4, = util_gem "a", 4
install_gem a_4
Gem::Specification.dirs = [@gemhome, gemhome2]
assert_includes Gem::Specification.all_names, "a-1"
assert_includes Gem::Specification.all_names, "a-4"
assert_includes Gem::Specification.all_names, "default-1"
assert_gems_presence "a-1", "a-4", "default-1", dirs: [@gemhome, gemhome2]
@cmd.options[:all] = true
@cmd.options[:args] = []
@ -371,9 +362,7 @@ class TestGemCommandsUninstallCommand < Gem::InstallerTestCase
a_4, = util_gem "a", 4
install_gem a_4 , :install_dir => gemhome2
Gem::Specification.dirs = [@gemhome, gemhome2]
assert_includes Gem::Specification.all_names, "a-4"
assert_gems_presence "a-4", dirs: [@gemhome, gemhome2]
@cmd.options[:args] = ["a:4"]
@ -501,4 +490,12 @@ WARNING: Use your OS package manager to uninstall vendor gems
end
end
end
def assert_gems_presence(*gems, dirs:)
Gem::Specification.dirs = dirs
gems.each do |full_name|
assert_includes Gem::Specification.all_names, full_name
end
end
end