Как я могу получить автотест, чтобы правильно влиять на единичные модели и множественные контроллеры - PullRequest
2 голосов
/ 08 ноября 2008

Например, если у меня есть модель Book и автоматическое тестирование BooksController, часть набора ZenTest обнаружит связь между ними и загрузит test/unit/book_test.rb и test/functional/books_controller_test.rb в набор тестов. , С другой стороны, если у меня есть модель Story и StoriesController, автотест откажется «заметить» test/functional/stories_controller_test.rb

Ответы [ 3 ]

0 голосов
/ 01 февраля 2009

Вы можете переопределить сопоставления в вашем файле .autotest. Либо в вашем домашнем каталоге, либо в корне проекта. Вы можете require 'active_support' там получить String#pluralize и String#singularize.

Заимствуйте код из плагина rspec-rails в lib/autotest/rails_rspec.rb, похоже, он уже использует магию единственного / множественного числа с ActiveSupport. Оттуда вам, вероятно, придется вытащить определенные допущения RSpec.

0 голосов
/ 14 февраля 2009

Я наконец понял, что происходит, и это не имело ничего общего с плюрализмом.

Оно имело все , связанное со словом " Stories ", которое может быть специальным каталогом для одной из библиотек тестирования (RSpec? Cucumber? Я забываю). Так что он был указан в моем файле конфигурации ~ / .autotest как исключение! Я не уверен, когда я вырезал и вставил фрагмент в файл, возможно, когда я только начинал с ZenTest и не знал, что я на самом деле делал.

Autotest.add_hook :initialize do |at|
  %w{... stories ...}.each {|exception|at.add_exception(exception)}
end

Добавление косой черты («историй») восстановило тест и удалило следы кирпича на моем лбу.

Так что я думаю, что извлеченный урок таков: проверяйте ошибочные файлы конфигурации при отладке.

0 голосов
/ 17 ноября 2008

К сожалению, ZenTest не является плагином rails, поэтому он не использует метод множественного числа ActiveSupport. Поэтому он использует простые регулярные выражения для сопоставления имен файлов. Взгляните на ZenTest / autotest / rails.rb, чтобы увидеть список существующих отображений для Rails.

В конце у вас есть два варианта:

  • (обезьяна) исправляет ваше собственное правило отображения
  • забудьте о плюрализации

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...