test_isolate: fix ruby engine usage
[rainbows.git] / t / test_isolate.rb
blob06e4b10f3396c603aa1023adde7be27aad9e756f
1 require 'rubygems'
2 require 'isolate'
3 engine = defined?(RUBY_ENGINE) ? RUBY_ENGINE : 'ruby'
5 path = "tmp/isolate/#{engine}-#{RUBY_VERSION}"
6 opts = {
7   :system => false,
8   # we want "ruby-1.8.7" and not "ruby-1.8", so disable multiruby
9   :multiruby => false,
10   :path => path,
13 old_out = $stdout.dup
14 $stdout.reopen($stderr)
16 Isolate.now!(opts) do
17   gem 'rack', '1.1.0'
18   gem 'unicorn', '0.991.0'
20   if engine == "ruby"
21     gem 'iobuffer', '0.1.3'
22     gem 'rev', '0.3.2'
24     gem 'eventmachine', '0.12.10'
26     gem 'sinatra', '0.9.4'
27     gem 'async_sinatra', '0.1.5'
29     gem 'neverblock', '0.1.6.2'
30     gem 'cramp', '0.11'
31   end
33   if defined?(::Fiber) && engine == "ruby"
34     gem 'case', '0.5'
35     gem 'revactor', '0.1.5'
36     gem 'rack-fiber_pool', '0.9.0'
37   end
38 end
40 $stdout.reopen(old_out)
41 puts Dir["#{path}/gems/*-*/lib"].map { |x| File.expand_path(x) }.join(':')