我有一個Member
模型與兩個狀態機,state
和account
。我想使用factory_girl
在我的測試中創建所有可能的狀態和帳戶組合的預定義列表。factory_girl中的預定義列表
例如,使用以下的組合:
combinations = [
[:state_a, :account_a], [:state_a, :account_b], [:state_a, :account_c],
[:state_b, :account_a], [:state_b, :account_b], [:state_b, :account_c],
[:state_c, :account_a], [:state_c, :account_b], [:state_c, :account_c]
]
我想某種輔助的,例如create_list_for_all_states_and_accounts
這將創建:
[
Member(state: 'a', account: 'a'),
Member(state: 'a', account: 'b'),
Member(state: 'a', account: 'c'),
Member(state: 'b', account: 'a'),
# ...
]
這是可能的factory_girl
?
這不正常。 factory_girl是關於創建單個實例。或者你是否想過預先創建所有這些實例並從工廠方法中一次一個地返回它們? –
@DaveSchweisguth主要考慮爲所有組合創建實例,然後測試我的範圍,例如'expect(Member.some_scope).to ...' – tristanm
您的意思是Member.some_scope返回您創建的實例之一?這聽起來像Rails夾具,而不是工廠。 (很多關於SO的討論) –