나는 계속 동일한 문제를 겪고 있으며, 나는이 문제를 경험 한 유일한 사람이고 다른 누군가가 더 나은 방법을 원한다면 놀랄 것이다. 종속 Factory (연관)가있는 Factory를 만들면 상위 모델이 추가 된 모델로 업데이트되지 않습니다. 아마 코드로 설명하기가 더 쉽습니다. factory_girl - has_many 관계 및 부모 모델 새로 고치기
내가 가진 말 :Factory.define :company do |a|
a.name 'Acme'
end
Factory.define :office do |a|
a.name 'London'
a.association :company, :factory => :company
end
나는이 코드를 실행 :이 테스트
london.company.offices.count.should eql(2)
실패를 실행하는 경우 회사는 한국 전기 전에 인스턴스화 때문에, 다음
london = Factory.create(:office)
sanfran = Factory.create(:office, :name => 'San Fran' , :company = london.company)
을 런던이나 San Fran도 만들어졌고 company.offices.new가 새 모델을 만드는 데 사용되지 않았기 때문에 공동 mpany 모델은 업데이트되지 않았습니다. 새로 고침을 강제로
london.company(true).offices.count.should eql(2)
을 :
는나는이 문제를 해결 할 수 있었던 유일한 방법은 다음과 같이 내 테스트를 작성하는 것입니다.
그러나 테스트 할 때마다이 작업을 수행하는 것이 바람직하지 않습니다. 특히 테스트중인 코드가 그 작업에 의존해서는 안됩니다.
문맥을 더 제공 하시겠습니까? 이 공장들은 분명히 작동해야만합니다. 저는이 공장을 성공적으로 사용하고 있습니다. 단서가 테스트에 포함되어 있습니다. 게시물을 올리면 내가 살펴볼 것입니다. –
': company = london.company'이 맞습니까? ': company => london.company'이 아니어야합니다. –