summaryrefslogtreecommitdiff
path: root/lib/rake/ruby182_test_unit_fix.rb
blob: 40b30a6fdec6c8168cab67f9a1642e2e308ed771 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# TODO: Remove in rake 11

# Local Rake override to fix bug in Ruby 0.8.2
module Test                     # :nodoc:
  # Local Rake override to fix bug in Ruby 0.8.2
  module Unit                   # :nodoc:
    # Local Rake override to fix bug in Ruby 0.8.2
    module Collector            # :nodoc:
      # Local Rake override to fix bug in Ruby 0.8.2
      class Dir                 # :nodoc:
        undef collect_file
        def collect_file(name, suites, already_gathered) # :nodoc:
          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 do |t|
            add_suite(suites, t.suite)
          end
        ensure
          $:.delete_at $:.rindex(dir)
        end
      end
    end
  end
end