3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# File 'lib/factory_bot_variants/variant_attributes.rb', line 3
def self.map(attributes)
variants = []
common_attributes = attributes.delete(:all)
attributes.each do |attr_name, attr_values|
singular_attr_name = attr_name.to_s.singularize.to_sym
attr_values.each_with_index do |attr_value, index|
variants[index] ||= {}
variants[index][singular_attr_name] = attr_value
end
end
if common_attributes
variants.each { |variant| variant.merge!(common_attributes) }
end
variants
end
|