aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/std_ext/test_unit_ext.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activesupport/lib/std_ext/test_unit_ext.rb')
-rw-r--r--activesupport/lib/std_ext/test_unit_ext.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/activesupport/lib/std_ext/test_unit_ext.rb b/activesupport/lib/std_ext/test_unit_ext.rb
new file mode 100644
index 0000000000..abba7f5ff8
--- /dev/null
+++ b/activesupport/lib/std_ext/test_unit_ext.rb
@@ -0,0 +1,24 @@
+# Bug fix for using Ruby 1.8.2 and Rake together to run tests.
+require 'test/unit'
+
+module Test
+ module Unit
+ module Collector
+ class Dir
+ def collect_file(name, suites, already_gathered)
+ dir = File.dirname(File.expand_path(name))
+ $:.unshift(dir) unless $:.first == dir
+ if(@req)
+ @req.require(name)
+ else
+ require(name)
+ end
+ find_test_cases(already_gathered).each{|t| add_suite(suites, t.suite)}
+ rescue LoadError, SystemExit
+ ensure
+ $:.delete_at $:.rindex(dir)
+ end
+ end
+ end
+ end
+end