0
나는 Rails에서 테스트를 처음 받았고, 내 연결을 테스트하는 데 큰 어려움을 겪고 있습니다. 나는 나의 스펙에서 만들 수있는 다양한 역할을 가진 확인 된 사용자를위한 공장을 갖고 싶다. user = create(:user_superadmin)
또는 user = create(:user_accountadmin)
의 능력을 갖기를 원하지만 그렇게하는 데 어려움이 있습니다.상속받은 공장 출신의 FactoryGirl 연결
공장/role.rb
FactoryGirl.define do
factory :role_superadmin, class: Role do
name 'SuperAdmin'
description 'Lorem ipsum...'
end
end
공장 :
Failure/Error: user = create(:user_superadmin)
NoMethodError:
undefined method `name' for :user_superadmin:Symbol
아래의 내 코드를 참조하십시오 : 아래
내 사양을 실행할 때 나는 발생하고있어 오류가 /user.rb 어떤 도움이 많이 감사합니다it 'should be a superadmin user' do
user = create(:user_superadmin)
expect(user.super_admin?).to be_truthy
end
FactoryGirl.define do
factory :user do
email { Faker::Internet.email }
password { Faker::Internet.password(8) }
password_confirmation { password }
factory :confirmed_user do
confirmed_at Time.zone.now
factory :user_superadmin do
association :role, factory: role_superadmin
end
end
end
end
사양. FactoryGirl 적절한 공장을 찾을 수 있도록뿐만 아니라 기호를 role_superadmin은 다음과 같아야합니다의 당신의 정의에
omg ... thx 너무. –
문제 없습니다. FactoryGirl을 시작했을 때 Arjan van der Gaag의 다음 도움말이 발견되었습니다. http://arjanvandergaag.nl/blog/factory_girl_tips.html –