module FFaker::Product
def brand
def brand case rand(0..11) when (0..4) then fetch_sample(B1) + fetch_sample(B2) when (5..10) then [ fetch_sample(START), fetch_sample(VOWELS), fetch_sample(SUFFIX), rand(0..1).zero? ? fetch_sample(ADDON) : nil ].join.capitalize when 11 then letters(2..3).to_s end end
def letters(n)
def letters(n) max = n.is_a?(Range) ? fetch_sample(n.to_a) : n (0...max).map { fetch_sample(LETTERS).upcase }.join end
def model
def model case rand(0..1) when 0 then "#{fetch_sample(LETTERS).upcase}#{rand(90)}" # N90 when 1 then "#{letters(1..rand(1..2))}-#{rand(9900)}" # N-9400 end end
def product
def product "#{brand} #{product_name}" end
def product_name
def product_name case rand(0..1) when 0 then "#{fetch_sample(ADJ)} #{fetch_sample(NOUN)}" when 1 then "#{[fetch_sample(ADJ), fetch_sample(ADJ)].uniq.join(' ')} #{fetch_sample(NOUN)}" end end