diff options
author | José Valim <jose.valim@gmail.com> | 2010-01-26 14:58:00 +0100 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-01-26 14:58:00 +0100 |
commit | f8bf1982dff9cf0f35fb7a121932c794ecdc1cb1 (patch) | |
tree | 04145ec0b4a3dae8d55bb3f31ce533708a015f20 /railties/test/isolation | |
parent | 7adb1ffc038e06a1c95030856859e183b181f94a (diff) | |
download | rails-f8bf1982dff9cf0f35fb7a121932c794ecdc1cb1.tar.gz rails-f8bf1982dff9cf0f35fb7a121932c794ecdc1cb1.tar.bz2 rails-f8bf1982dff9cf0f35fb7a121932c794ecdc1cb1.zip |
Add tests for explicit engines.
Diffstat (limited to 'railties/test/isolation')
-rw-r--r-- | railties/test/isolation/abstract_unit.rb | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/railties/test/isolation/abstract_unit.rb b/railties/test/isolation/abstract_unit.rb index dc5fddb19d..940585836c 100644 --- a/railties/test/isolation/abstract_unit.rb +++ b/railties/test/isolation/abstract_unit.rb @@ -100,6 +100,8 @@ module TestHelpers end class Bukkit + attr_reader :path + def initialize(path) @path = path end @@ -118,10 +120,29 @@ module TestHelpers def plugin(name, string = "") dir = "#{app_path}/vendor/plugins/#{name}" FileUtils.mkdir_p(dir) + File.open("#{dir}/init.rb", 'w') do |f| f.puts "::#{name.upcase} = 'loaded'" f.puts string end + + Bukkit.new(dir).tap do |bukkit| + yield bukkit if block_given? + end + end + + def engine(name) + dir = "#{app_path}/random/#{name}" + FileUtils.mkdir_p(dir) + + app = File.readlines("#{app_path}/config/application.rb") + app.insert(2, "$:.unshift(\"#{dir}/lib\")") + app.insert(3, "require #{name.inspect}") + + File.open("#{app_path}/config/application.rb", 'r+') do |f| + f.puts app + end + Bukkit.new(dir).tap do |bukkit| yield bukkit if block_given? end |