| 12345678910111213141516171819202122232425262728293031323334 |
- class Payment::TestCards
- attr_accessor :paratika, :test_gateway, :expired, :invalid
- # CCV or CVV, typo problem
- def join_path(*args)
- if defined?(Rails) && defined?(Rails.root)
- Rails.root.join(*args)
- else
- File.join(Dir.pwd, *args)
- end
- end
- def initialize
- paratika_csv = CSV.read(join_path("lib/payment/test_cards/paratika.csv"), headers: true)
- @paratika = paratika_csv.map do |row|
- { name: 'John Doe', number: row['Card Number'], month: row['Card Expiry'].split('/')[0], year: row['Card Expiry'].split('/')[1], ccv: row['CVV'] }
- end
- test_gateway_csv = CSV.read(join_path("lib/payment/test_cards/test_gateway.csv"), headers: true)
- @test_gateway = test_gateway_csv.map do |row|
- { name: 'John Doe', number: row['Card Number'], month: row['Card Expiry'].split('/')[0], year: row['Card Expiry'].split('/')[1], ccv: row['CVV'] }
- end
- @invalid = [
- { name: 'John Doe', number: '0111111111111111', month: '12', year: '2026', ccv: '000' }
- ]
- @expired = [
- { name: 'John Doe', number: '4546711234567894', month: '01', year: '2023', ccv: '123' }
- ]
- end
- def self.get(gw)
- new.send(gw)
- end
- end
|