foodsoft/spec/factories/supplier.rb

34 lines
910 B
Ruby
Raw Normal View History

2017-10-27 23:21:31 +02:00
require 'factory_bot'
2017-10-27 23:21:31 +02:00
FactoryBot.define do
factory :supplier do
2013-07-15 17:57:20 +02:00
name { Faker::Company.name.truncate(30) }
phone { Faker::PhoneNumber.phone_number }
address { Faker::Address.street_address }
2014-11-21 14:37:56 +01:00
transient do
2019-10-28 09:40:43 +01:00
article_count { 0 }
end
before :create do |supplier, _evaluator|
next if supplier.instance_of?(SharedSupplier)
next if supplier.supplier_category_id?
supplier.supplier_category = create :supplier_category
end
after :create do |supplier, evaluator|
2013-07-15 00:17:07 +02:00
article_count = evaluator.article_count
article_count = rand(1..99) if article_count == true
create_list(:article, article_count, supplier: supplier)
end
2014-11-21 14:37:56 +01:00
2022-02-20 16:15:22 +01:00
factory :shared_supplier, class: 'SharedSupplier'
end
factory :supplier_category do
sequence(:name) { |n| Faker::Lorem.characters(number: rand(2..12)) + " ##{n}" }
financial_transaction_class
end
end