Rake::TestTask по умолчанию libs не требует моей папки./lib
Я работаю в простом приложении Rack, пытаясь обновить некоторые модели с помощью модульных тестов. Я добавил грабли:TestTask.new задача:
Rake::TestTask.new do |t|
t.test_files = FileList['test/*_test.rb']
t.verbose = true
end
t.libs
по умолчанию указывает только ['lib'], поэтому я ожидаю, что для этого автоматически потребуется мой локальный каталог./lib... но это не так. это означает, что вместо ссылки на системные библиотеки? В качестве обходного пути я делаю мои требования, хотя test_helper.rb с Dir[File.expand_path('../lib/**/*.rb', File.dirname(__FILE__))].each { |file| require file }
но если нет причин не делать этого, я бы предпочел требовать все свои библиотеки один раз, чем в начале каждого тестового файла.
1 ответ
TestTask добавит lib
к пути загрузки, но он на самом деле не загружает файлы. Ваши тесты должны требовать код, необходимый для запуска.