Factory Girl: Как сделать фабрику, которая не привязана к модели? - PullRequest
1 голос
/ 29 июня 2011

Мне просто нужен хэш атрибутов для таких вещей, как кредитная карта и адрес.Пример:

Factory.define :credit_card, :class => Object do |c|
  c.first_name "Alice"
  c.last_name "Liddel"
  c.month "May"
  c.year { Time.now.year + 1 }
  c.number "1234567812345678"
  c.type "Visa"
  c.verification_value "123"
end

очевидно, у объекта нет атрибутов, и у меня нет объекта credit_cord ... Мне просто нужен стандартный скелет кредитной карты.

1 Ответ

1 голос
/ 30 июня 2011

В чем преимущество использования фабричницы для этого?Как насчет вспомогательного метода:

def credit_card(attrs = {})
   {
     :first_name => "Alice",
     ...,
     :verification_value => "123"
   }.with_indifferent_access.merge(attrs)
end

credit_card :first_name => "Linda"   # returns { :first_name => "Linda", :last_name => "Liddel", ... }
...