module FakeBsmobil::Generator
Public Instance Methods
account(override = {})
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 76 def account(override = {}) { alias: '', description: 'CUENTA EXPANSIÓN', availability: '', owner: name, product: '', productType: '', entityCode: '', contractCode: '', bic: 'BSAB ESBB', number: account_number, iban: iban, amount: amount, numOwners: 0, isOwner: false, isSBPManaged: false, isIberSecurities: false, joint: '', mobileWarning: '' }.merge(override) end
account_number()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 68 def account_number [4, 4, 2, 10].map(&Faker::Number.method(:number)).join('-') end
amount(amount = rand(1_000.0..10_000.0))
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 54 def amount(amount = rand(1_000.0..10_000.0)) num = '' thousands = amount / 1000 if thousands > 0 num += "#{rand(thousands)}." end num += '%03d' % [amount, 999].min num += '.' << ('%0.2f' % amount).split('.').last { value: num, currency: 'EUR' } end
card_id()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 46 def card_id "#{Faker::Number.number(7)}" end
confirmed_card_movement()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 177 def confirmed_card_movement city = Faker::Address.city concept = case %w(cajero company).sample when 'cajero' "CAJERO #{Faker::Company.name[0, 10].ljust(10, ' ')} OF.#{number(4)}".upcase when 'company' company = Faker::Company.name rand > 0.7 ? company.upcase : company end { movementNumber: number(4), concept: concept, date: Faker::Date.backward.strftime('%d-%m-%Y'), city: city = rand > 0.7 ? city.upcase : city, canSplit: false, amount: a = amount(rand(1..300)), indFracEnabled: true, indMov: "1", isTraspasable: false, commission: {:value => "0,00", :currency => "EUR"}, originAmount: a, address: city, point: nil } end
confirmed_card_movements(n = 10)
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 208 def confirmed_card_movements(n = 10) n.times.map { confirmed_card_movement } end
contract_name()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 19 def contract_name [ Faker::Name.last_name, Faker::Name.first_name ].join(' ,').upcase end
contract_number(length: 10)
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 38 def contract_number(length: 10) "#{Faker::Number.number(length)}" end
debit_card(override = {})
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 114 def debit_card(override = {}) { bsprotect: "S", description: "BSCARD MASTERCARD BS", isMarsans: "false", name: name, productType: "TD", reference: "0", type: "OPERAC.", shortDescription: "BSCARD MASTERCARD BS", number: "5402________#{card_tail = number(4)}", realNumber: "5402#{number(8)}#{card_tail}", numcard: "TA #{number(5)}", isOwner: true, activatedLE: "P", codret: "", contractCCC: number(20), operativeCode: "4", cvv2: " ", dni: "", entity: "", mail: "", mailChecked: "", phoneNumber: "", phoneNumberChecked: "", alias: "", expirationDate: "", balance: {value: "", currency: ""}, availableBalance: {value: "", currency: ""}, dms: "", indAlert: "", selectableIndex: "", canActivate: false, cardType: { background: "1", type: "mastercard", subtype: "debit", textColor: "#ffffff", iconColor: "#ffffff", logo: "mastercard1" }, status: "active", availableOperations: [], isInternational: true, isInternet: true, isSticker: true, stickerCard: false, nfcCard: { isNfc: true, isActive: false, expirationDate: Faker::Date.forward.strftime('%d-%m-%y') }, stickerPan: "", deteriorationLock: false, isPrepaidAnonymous: false }.merge(override) end
dni()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 9 def dni letters = ['' , 'N', 'Y'] "#{letters.sample}#{Faker::Number.number(7)}#{letters.sample}" end
email(name: self.name, domain: Faker::Internet.domain_name)
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 34 def email(name: self.name, domain: Faker::Internet.domain_name) [ Faker::Internet.user_name(name), domain].join('@') end
full_account(override = {})
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 99 def full_account(override = {}) account(override).merge( availability: 'TOTAL', product: 'DV00083', productType: '', entityCode: '', contractCode: '', numOwners: 1, isOwner: true, isSBPManaged: false, isIberSecurities: false, joint: 'I', mobileWarning: 'A') end
iban()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 72 def iban "ES#{Faker::Number.number(22)}" end
movement()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 173 def movement Movements.send(Movements.random) end
movements(account)
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 216 def movements(account) {account: full_account(account), accountMovements: 10.times.map { movement }, moreElements: true} end
name()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 14 def name [ Faker::Name.first_name, Faker::Name.last_name ].join(' ').upcase end
number(value)
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 50 def number(value) Faker::Number.number(value) end
person_number()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 42 def person_number "#{Faker::Number.number(7)}" end
phone_number(prefix: '+34')
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 26 def phone_number(prefix: '+34') "#{prefix}#{Faker::Number.number(9)}" end
sex()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 30 def sex %w(H M).sample end
unconfirmed_card_movement()
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 204 def unconfirmed_card_movement confirmed_card_movement.merge(movementNumber: '') end
unconfirmed_card_movements(n = 10)
click to toggle source
# File lib/fake_bsmobil/generator.rb, line 212 def unconfirmed_card_movements(n = 10) n.times.map { unconfirmed_card_movement } end