spec/support/helpers.rb in bundler-1.0.22 vs spec/support/helpers.rb in bundler-1.1.pre
- old
+ new
@@ -1,21 +1,21 @@
module Spec
module Helpers
def reset!
@in_p, @out_p, @err_p = nil, nil, nil
Dir["#{tmp}/{gems/*,*}"].each do |dir|
- next if %(base remote1 gems rubygems).include?(File.basename(dir))
+ next if %(base remote1 gems rubygems_v1.3.5 rubygems_v1.3.6 rubygems_v1.3.7 rubygems_v1.4.0 rubygems_v1.4.1 rubygems_master).include?(File.basename(dir))
unless ENV['BUNDLER_SUDO_TESTS']
FileUtils.rm_rf(dir)
else
`sudo rm -rf #{dir}`
end
end
FileUtils.mkdir_p(tmp)
FileUtils.mkdir_p(home)
Gem.sources = ["file://#{gem_repo1}/"]
- # Gem.configuration.write
+ Gem.configuration.write
end
attr_reader :out, :err, :exitstatus
def in_app_root(&blk)
@@ -42,17 +42,23 @@
def bundle(cmd, options = {})
expect_err = options.delete(:expect_err)
exitstatus = options.delete(:exitstatus)
options["no-color"] = true unless options.key?("no-color") || cmd.to_s[0..3] == "exec"
+ bundle_bin = File.expand_path('../../../bin/bundle', __FILE__)
+ fake_file = options.delete(:fakeweb)
+ fakeweb = fake_file ? "-r#{File.expand_path('../fakeweb/'+fake_file+'.rb', __FILE__)}" : nil
+ artifice_file = options.delete(:artifice)
+ artifice = artifice_file ? "-r#{File.expand_path('../artifice/'+artifice_file+'.rb', __FILE__)}" : nil
+
env = (options.delete(:env) || {}).map{|k,v| "#{k}='#{v}' "}.join
args = options.map do |k,v|
v == true ? " --#{k}" : " --#{k} #{v}" if v
end.join
- gemfile = File.expand_path('../../../bin/bundle', __FILE__)
- cmd = "#{env}#{Gem.ruby} -I#{lib} #{gemfile} #{cmd}#{args}"
+ cmd = "#{env}#{Gem.ruby} -I#{lib} #{fakeweb} #{artifice} #{bundle_bin} #{cmd}#{args}"
+
if exitstatus
sys_status(cmd)
else
sys_exec(cmd, expect_err){|i| yield i if block_given? }
end
@@ -60,10 +66,11 @@
def ruby(ruby, options = {})
expect_err = options.delete(:expect_err)
env = (options.delete(:env) || {}).map{|k,v| "#{k}='#{v}' "}.join
ruby.gsub!(/["`\$]/) {|m| "\\#{m}" }
- sys_exec(%{#{env}#{Gem.ruby} -I#{lib} -e "#{ruby}"}, expect_err)
+ lib_option = options[:no_lib] ? "" : " -I#{lib}"
+ sys_exec(%{#{env}#{Gem.ruby}#{lib_option} -e "#{ruby}"}, expect_err)
end
def gembin(cmd)
lib = File.expand_path("../../../lib", __FILE__)
old, ENV['RUBYOPT'] = ENV['RUBYOPT'], "#{ENV['RUBYOPT']} -I#{lib}"