~brightbox/brightbox/deb-rubygems

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
30
31
32
33
34
35
36
# -*- ruby -*-

require 'autotest/restart'

Autotest.add_hook :initialize do |at|
  at.testlib = 'minitest/autorun'

  at.add_exception %r%/\.git/%
  at.add_exception %r%/\.svn/%
  at.add_exception %r%\.rbc$%
  at.add_exception %r%test/rubygems/rubygems%

  at.find_directories.clear
  at.find_directories.push 'lib', 'test'

  at.add_mapping %r%^lib/rubygems.rb$% do |_, m|
    "test/rubygems/test_gem.rb"
  end

  at.add_mapping %r%^lib/rubygems/(.*).rb$% do |_, m|
    "test/rubygems/test_gem_#{m[1].gsub '/', '_'}.rb"
  end

  at.add_mapping %r%^test/support/(.*).rb$% do |_, m|
    at.files_matching %r%^test/rubygems/test_(.*)\.rb$%
  end

  at.find_directories = ARGV unless ARGV.empty?
end

class Autotest
  alias :old_path_to_classname :path_to_classname
  def path_to_classname s
    old_path_to_classname(s.sub(/test.rubygems.test_/, ""))
  end
end