Spork не будет перезагружать файл в lib - PullRequest
8 голосов
/ 27 августа 2011

Я запускаю rspec с spork и не могу получить файл в lib для перезагрузки при последовательных запусках rspec. Я пробовал требовать файл в 'Spork.each_run'

Я не получаю никаких ответов, поэтому я попытаюсь объяснить дальше. В моем приложении Rails есть следующие файлы:

  • Библиотека / car.rb
  • спецификация / Lib / car_spec.rb

Для запуска тестов сначала я запускаю spork, затем запускаю 'rspec spec / lib / car_spec.rb'

RSpec не видит мои изменения в классе автомобилей, если я не перезапущу spork.

Любая помощь?

Я в сети:

  • рельсы 3.1.0.rc6
  • rspec 2.6.0
  • spork 0.9.0.rc9

Ответы [ 3 ]

4 голосов
/ 29 августа 2011

Попробуйте load этот файл в Spork.each_run вместо require.

1 голос
/ 06 августа 2012

Я вас слышу. Перезагрузка файлов в lib / очень важна.

Когда я делаю require напрямую (например, require "some_dir_under_lib/some_file"), оно не перезагружается автоматически. Однако, если я сделаю

Dir["some_dir_under_lib/*.rb"].each { |file| require file }

тогда он автоматически перезагружается! Я хотел бы объяснить, почему!

Кстати, я делаю это в application.rb, а не в spork / spec_helper.

0 голосов
/ 21 января 2012

Вы должны поместить car.rb в app/models.

...