FactoryGirl的Has_many协会

时间:2014-10-01 16:21:15

标签: ruby-on-rails associations factory-bot has-many

我有2个类用户和身份验证,然后身份验证has_many用户:

用户类:

FactoryGirl.define do
  factory :user do
    first_name   "Juan"
    last_name    "Iturralde"
    sequence(:email)  { |n| "person-#{n}@example.org" }
    password  "1234567890"
    password_confirmation "1234567890"
    is_admin false
    factory :admin do
        is_admin true
    end
    after(:create) do |user|
        create(:authentication, user: user)
    end
  end
end

身份验证类:

FactoryGirl.define do
  factory :authentication do
    user        {User.first || create(:user)}
    provider    "Apple"
    uid         "uid"
  end
end

我现在不知道。如何在身份验证中创建用户?

1 个答案:

答案 0 :(得分:0)

要在规范中建立关联,我使用以下内容:

# spec/factories/posts.rb
FactoryGirl.define do
  factory :post do
    title 'The best post'

    trait :with_comments do
      create_list :comment, 3
    end
  end
end

# spec/factories/comments.rb
FactoryGirl.define do
  factory :comment do
    post
    content 'Really awesome post'
  end
end

# in specs
. . .
let(:post_with_commments) { create :post, :with_comments }
. . .