From 6a099b168216db45be2d95aa51eac62100b62058 Mon Sep 17 00:00:00 2001 From: Matthew Draper Date: Sat, 2 Sep 2017 23:15:43 +0930 Subject: [PATCH] Run all railties tests before reporting failure --- railties/Rakefile | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/railties/Rakefile b/railties/Rakefile index 500fc88fbb..be7d9f96a2 100644 --- a/railties/Rakefile +++ b/railties/Rakefile @@ -28,6 +28,8 @@ namespace :test do require "bundler/setup" unless defined?(Bundler) require "active_support" + failing_files = [] + dirs = (ENV["TEST_DIR"] || ENV["TEST_DIRS"] || "**").split(",") test_files = dirs.map { |dir| "test/#{dir}/*_test.rb" } Dir[*test_files].each do |file| @@ -46,9 +48,20 @@ namespace :test do Process.waitpid fork { ARGV.clear; load file } unless $?.success? - raise "Command failed with status (#{$?.exitstatus}): #{fake_command}" + failing_files << file end end + + unless failing_files.empty? + puts + puts "Failed in:" + failing_files.each do |file| + puts " #{file}" + end + puts + + raise "Failure in isolated test runner" + end end end