Ruby on Rails
Ouvrière
Recherche…
Définir les usines
Si vous avez une classe ActiveRecord User avec des attributs de nom et de courrier électronique, vous pouvez créer une fabrique en faisant en sorte que FactoryGirl le devienne:
FactoryGirl.define do
factory :user do # it will guess the User class
name "John"
email "[email protected]"
end
end
Ou vous pouvez le rendre explicite et même changer son nom:
FactoryGirl.define do
factory :user_jack, class: User do
name "Jack"
email "[email protected]"
end
end
Ensuite, dans vos spécifications, vous pouvez utiliser les méthodes de FactoryGirl avec celles-ci, comme ceci:
# To create a non saved instance of the User class filled with John's data
build(:user)
# and to create a non saved instance of the User class filled with Jack's data
build(:user_jack)
Les méthodes les plus courantes sont:
# Build returns a non saved instance
user = build(:user)
# Create returns a saved instance
user = create(:user)
# Attributes_for returns a hash of the attributes used to build an instance
attrs = attributes_for(:user)
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow