2012-02-20 1 views
1

mongoid 안전 모드로 factory_girl 레코드를 만들 수 있습니까?[mongoid] [factory_girl] factory_girl을 안전 모드로 만드는 방법은 무엇입니까? (mongoid safe mode)

@user = FactoryGirl.create(:user, email: email) 

그러나 복합 인덱스의 중복 키, 예외없이 실패 원인 (dB 잘린하지만 인덱스는 MongoDB를 제거하지 않은) : 원래의 코드입니다. 코드를 변경해야합니다 :

@user = User.safely.create!({ 
    email: email, 
    password: Digest::MD5.hexdigest('123456') 
}) 

그래서 나는 factory_girl이 사용자를 성공적으로 만들지 않은 이유를 알 수 있습니다.

@user = FactoryGirl.safely.create(:user, email: email) 

덕분에이 트릭은 도움이 될 수

답변

4

: 처럼 안전 모드에서 레코드를 생성 factory_girl 수 있도록 어쨌든입니다. 다음 테스트에 통과 :

 let(:user) { FactoryGirl.create(:user) } 

     it "deletes a user" do 
     user.new_record? 
     expect { delete :destroy, :id => user.id }.to change(User, :count).by(-1) 
     end 

경우 - user.new_record? - 댓글을 달았습니다. 테스트가 실패합니다.