Сторож-минитест + пружина не работает как положено
У меня есть проект rails 4.0.2, и я использую guard 4.7.5, guard-minitest 2.2.0 и spring 1.1.0.
Когда мой Guardfile читает:
guard :minitest, spring: true do
…
end
Я получаю информацию об использовании весны, когда бегу на страже
Согласно README, если мой Guardfile гласит:
guard :minitest, spring: 'rake test' do
…
end
он запускает все стандартные тесты (см. rake -T
).
На самом деле, когда работает rake test
само по себе не имеет значения, что я наберу после этого, он всегда запускает тесты по умолчанию. Бег bundle exec rake test [whatever]
дает те же результаты.
Что мне не хватает?
3 ответа
guard :minitest, spring: 'rake test' do
…
end
Работает на моей установке (то есть, он запускает только правильные тесты), хотя он не показывает подробную статистику в уведомителе (просто проход / не проход).
У вас есть нужные наблюдатели в вашем блоке do? Я в основном использую то, что guard init
дал мне, но я раскомментировал наблюдателей под Rails 4, комментируя остальные. Мой полный minitest
сделать блок:
guard :minitest, spring: 'rake test' do
#Rails 4
watch(%r{^app/(.+)\.rb$}) { |m| "test/#{m[1]}_test.rb" }
watch(%r{^app/controllers/application_controller\.rb$}) { 'test/controllers' }
watch(%r{^app/controllers/(.+)_controller\.rb$}) { |m| "test/integration/#{m[1]}_test.rb" }
watch(%r{^app/views/(.+)_mailer/.+}) { |m| "test/mailers/#{m[1]}_mailer_test.rb" }
watch(%r{^lib/(.+)\.rb$}) { |m| "test/lib/#{m[1]}_test.rb" }
watch(%r{^test/.+_test\.rb$})
watch(%r{^test/test_helper\.rb$}) { 'test' }
end
Я использую:
- ruby 2.0.0p451 (редакция 2014-02-24 45167) [x86_64-linux]
- охранник-MiniTest-2.2.0
- Guard версии 2.6.0
- Весенняя версия 1.1.2
- Rails 4.1.0
- Minitest-5.5.5
Можете ли вы запустить тест бен \ грабли весной?
Если нет, то это ваша проблема, так как "spring: true" запускает bin\rake.
Начиная с Rails 4.1.6, это работает из коробки. Я только добавил spring: true
к моему Guardfile
и это сработало. Правильные тесты запускаются, когда файл изменяется, и кажется, что он запускается быстрее, чем без Spring.
Мои настройки: Ruby 2.1, Rails 4.1.6, Guard 2.6.0, guard-minitest 2.3.2, Spring 1.1.3, minitest 5.4.2.