diff options
author | David RodrÃguez <deivid.rodriguez@riseup.net> | 2022-05-30 21:48:49 +0200 |
---|---|---|
committer | git <svn-admin@ruby-lang.org> | 2022-06-01 17:07:35 +0900 |
commit | 0a6b9924bd1b45bd8ad29b1eb3c8a65835f5864d (patch) | |
tree | ffb32bcc5d35495ca7b9255fbe40004e9f375b21 /spec/bundler/install/gems | |
parent | f5b88d93ae58dd8a956782f08a435e452f5eba12 (diff) | |
download | ruby-0a6b9924bd1b45bd8ad29b1eb3c8a65835f5864d.tar.gz |
[rubygems/rubygems] Fix generated standalone script for default gems
The installer is actually rewriting the spec's full gem path to be the
one of the newly installed gem, however the accessor was not properly
working for `StubSpecification` instances, and default gems are always
of this type, because they are always present locally.
Fix the accessor to properly update the underlying full specification.
https://github.com/rubygems/rubygems/commit/efa41babfa
Diffstat (limited to 'spec/bundler/install/gems')
-rw-r--r-- | spec/bundler/install/gems/standalone_spec.rb | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/spec/bundler/install/gems/standalone_spec.rb b/spec/bundler/install/gems/standalone_spec.rb index 5cbb484c68..0bbd829148 100644 --- a/spec/bundler/install/gems/standalone_spec.rb +++ b/spec/bundler/install/gems/standalone_spec.rb @@ -147,9 +147,16 @@ RSpec.shared_examples "bundle install --standalone" do bundle "lock", :dir => cwd, :artifice => "compact_index" end - it "works" do + it "works and points to the vendored copies, not to the default copies" do bundle "config set --local path #{bundled_app("bundle")}" bundle :install, :standalone => true, :dir => cwd, :artifice => "compact_index", :env => { "BUNDLER_GEM_DEFAULT_DIR" => system_gem_path.to_s } + + load_path_lines = bundled_app("bundle/bundler/setup.rb").read.split("\n").select {|line| line.start_with?("$:.unshift") } + + expect(load_path_lines).to eq [ + '$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{RbConfig::CONFIG["ruby_version"]}/gems/bar-1.0.0/lib")', + '$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{RbConfig::CONFIG["ruby_version"]}/gems/foo-1.0.0/lib")', + ] end end |