diff options
author | Amy Unger <amy.e.unger@gmail.com> | 2015-07-21 20:05:15 -0700 |
---|---|---|
committer | Amy Unger <amy.e.unger@gmail.com> | 2015-07-22 15:21:40 -0500 |
commit | 48dbc74e34e7779b53bf59e3ec407e8eeccd3db1 (patch) | |
tree | 593f48c4aba6f22ba07958cf8dbcc160dce4b3e9 | |
parent | 89a8778c19269561926cea172acdcda241d26d23 (diff) | |
download | bundler-48dbc74e34e7779b53bf59e3ec407e8eeccd3db1.tar.gz |
Make sure that monkeypatch of Gem::Platform gets loaded on subshells
-rw-r--r-- | spec/support/helpers.rb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/spec/support/helpers.rb b/spec/support/helpers.rb index 58121f403a..1fbdb902d9 100644 --- a/spec/support/helpers.rb +++ b/spec/support/helpers.rb @@ -56,6 +56,10 @@ module Spec File.expand_path("../../../lib", __FILE__) end + def spec + File.expand_path("../../../spec", __FILE__) + end + def bundle(cmd, options = {}) expect_err = options.delete(:expect_err) sudo = "sudo" if options.delete(:sudo) @@ -66,6 +70,7 @@ module Spec requires = options.delete(:requires) || [] requires << File.expand_path("../fakeweb/" + options.delete(:fakeweb) + ".rb", __FILE__) if options.key?(:fakeweb) requires << File.expand_path("../artifice/" + options.delete(:artifice) + ".rb", __FILE__) if options.key?(:artifice) + requires << "support/hax" requires_str = requires.map {|r| "-r#{r}" }.join(" ") env = (options.delete(:env) || {}).map {|k, v| "#{k}='#{v}'" }.join(" ") @@ -73,7 +78,7 @@ module Spec v == true ? " --#{k}" : " --#{k} #{v}" if v end.join - cmd = "#{env} #{sudo} #{Gem.ruby} -I#{lib} #{requires_str} #{bundle_bin} #{cmd}#{args}" + cmd = "#{env} #{sudo} #{Gem.ruby} -I#{lib}:#{spec} #{requires_str} #{bundle_bin} #{cmd}#{args}" sys_exec(cmd, expect_err) {|i| yield i if block_given? } end |