2013-10-21 2 views
0

나는 동시에 두 가지 모델을 만들 수는 중첩 된 양식 물마루이 공장 기능 테스트하려면 : 나는 회사를 만드는 지금은/FactoryGirl

factory :company do 
    name "ACME" 
    after(:build) do |company| 
    company.users << FactoryGirl.build(:user, company: company)  
    end  
end 

factory :user do 
    first_name  "Foo" 
    last_name  "Bar" 
    email   "[email protected]" 
    password  "foobar" 
    password_confirmation "foobar" 
    company 
end 

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

같은 RSpec에와 i는 사용자의 파이를 가져 오기 할

it { should have_title(user.first_name) } 

같은 검사를 srt 이름을 사용자의 모델에서 가져옵니다. 지금은 RSPEC의 회사 모델에만 액세스 할 수 있습니다.

사용자 모델의 속성을 가져올 수 있습니까?

답변

0

먼저 사용자를 만들 수 있지만 당신은 단지 저장 이렇게 구축하지 않고 :

company.users << FactoryGirl.create(:user) 

또는

FactoryGirl.create(:user, company: company) 

다음에 당신이 (있는 경우 회사 has_many에 의해 예를 들어 사용자 이름에 액세스 할 수 있습니다 : 사용자) :

it { should have_title(company.users.first.first_name) } 
+0

감사합니다. – KLD