Commit e219a2112101c5a5b841b055512c5bf714c33a58

Authored by Joenio Costa
2 parents 6fede78a 6ccec5a4

Merge commit 'refs/merge-requests/34' of git://gitorious.org/noosfero/noosfero

lib/tasks/plugins_tests.rake
  1 +@disabled_plugins = Dir.glob(File.join(Rails.root, 'plugins', '*')).map { |file| File.basename(file)} - Dir.glob(File.join(Rails.root, 'config', 'plugins', '*')).map { |file| File.basename(file)}
  2 +@disabled_plugins.delete('template')
  3 +
1 def define_task(test, plugins_folder='plugins', plugin = '*') 4 def define_task(test, plugins_folder='plugins', plugin = '*')
2 test_files = Dir.glob(File.join(Rails.root, plugins_folder, plugin, 'test', test[:folder], '**', '*_test.rb')) 5 test_files = Dir.glob(File.join(Rails.root, plugins_folder, plugin, 'test', test[:folder], '**', '*_test.rb'))
3 desc 'Runs ' + (plugin != '*' ? plugin : 'plugins') + ' ' + test[:name] + ' tests' 6 desc 'Runs ' + (plugin != '*' ? plugin : 'plugins') + ' ' + test[:name] + ' tests'
@@ -43,10 +46,27 @@ namespace :test do @@ -43,10 +46,27 @@ namespace :test do
43 task plugin_name => dependencies 46 task plugin_name => dependencies
44 end 47 end
45 48
  49 + task :temp_enable_plugins do
  50 + system('./script/noosfero-plugins enableall')
  51 + end
  52 +
  53 + task :rollback_temp_enable_plugins do
  54 + @disabled_plugins.each { |plugin| system('./script/noosfero-plugins disable ' + plugin)}
  55 + end
  56 +
46 task :units => 'available:units' 57 task :units => 'available:units'
47 task :functionals => 'available:functionals' 58 task :functionals => 'available:functionals'
48 task :integration => 'available:integration' 59 task :integration => 'available:integration'
49 - task :available => [:units, :functionals, :integration] 60 + task :available do
  61 + Rake::Task['test:noosfero_plugins:temp_enable_plugins'].invoke
  62 + begin
  63 + Rake::Task['test:noosfero_plugins:units'].invoke
  64 + Rake::Task['test:noosfero_plugins:functionals'].invoke
  65 + Rake::Task['test:noosfero_plugins:integration'].invoke
  66 + rescue
  67 + end
  68 + Rake::Task['test:noosfero_plugins:rollback_temp_enable_plugins'].invoke
  69 + end
50 task :enabled => ['enabled:units', 'enabled:functionals', 'enabled:integration'] 70 task :enabled => ['enabled:units', 'enabled:functionals', 'enabled:integration']
51 71
52 end 72 end
lib/tasks/test.rake
@@ -7,7 +7,7 @@ else @@ -7,7 +7,7 @@ else
7 end 7 end
8 8
9 task :test do 9 task :test do
10 - errors = %w(test:units test:functionals test:integration cucumber selenium).collect do |task| 10 + errors = %w(test:units test:functionals test:integration cucumber selenium test:noosfero_plugins).collect do |task|
11 begin 11 begin
12 Rake::Task[task].invoke 12 Rake::Task[task].invoke
13 nil 13 nil