Class: Autotest::Rails
- Inherits:
-
Autotest
- Object
- Autotest
- Autotest::Rails
- Defined in:
- lib/autotest/rails.rb
Constant Summary collapse
- VERSION =
'4.1.0'
Instance Method Summary collapse
-
#initialize ⇒ Rails
constructor
:nodoc:.
-
#path_to_classname(s) ⇒ Object
Convert the pathname s to the name of class.
Constructor Details
#initialize ⇒ Rails
:nodoc:
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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/autotest/rails.rb', line 6 def initialize # :nodoc: super add_exception %r%^\./(?:db|doc|log|public|script|tmp|vendor)% clear_mappings self.add_mapping(/^lib\/.*\.rb$/) do |filename, _| impl = File.basename(filename, '.rb') files_matching %r%^test/unit/#{impl}_test.rb$% # TODO: (unit|functional|integration) maybe? end add_mapping %r%^test/fixtures/(.*)s.yml% do |_, m| ["test/unit/#{m[1]}_test.rb", "test/controllers/#{m[1]}_controller_test.rb", "test/views/#{m[1]}_view_test.rb", "test/functional/#{m[1]}_controller_test.rb"] end add_mapping %r%^test/(unit|integration|controllers|views|functional)/.*rb$% do |filename, _| filename end add_mapping %r%^app/models/(.*)\.rb$% do |_, m| "test/unit/#{m[1]}_test.rb" end add_mapping %r%^app/helpers/application_helper.rb% do files_matching %r%^test/(views|functional)/.*_test\.rb$% end add_mapping %r%^app/helpers/(.*)_helper.rb% do |_, m| if m[1] == "application" then files_matching %r%^test/(views|functional)/.*_test\.rb$% else ["test/views/#{m[1]}_view_test.rb", "test/functional/#{m[1]}_controller_test.rb"] end end add_mapping %r%^app/views/(.*)/% do |_, m| ["test/views/#{m[1]}_view_test.rb", "test/functional/#{m[1]}_controller_test.rb"] end add_mapping %r%^app/controllers/(.*)\.rb$% do |_, m| if m[1] == "application" then files_matching %r%^test/(controllers|views|functional)/.*_test\.rb$% else ["test/controllers/#{m[1]}_test.rb", "test/functional/#{m[1]}_test.rb"] end end add_mapping %r%^app/views/layouts/% do "test/views/layouts_view_test.rb" end add_mapping %r%^config/routes.rb$% do # FIX: files_matching %r%^test/(controllers|views|functional)/.*_test\.rb$% end add_mapping %r%^test/test_helper.rb|config/((boot|environment(s/test)?).rb|database.yml)% do files_matching %r%^test/(unit|controllers|views|functional)/.*_test\.rb$% end end |
Instance Method Details
#path_to_classname(s) ⇒ Object
Convert the pathname s to the name of class.
75 76 77 78 79 80 81 |
# File 'lib/autotest/rails.rb', line 75 def path_to_classname(s) sep = File::SEPARATOR f = s.sub(/^test#{sep}((unit|functional|integration|views|controllers|helpers)#{sep})?/, '').sub(/\.rb$/, '').split(sep) f = f.map { |path| path.split(/_/).map { |seg| seg.capitalize }.join } f = f.map { |path| path =~ /Test$/ ? path : "#{path}Test" } f.join('::') end |