diff options
author | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2022-08-09 11:16:07 +0900 |
---|---|---|
committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2022-08-09 12:05:19 +0900 |
commit | 44264b4fee1e208e759710c39271186ff9856b40 (patch) | |
tree | 939a9810293c86553e7b600bce9fb426776f6000 /test | |
parent | f8936b3341376948112e31f9e9b0cb3ad6e91e7c (diff) |
Merge rubygems/bundler HEAD.
Pick from https://github.com/rubygems/rubygems/commit/dfbb5a38114640e0d8d616861607f3de73ee0199
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/6224
Diffstat (limited to 'test')
-rw-r--r-- | test/rubygems/helper.rb | 10 | ||||
-rw-r--r-- | test/rubygems/test_gem_dependency_installer.rb | 4 | ||||
-rw-r--r-- | test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb | 2 | ||||
-rw-r--r-- | test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb | 2 | ||||
-rw-r--r-- | test/rubygems/test_gem_installer.rb | 4 | ||||
-rw-r--r-- | test/rubygems/test_gem_package_tar_reader.rb | 2 | ||||
-rw-r--r-- | test/rubygems/test_gem_resolver_installer_set.rb | 31 | ||||
-rw-r--r-- | test/rubygems/test_gem_specification.rb | 4 | ||||
-rw-r--r-- | test/rubygems/test_require.rb | 2 | ||||
-rw-r--r-- | test/rubygems/utilities.rb | 8 |
10 files changed, 50 insertions, 19 deletions
diff --git a/test/rubygems/helper.rb b/test/rubygems/helper.rb index 46eefbb48e..cb0177adb2 100644 --- a/test/rubygems/helper.rb +++ b/test/rubygems/helper.rb @@ -599,7 +599,7 @@ class Gem::TestCase < Test::Unit::TestCase end def in_path?(executable) # :nodoc: - return true if %r{\A([A-Z]:|/)} =~ executable and File.exist? executable + return true if %r{\A([A-Z]:|/)} =~ executable && File.exist?(executable) ENV["PATH"].split(File::PATH_SEPARATOR).any? do |directory| File.exist? File.join directory, executable @@ -849,7 +849,7 @@ class Gem::TestCase < Test::Unit::TestCase # or a +block+ can be given for full customization of the specification. def util_spec(name, version = 2, deps = nil, *files) # :yields: specification - raise "deps or block, not both" if deps and block_given? + raise "deps or block, not both" if deps && block_given? spec = Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY @@ -1279,10 +1279,10 @@ Also, a list: rubyexe = "#{ruby}.exe" 3.times do - if File.exist? ruby and File.executable? ruby and !File.directory? ruby + if File.exist?(ruby) && File.executable?(ruby) && !File.directory?(ruby) return File.expand_path(ruby) end - if File.exist? rubyexe and File.executable? rubyexe + if File.exist?(rubyexe) && File.executable?(rubyexe) return File.expand_path(rubyexe) end ruby = File.join("..", ruby) @@ -1592,7 +1592,7 @@ class Object metaclass = class << self; self; end - if respond_to? name and not methods.map(&:to_s).include? name.to_s + if respond_to?(name) && !methods.map(&:to_s).include?(name.to_s) metaclass.send :define_method, name do |*args| super(*args) end diff --git a/test/rubygems/test_gem_dependency_installer.rb b/test/rubygems/test_gem_dependency_installer.rb index 9db904ba53..2b0b874b2d 100644 --- a/test/rubygems/test_gem_dependency_installer.rb +++ b/test/rubygems/test_gem_dependency_installer.rb @@ -1051,8 +1051,8 @@ class TestGemDependencyInstaller < Gem::TestCase releases = set.all_specs - assert releases.any? {|s| s.name == "a" and s.version.to_s == "1" } - refute releases.any? {|s| s.name == "a" and s.version.to_s == "1.a" } + assert releases.any? {|s| s.name == "a" && s.version.to_s == "1" } + refute releases.any? {|s| s.name == "a" && s.version.to_s == "1.a" } dependency.prerelease = true diff --git a/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb b/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb index 21c4fd1c8d..0e04f0de5e 100644 --- a/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb +++ b/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb @@ -1,4 +1,4 @@ -if ENV["RUBYOPT"] or defined? Gem +if ENV["RUBYOPT"] || defined? Gem ENV.delete "RUBYOPT" require "rbconfig" diff --git a/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb b/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb index 81b12f99ec..f404aa3468 100644 --- a/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb +++ b/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb @@ -1,4 +1,4 @@ -if ENV["RUBYOPT"] or defined? Gem +if ENV["RUBYOPT"] || defined? Gem ENV.delete "RUBYOPT" require "rbconfig" diff --git a/test/rubygems/test_gem_installer.rb b/test/rubygems/test_gem_installer.rb index 55f0a074b8..0d0746ec84 100644 --- a/test/rubygems/test_gem_installer.rb +++ b/test/rubygems/test_gem_installer.rb @@ -473,7 +473,7 @@ gem 'other', version end end ensure - FileUtils.chmod 0755, util_inst_bindir unless ($DEBUG or win_platform?) + FileUtils.chmod 0755, util_inst_bindir unless ($DEBUG || win_platform?) end def test_generate_bin_script_no_shebang @@ -577,7 +577,7 @@ gem 'other', version end end ensure - FileUtils.chmod 0755, util_inst_bindir unless ($DEBUG or win_platform?) + FileUtils.chmod 0755, util_inst_bindir unless ($DEBUG || win_platform?) end def test_generate_bin_symlink_update_newer diff --git a/test/rubygems/test_gem_package_tar_reader.rb b/test/rubygems/test_gem_package_tar_reader.rb index 86ffff4fe5..19860eb7e8 100644 --- a/test/rubygems/test_gem_package_tar_reader.rb +++ b/test/rubygems/test_gem_package_tar_reader.rb @@ -29,7 +29,7 @@ class TestGemPackageTarReader < Gem::Package::TarTestCase str = tar_file_header("lib/foo", "", 010644, content.size, Time.now) + - content + "\0" * (512 - content.size) + content + "\0" * (512 - content.size) str << "\0" * 1024 io = TempIO.new(str) diff --git a/test/rubygems/test_gem_resolver_installer_set.rb b/test/rubygems/test_gem_resolver_installer_set.rb index ffa6b13ea4..7617919e2c 100644 --- a/test/rubygems/test_gem_resolver_installer_set.rb +++ b/test/rubygems/test_gem_resolver_installer_set.rb @@ -51,6 +51,25 @@ class TestGemResolverInstallerSet < Gem::TestCase assert_equal %w[a-1], set.always_install.map {|s| s.full_name } end + def test_add_always_install_platform_if_gem_platforms_modified_by_platform_flag + freebsd = Gem::Platform.new "x86-freebsd-9" + + spec_fetcher do |fetcher| + fetcher.download "a", 1 + fetcher.download "a", 1 do |s| + s.platform = freebsd + end + end + + # equivalent to --platform=x86-freebsd-9 + Gem.platforms << freebsd + set = Gem::Resolver::InstallerSet.new :both + + set.add_always_install dep("a") + + assert_equal %w[a-1-x86-freebsd-9], set.always_install.map {|s| s.full_name } + end + def test_add_always_install_index_spec_platform _, a_1_local_gem = util_gem "a", 1 do |s| s.platform = Gem::Platform.local @@ -200,6 +219,18 @@ class TestGemResolverInstallerSet < Gem::TestCase set.find_all(req).map {|spec| spec.full_name }.sort end + def test_find_all_prerelease_dependencies_with_add_local + activesupport_7_1_0_alpha = util_spec "activesupport", "7.1.0.alpha" + + install_gem activesupport_7_1_0_alpha + + set = Gem::Resolver::InstallerSet.new :both + + req = Gem::Resolver::DependencyRequest.new dep("activesupport", ">= 4.2.0"), nil + + assert_equal %w[activesupport-7.1.0.alpha], set.find_all(req).map {|spec| spec.full_name } + end + def test_load_spec specs = spec_fetcher do |fetcher| fetcher.spec "a", 2 diff --git a/test/rubygems/test_gem_specification.rb b/test/rubygems/test_gem_specification.rb index cf0dba4331..8ce8293f33 100644 --- a/test/rubygems/test_gem_specification.rb +++ b/test/rubygems/test_gem_specification.rb @@ -796,7 +796,7 @@ dependencies: [] assert_equal File.join(@tempdir, "a-2.gemspec"), spec.loaded_from end - if RUBY_ENGINE == "ruby" and RUBY_VERSION < "2.7" + if RUBY_ENGINE == "ruby" && RUBY_VERSION < "2.7" def test_self_load_tainted full_path = @a2.spec_file write_file full_path do |io| @@ -1450,7 +1450,7 @@ dependencies: [] @ext.build_extensions assert_path_not_exist @ext.extension_dir ensure - unless ($DEBUG or win_platform? or Process.uid.zero? or Gem.java_platform?) + unless ($DEBUG || win_platform? || Process.uid.zero? || Gem.java_platform?) FileUtils.chmod 0755, File.join(@ext.base_dir, "extensions") FileUtils.chmod 0755, @ext.base_dir end diff --git a/test/rubygems/test_require.rb b/test/rubygems/test_require.rb index f933bbb5d5..6135acea92 100644 --- a/test/rubygems/test_require.rb +++ b/test/rubygems/test_require.rb @@ -269,7 +269,7 @@ class TestGemRequire < Gem::TestCase assert_includes $LOAD_PATH, rubylibdir message = proc { "this test relies on the b-2 gem lib/ to be before stdlib to make sense\n" + - $LOAD_PATH.pretty_inspect + $LOAD_PATH.pretty_inspect } assert_operator $LOAD_PATH.index(b2.load_paths[0]), :<, $LOAD_PATH.index(rubylibdir), message diff --git a/test/rubygems/utilities.rb b/test/rubygems/utilities.rb index 5f8f763cb5..c01f7acd48 100644 --- a/test/rubygems/utilities.rb +++ b/test/rubygems/utilities.rb @@ -39,9 +39,9 @@ class Gem::FakeFetcher end def find_data(path) - return Gem.read_binary path.path if URI === path and "file" == path.scheme + return Gem.read_binary path.path if URI === path && "file" == path.scheme - if URI === path and "URI::#{path.scheme.upcase}" != path.class.name + if URI === path && "URI::#{path.scheme.upcase}" != path.class.name raise ArgumentError, "mismatch for scheme #{path.scheme} and class #{path.class}" end @@ -67,7 +67,7 @@ class Gem::FakeFetcher if data.respond_to?(:call) data.call else - if path.to_s.end_with?(".gz") and not data.nil? and not data.empty? + if path.to_s.end_with?(".gz") && !data.nil? && !data.empty? data = Gem::Util.gunzip data end data @@ -76,7 +76,7 @@ class Gem::FakeFetcher def cache_update_path(uri, path = nil, update = true) if data = fetch_path(uri) - File.open(path, "wb") {|io| io.write data } if path and update + File.open(path, "wb") {|io| io.write data } if path && update data else Gem.read_binary(path) if path |