Commit 4ef7f7622d79eff88e4cef1a9add2d59571a8d91
1 parent
f2319a0a
Exists in
master
and in
28 other branches
Start/stop solr for each test
Showing
3 changed files
with
5 additions
and
54 deletions
Show diff stats
lib/tasks/01_support.rake
| ... | ... | @@ -1,18 +0,0 @@ |
| 1 | -# from http://metaskills.net/2010/05/26/the-alias_method_chain-of-rake-override-rake-task/ | |
| 2 | -Rake::TaskManager.class_eval do | |
| 3 | - def alias_task(fq_name) | |
| 4 | - new_name = "#{fq_name}:original" | |
| 5 | - @tasks[new_name] = @tasks.delete(fq_name) | |
| 6 | - end | |
| 7 | -end | |
| 8 | - | |
| 9 | -def alias_task(fq_name) | |
| 10 | - Rake.application.alias_task(fq_name) | |
| 11 | -end | |
| 12 | - | |
| 13 | -def override_task(*args, &block) | |
| 14 | - name, params, deps = Rake.application.resolve_args(args.dup) | |
| 15 | - fq_name = Rake.application.instance_variable_get(:@scope).dup.push(name).join(':') | |
| 16 | - alias_task(fq_name) | |
| 17 | - Rake::Task.define_task(*args, &block) | |
| 18 | -end |
lib/tasks/test.rake
| ... | ... | @@ -16,42 +16,6 @@ CucumberTasks = %w(cucumber selenium) |
| 16 | 16 | NoosferoTasks = %w(test:noosfero_plugins) |
| 17 | 17 | AllTasks = TestTasks + CucumberTasks + NoosferoTasks |
| 18 | 18 | |
| 19 | -namespace :test do | |
| 20 | - TestTasks.each do |test_task| | |
| 21 | - orig_name = test_task.to_s | |
| 22 | - test_task = test_task.to_s.gsub(/^test:/, '').to_sym #remove namespace :test | |
| 23 | - # force the solr tasks to run with each individual test task | |
| 24 | - override_task test_task do | |
| 25 | - ENV['RAILS_ENV'] = 'test' | |
| 26 | - Rake::Task['solr:start'].reenable | |
| 27 | - Rake::Task['solr:start'].invoke | |
| 28 | - Rake::Task["#{orig_name}:original"].invoke | |
| 29 | - Rake::Task['solr:stop'].reenable | |
| 30 | - Rake::Task['solr:stop'].invoke | |
| 31 | - end | |
| 32 | - end | |
| 33 | -end | |
| 34 | -CucumberTasks.each do |test_task| | |
| 35 | - override_task test_task do | |
| 36 | - ENV['RAILS_ENV'] = 'cucumber' | |
| 37 | - Rake::Task['solr:start'].reenable | |
| 38 | - Rake::Task['solr:start'].invoke | |
| 39 | - Rake::Task["#{test_task}:original"].invoke | |
| 40 | - Rake::Task['solr:stop'].reenable | |
| 41 | - Rake::Task['solr:stop'].invoke | |
| 42 | - end | |
| 43 | -end | |
| 44 | -NoosferoTasks.each do |test_task| | |
| 45 | - override_task test_task do | |
| 46 | - ENV['RAILS_ENV'] = 'test' | |
| 47 | - Rake::Task['solr:start'].reenable | |
| 48 | - Rake::Task['solr:start'].invoke | |
| 49 | - Rake::Task["#{test_task}:original"].invoke | |
| 50 | - Rake::Task['solr:stop'].reenable | |
| 51 | - Rake::Task['solr:stop'].invoke | |
| 52 | - end | |
| 53 | -end | |
| 54 | - | |
| 55 | 19 | task :test do |
| 56 | 20 | errors = AllTasks.collect do |task| |
| 57 | 21 | begin | ... | ... |
test/test_helper.rb