Files
Dena/spec/factories/transfer.rb
2026-08-13 19:50:53 +03:30

52 lines
1.3 KiB
Ruby

# encoding: UTF-8
# frozen_string_literal: true
FactoryBot.define do
sequence :transfer_key do
"transfer_#{Faker::Number.unique.number(5).to_i}"
end
factory :transfer do
key { generate(:transfer_key) }
category { Transfer::CATEGORIES.sample }
description { "#{category} for #{Time.now.to_date}" }
trait :with_assets do
after(:create) do |t|
assets_number = Faker::Number.between(1, 5).to_i
create_list(:asset, assets_number, reference: t)
end
end
trait :with_expenses do
after(:create) do |t|
expense_number = Faker::Number.between(1, 5).to_i
create_list(:expense, expense_number, reference: t)
end
end
trait :with_liabilities do
after(:create) do |t|
liabilities_number = Faker::Number.between(1, 5).to_i
create_list(:liability, liabilities_number, :with_member, reference: t)
end
end
trait :with_revenues do
after(:create) do |t|
revenues_number = Faker::Number.between(1, 5).to_i
create_list(:revenue, revenues_number, reference: t)
end
end
trait :with_operations do
with_assets
with_expenses
with_liabilities
with_revenues
end
factory :transfer_with_operations, traits: %i[with_operations]
end
end