2014-10-01 3 views
0

У меня есть 2 классов пользователей и авторизаций, затем авторизаций HAS_MANY пользователей: классHAS_MANY Ассоциация в FactoryGirl

Пользователь: класс

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 

И я не в настоящее время. Как создать пользователя при аутентификации?

+0

пожалуйста смотрите в [объединения] (https://github.com/thoughtbot/factory_girl/blob/master/GETTING_STARTED.md#associations) в руководстве по началу работы – wik

ответ

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 } 
. . . 
Смежные вопросы