From ddb4600ce608b14f9fa07bf1196b78e1d43ad999 Mon Sep 17 00:00:00 2001 From: Yehuda Katz Date: Sat, 12 Sep 2009 15:22:11 -0500 Subject: Get ActionPack's test running on bundled gems. This should make running tests on new machines, as well as CI, work well. --- actionpack/vendor/gems/cache/RedCloth-4.2.2.gem | Bin 0 -> 224256 bytes actionpack/vendor/gems/cache/mocha-0.9.7.gem | Bin 0 -> 59906 bytes actionpack/vendor/gems/cache/rack-1.0.0.gem | Bin 0 -> 133632 bytes actionpack/vendor/gems/cache/rack-test-0.4.2.gem | Bin 0 -> 17408 bytes actionpack/vendor/gems/cache/rake-0.8.7.gem | Bin 0 -> 104960 bytes .../vendor/gems/cache/sqlite3-ruby-1.2.5.gem | Bin 0 -> 74240 bytes actionpack/vendor/gems/environment.rb | 94 +++++++++++++++++++++ 7 files changed, 94 insertions(+) create mode 100644 actionpack/vendor/gems/cache/RedCloth-4.2.2.gem create mode 100644 actionpack/vendor/gems/cache/mocha-0.9.7.gem create mode 100644 actionpack/vendor/gems/cache/rack-1.0.0.gem create mode 100644 actionpack/vendor/gems/cache/rack-test-0.4.2.gem create mode 100644 actionpack/vendor/gems/cache/rake-0.8.7.gem create mode 100644 actionpack/vendor/gems/cache/sqlite3-ruby-1.2.5.gem create mode 100644 actionpack/vendor/gems/environment.rb (limited to 'actionpack/vendor/gems') diff --git a/actionpack/vendor/gems/cache/RedCloth-4.2.2.gem b/actionpack/vendor/gems/cache/RedCloth-4.2.2.gem new file mode 100644 index 0000000000..b754b7d113 Binary files /dev/null and b/actionpack/vendor/gems/cache/RedCloth-4.2.2.gem differ diff --git a/actionpack/vendor/gems/cache/mocha-0.9.7.gem b/actionpack/vendor/gems/cache/mocha-0.9.7.gem new file mode 100644 index 0000000000..1cbb7253a5 Binary files /dev/null and b/actionpack/vendor/gems/cache/mocha-0.9.7.gem differ diff --git a/actionpack/vendor/gems/cache/rack-1.0.0.gem b/actionpack/vendor/gems/cache/rack-1.0.0.gem new file mode 100644 index 0000000000..e20843cf92 Binary files /dev/null and b/actionpack/vendor/gems/cache/rack-1.0.0.gem differ diff --git a/actionpack/vendor/gems/cache/rack-test-0.4.2.gem b/actionpack/vendor/gems/cache/rack-test-0.4.2.gem new file mode 100644 index 0000000000..0b82741938 Binary files /dev/null and b/actionpack/vendor/gems/cache/rack-test-0.4.2.gem differ diff --git a/actionpack/vendor/gems/cache/rake-0.8.7.gem b/actionpack/vendor/gems/cache/rake-0.8.7.gem new file mode 100644 index 0000000000..0740cec7b0 Binary files /dev/null and b/actionpack/vendor/gems/cache/rake-0.8.7.gem differ diff --git a/actionpack/vendor/gems/cache/sqlite3-ruby-1.2.5.gem b/actionpack/vendor/gems/cache/sqlite3-ruby-1.2.5.gem new file mode 100644 index 0000000000..a009b0ba71 Binary files /dev/null and b/actionpack/vendor/gems/cache/sqlite3-ruby-1.2.5.gem differ diff --git a/actionpack/vendor/gems/environment.rb b/actionpack/vendor/gems/environment.rb new file mode 100644 index 0000000000..5f7e483c3b --- /dev/null +++ b/actionpack/vendor/gems/environment.rb @@ -0,0 +1,94 @@ +# DO NOT MODIFY THIS FILE +module Bundler + dir = File.dirname(__FILE__) + + ENV["PATH"] = "#{dir}/../../bin:#{ENV["PATH"]}" + ENV["RUBYOPT"] = "-r#{__FILE__} #{ENV["RUBYOPT"]}" + + $LOAD_PATH.unshift File.expand_path("#{dir}/dirs/gems/activemodel-3.0.pre/bin") + $LOAD_PATH.unshift File.expand_path("#{dir}/../../../activemodel/lib") + $LOAD_PATH.unshift File.expand_path("#{dir}/dirs/gems/activesupport-3.0.pre/bin") + $LOAD_PATH.unshift File.expand_path("#{dir}/../../../activesupport/lib") + $LOAD_PATH.unshift File.expand_path("#{dir}/gems/rack-1.0.0/bin") + $LOAD_PATH.unshift File.expand_path("#{dir}/gems/rack-1.0.0/lib") + $LOAD_PATH.unshift File.expand_path("#{dir}/gems/rack-test-0.4.2/bin") + $LOAD_PATH.unshift File.expand_path("#{dir}/gems/rack-test-0.4.2/lib") + + @gemfile = "#{dir}/../../Gemfile" + + require "rubygems" + + @bundled_specs = {} + @bundled_specs["rack"] = eval(File.read("#{dir}/specifications/rack-1.0.0.gemspec")) + @bundled_specs["rack"].loaded_from = "#{dir}/specifications/rack-1.0.0.gemspec" + @bundled_specs["activemodel"] = eval(File.read("#{dir}/dirs/specifications/activemodel-3.0.pre.gemspec")) + @bundled_specs["activemodel"].loaded_from = "#{dir}/dirs/specifications/activemodel-3.0.pre.gemspec" + @bundled_specs["rack-test"] = eval(File.read("#{dir}/specifications/rack-test-0.4.2.gemspec")) + @bundled_specs["rack-test"].loaded_from = "#{dir}/specifications/rack-test-0.4.2.gemspec" + @bundled_specs["activesupport"] = eval(File.read("#{dir}/dirs/specifications/activesupport-3.0.pre.gemspec")) + @bundled_specs["activesupport"].loaded_from = "#{dir}/dirs/specifications/activesupport-3.0.pre.gemspec" + + def self.add_specs_to_loaded_specs + Gem.loaded_specs.merge! @bundled_specs + end + + def self.add_specs_to_index + @bundled_specs.each do |name, spec| + Gem.source_index.add_spec spec + end + end + + add_specs_to_loaded_specs + add_specs_to_index + + def self.require_env(env = nil) + context = Class.new do + def initialize(env) @env = env && env.to_s ; end + def method_missing(*) ; end + def only(env) + old, @only = @only, _combine_onlys(env) + yield + @only = old + end + def except(env) + old, @except = @except, _combine_excepts(env) + yield + @except = old + end + def gem(name, *args) + opt = args.last || {} + only = _combine_onlys(opt[:only] || opt["only"]) + except = _combine_excepts(opt[:except] || opt["except"]) + files = opt[:require_as] || opt["require_as"] || name + + return unless !only || only.any? {|e| e == @env } + return if except && except.any? {|e| e == @env } + + files.each { |f| require f } + yield if block_given? + true + end + private + def _combine_onlys(only) + return @only unless only + only = [only].flatten.compact.uniq.map { |o| o.to_s } + only &= @only if @only + only + end + def _combine_excepts(except) + return @except unless except + except = [except].flatten.compact.uniq.map { |o| o.to_s } + except |= @except if @except + except + end + end + context.new(env && env.to_s).instance_eval(File.read(@gemfile)) + end +end + +module Gem + def source_index.refresh! + super + Bundler.add_specs_to_index + end +end -- cgit v1.2.3