From f8058353c2e0aaf64bd19c85e4c7081012dc7530 Mon Sep 17 00:00:00 2001 From: Hiroshi SHIBATA Date: Sat, 14 Dec 2019 21:19:28 +0900 Subject: [PATCH] Fixed test failures with gem command path on ruby core repo. --- spec/bundler/gem_helper_spec.rb | 2 +- spec/commands/exec_spec.rb | 2 +- spec/support/path.rb | 6 +++++- spec/support/rubygems_ext.rb | 2 +- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/spec/bundler/gem_helper_spec.rb b/spec/bundler/gem_helper_spec.rb index c01d65d5dd7..29e10d64f81 100644 --- a/spec/bundler/gem_helper_spec.rb +++ b/spec/bundler/gem_helper_spec.rb @@ -235,7 +235,7 @@ def mock_build_message(name, version) end it "uses Kernel.system" do - expect(Kernel).to receive(:system).with("gem", "push", app_gem_path.to_s, "--host", "http://example.org").and_return(true) + expect(Kernel).to receive(:system).with(gem_bin, "push", app_gem_path.to_s, "--host", "http://example.org").and_return(true) Rake.application["release"].invoke end diff --git a/spec/commands/exec_spec.rb b/spec/commands/exec_spec.rb index a5d67c6d682..c1d6e4c25a7 100644 --- a/spec/commands/exec_spec.rb +++ b/spec/commands/exec_spec.rb @@ -57,7 +57,7 @@ it "works when exec'ing to rubygems" do install_gemfile 'gem "rack"' - bundle "exec gem --version" + bundle "exec #{gem_cmd} --version" expect(out).to eq(Gem::VERSION) end diff --git a/spec/support/path.rb b/spec/support/path.rb index eea3161b15a..645da52c97e 100644 --- a/spec/support/path.rb +++ b/spec/support/path.rb @@ -21,8 +21,12 @@ def bindir @bindir ||= root.join(ruby_core? ? "libexec" : "exe") end + def gem_cmd + @gem_cmd ||= ruby_core? ? root.join("bin/gem") : "gem" + end + def gem_bin - @gem_bin ||= ruby_core? ? ENV["GEM_COMMAND"] : "#{Gem.ruby} -S gem --backtrace" + @gem_bin ||= ruby_core? ? ENV["GEM_COMMAND"] : "gem" end def spec_dir diff --git a/spec/support/rubygems_ext.rb b/spec/support/rubygems_ext.rb index 7e9e8328c58..ee9c750a522 100644 --- a/spec/support/rubygems_ext.rb +++ b/spec/support/rubygems_ext.rb @@ -99,7 +99,7 @@ def install_gems(gems) no_reqs.map!(&:first) reqs.map! {|name, req| "'#{name}:#{req}'" } deps = reqs.concat(no_reqs).join(" ") - gem = Path.gem_bin + gem = ENV["GEM_COMMAND"] || "#{Gem.ruby} -S gem --backtrace" cmd = "#{gem} install #{deps} --no-document --conservative" system(cmd) || raise("Installing gems #{deps} for the tests to use failed!") end