Initial commit

This commit is contained in:
Yaser
2026-08-13 19:50:53 +03:30
commit 38084458fe
879 changed files with 95198 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
# frozen_string_literal: true
FactoryBot.define do
sequence(:coin_beneficiary_data) do
{ address: Faker::Blockchain::Ethereum.address }
end
sequence(:fiat_beneficiary_data) do
{ full_name: Faker::Name.name_with_middle,
address: Faker::Address.full_address,
country: Faker::Address.country,
account_number: Faker::Bank.account_number,
account_type: %w[saving checking money-market CDs retirement].sample,
bank_name: Faker::Bank.name,
bank_address: Faker::Address.full_address,
bank_country: Faker::Address.country,
bank_swift_code: Faker::Bank.swift_bic,
intermediary_bank_name: Faker::Bank.name,
intermediary_bank_address: Faker::Address.full_address,
intermediary_bank_country: Faker::Address.country,
intermediary_bank_swift_code: Faker::Bank.swift_bic }
end
factory :beneficiary do
member { create(:member) }
currency { Currency.all.sample }
name { Faker::Company.name }
description { Faker::Company.catch_phrase }
state { 'pending' }
data do
# Use save navigation operator for cases when currency is nil.
if currency&.coin?
generate(:coin_beneficiary_data)
elsif currency&.fiat?
generate(:fiat_beneficiary_data).merge(currency: currency.id)
end
end
end
end