Skip to content

Commit

Permalink
When running multiple test tasks, don't abort early if one produces f…
Browse files Browse the repository at this point in the history
…ailures

[#3107 state:committed]

Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
  • Loading branch information
packagethief authored and jeremy committed Aug 27, 2009
1 parent 8a49183 commit 058459d
Showing 1 changed file with 19 additions and 3 deletions.
22 changes: 19 additions & 3 deletions activerecord/Rakefile
Expand Up @@ -24,14 +24,30 @@ PKG_FILES = FileList[
"lib/**/*", "test/**/*", "examples/**/*", "doc/**/*", "[A-Z]*", "install.rb", "Rakefile"
].exclude(/\bCVS\b|~$/)

def run_without_aborting(*tasks)
errors = []

tasks.each do |task|
begin
Rake::Task[task].invoke
rescue Exception
errors << task
end
end

abort "Errors running #{errors.join(', ')}" if errors.any?
end

desc 'Run mysql, sqlite, and postgresql tests by default'
task :default => :test

desc 'Run mysql, sqlite, and postgresql tests'
task :test => defined?(JRUBY_VERSION) ?
%w(test_jdbcmysql test_jdbcsqlite3 test_jdbcpostgresql) :
%w(test_mysql test_sqlite3 test_postgresql)
task :test do
tasks = defined?(JRUBY_VERSION) ?
%w(test_jdbcmysql test_jdbcsqlite3 test_jdbcpostgresql) :
%w(test_mysql test_sqlite3 test_postgresql)
run_without_aborting(*tasks)
end

for adapter in %w( mysql postgresql sqlite sqlite3 firebird db2 oracle sybase openbase frontbase jdbcmysql jdbcpostgresql jdbcsqlite3 jdbcderby jdbch2 jdbchsqldb )
Rake::TestTask.new("test_#{adapter}") { |t|
Expand Down

0 comments on commit 058459d

Please sign in to comment.