разные результаты rspec при использовании spork - PullRequest
1 голос
/ 30 октября 2011

Я недавно добавил Spork в свой стек разработки, и мне просто нравится повышенная скорость, но есть несколько тестов, которые работают по-разному с или без Spork.

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

it 'should associate object1 with object2' do 
  @object_under_test.action_being_tested(object1, object2)   #action
  object1.associated_objects.should be_include(object2)      #assertion
end

Если я запускаю этот тест с spork, то этот тест проходит нормально.Однако без утверждение не удается.Я могу заставить его пройти с spork или без, перезагрузив object1 перед тем, как сделать утверждение.

it 'should associate object1 with object2' do 
  @object_under_test.action_being_tested(object1, object2)   #action
  object1.reload
  object1.associated_objects.should be_include(object2)      #assertion
end

С точки зрения предполагаемого поведения, добавление reload в этих тестах на самом деле не является проблемой, так какobject1 будет перезагружен в любом случае, прежде чем будут сделаны какие-либо вызовы его associated_objects.
Мне просто кажется странным, что два способа выполнения тестов дают разные результаты.У меня такое чувство, что мне не хватает некоторых базовых знаний о том, как работает Spork!Мол, spork автоматически перезагружает объекты?
Если кто-нибудь может пролить свет на это для меня, я был бы очень благодарен.

...