如果我想使用「創建」構建策略創建和實例,然後想要使用「attributes_for」構建策略進行驗證,是否可以這樣做?如果我在工廠使用序列?在機械師寶石中可能嗎?factory_girl是否有辦法獲取attributes_for併爲同一實例元素創建?
5
A
回答
11
不太確定我完全理解。而且我不是機械師的使用者。但這聽起來像你只是想做這樣的事情。
@attributes = FactoryGirl.attributes_for(:my_object)
my_object = MyObject.create(@attributes)
my_object.some_property.should == @attributes[:some_property]
1
感謝這個帖子,只是想補充一點,類FactoryGirl
@user_attributes = FactoryGirl.attributes_for(:super_user)
1
John Hinnegan建議的解決方案是合理的,但你最好使用FactoryGirl.create
方法初始化對象,因爲它通常會給你一個有效的對象。例如,如果您使用MyObject.new
,則不會調用after(:create)
。
@attributes = FactoryGirl.attributes_for(:my_object)
my_object = FactoryGirl.create(:my_object, @attributes)
expect(my_object.some_property).to eq @attributes[:some_property]
相關問題
- 1. 有沒有辦法從一個元素獲得SlickGrid的實例
- 2. 有沒有辦法從基礎實例創建派生實例?
- 3. Eclipse Graphiti,如何創建「CustomFeature創建並獲取所有元素」?
- 4. 有沒有辦法在ec2實例中獲取實例ID
- 5. 有沒有辦法動態創建類(不是實例)?
- 6. 有沒有辦法在c#中創建一個sqllocaldb實例?
- 7. 有沒有辦法獲得創建另一個對象的對象的實例?
- 8. Angular2是否可以注入並創建實例或相同?
- 9. 是否創建了一個實例?
- 10. 有沒有辦法告訴MEF是否爲我導出的類型創建了一個實例
- 11. 是否有理由爲同一場景創建Ogre :: RaySceneQuery的多個實例?
- 12. 是否可以從WebDriver實例同時獲取頁面上的多個元素?
- 13. 爲每個元素創建具有相同實例數的隨機樣本
- 14. 創建一個同時是實例和類方法的方法
- 15. 如何檢查元素是否爲U的一個實例?
- 16. C#:有沒有辦法確定一系列元素是否爲空?
- 17. 是否有辦法批量獲取Wikipedia圖像元數據?
- 18. 創建一個頁面的新實例並獲取URL
- 19. Aurelia自定義元素實例創建
- 20. 是否有一個call_user_func()等同於創建一個新的類實例?
- 21. 獲取創建另一個實例的實例
- 22. 獲取所有元素與同一類
- 23. 有什麼辦法可以在不創建類實例的情況下獲取類實例屬性?
- 24. 有沒有辦法找出創建哪個類實例'this'
- 25. vscode - 有沒有辦法創建`vscode.TextDocument`的實例?
- 26. PluginManager :: get無法爲getObjectManager獲取或創建實例
- 27. 有沒有辦法動態創建<rich:tab>元素?
- 28. 有沒有辦法根據任意xml獲取System.Configuration.Configuration實例?
- 29. startService()是否創建一個新的Service實例或使用現有的實例?
- 30. 有沒有辦法檢查當前LI元素是否有某個元素,例如使用css的UL?