我通过嵌套表单同时创建两个模型,并希望使用此工厂测试功能:
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 "foo@bar.com"
password "foobar"
password_confirmation "foobar"
company
end
现在我在RSPEC创建了一家公司,如
let(:company) { FactoryGirl.create(:company) }
并进行类似
的测试it { should have_title(user.first_name) }
我想从用户的模型中获取用户的fisrt名称。现在我只能在RSPEC中访问公司的模型。
如何获取用户模型的属性?
答案 0 :(得分:0)
首先你必须创建用户,但你只能在不保存的情况下构建:
company.users << FactoryGirl.create(:user)
或
FactoryGirl.create(:user, company: company)
接下来,您可以访问用户名,例如by(如果公司has_many:用户):
it { should have_title(company.users.first.first_name) }