-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
132efe4
commit 957908d
Showing
3 changed files
with
97 additions
and
20 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,28 +1,92 @@ | ||
# frozen_string_literal: true | ||
|
||
RSpec.describe QrcodePixRuby do | ||
it 'has a valid version number' do | ||
expect(QrcodePixRuby::VERSION).not_to be nil | ||
expect(QrcodePixRuby::VERSION).to match /^[0-9]+\.[0-9]+\.[0-9]+$/ | ||
it 'QRCode - Base64' | ||
|
||
it 'QRCode - Payload - 01 - Basic' do | ||
pix = QrcodePixRuby::Payload.new | ||
|
||
pix.pix_key = '[email protected]' | ||
pix.merchant_name = 'Fulano de Tal' | ||
pix.merchant_city = 'SAO PAULO' | ||
|
||
expect(pix.payload).to eq '00020101021126380014BR.GOV.BCB.PIX0116test@mail.com.br5204000053039865802BR5913Fulano de Tal6009SAO PAULO62070503***6304BCD7' | ||
end | ||
|
||
it 'QRCode - Payload - 02 - Currency' do | ||
pix = QrcodePixRuby::Payload.new | ||
|
||
pix.pix_key = '[email protected]' | ||
pix.merchant_name = 'Fulano de Tal' | ||
pix.merchant_city = 'SAO PAULO' | ||
pix.currency = '986' | ||
|
||
expect(pix.payload).to eq '00020101021126380014BR.GOV.BCB.PIX0116test@mail.com.br5204000053039865802BR5913Fulano de Tal6009SAO PAULO62070503***6304BCD7' | ||
end | ||
|
||
it 'QRCode - Payload - 03 - Value' do | ||
pix = QrcodePixRuby::Payload.new | ||
|
||
pix.pix_key = '[email protected]' | ||
pix.merchant_name = 'Fulano de Tal' | ||
pix.merchant_city = 'SAO PAULO' | ||
pix.amount = '100.99' | ||
|
||
expect(pix.payload).to eq '00020101021126380014BR.GOV.BCB.PIX0116test@mail.com.br5204000053039865406100.995802BR5913Fulano de Tal6009SAO PAULO62070503***6304B432' | ||
end | ||
|
||
it 'QRCode - Payload - 04 - Country code' do | ||
pix = QrcodePixRuby::Payload.new | ||
|
||
pix.pix_key = '[email protected]' | ||
pix.merchant_name = 'Fulano de Tal' | ||
pix.merchant_city = 'SAO PAULO' | ||
pix.country_code = 'BR' | ||
|
||
expect(pix.payload).to eq '00020101021126380014BR.GOV.BCB.PIX0116test@mail.com.br5204000053039865802BR5913Fulano de Tal6009SAO PAULO62070503***6304BCD7' | ||
end | ||
|
||
it 'QRCode - Payload - 05 - Postal code' do | ||
pix = QrcodePixRuby::Payload.new | ||
|
||
pix.pix_key = '[email protected]' | ||
pix.merchant_name = 'Fulano de Tal' | ||
pix.merchant_city = 'SAO PAULO' | ||
pix.postal_code = '85000100' | ||
|
||
expect(pix.payload).to eq '00020101021126380014BR.GOV.BCB.PIX0116test@mail.com.br5204000053039865802BR5913Fulano de Tal6009SAO PAULO61088500010062070503***6304558C' | ||
end | ||
|
||
it 'generates default payload and base64, when nothing is defined' do | ||
it 'QRCode - Payload - 06 - Transaction ID' do | ||
pix = QrcodePixRuby::Payload.new | ||
expect(pix.payload).to eq '00020126260014br.gov.bcb.pix0100020052040000530398654005802BR5900600062040500630462E0' | ||
expect(pix.base64).to eq '' | ||
|
||
pix.pix_key = '[email protected]' | ||
pix.merchant_name = 'Fulano de Tal' | ||
pix.merchant_city = 'SAO PAULO' | ||
pix.transaction_id = 'my_transaction_id' | ||
|
||
expect(pix.payload).to eq '00020101021126380014BR.GOV.BCB.PIX0116test@mail.com.br5204000053039865802BR5913Fulano de Tal6009SAO PAULO62210517my_transaction_id63046247' | ||
end | ||
|
||
it 'QRCode - Payload - 07 - Description' do | ||
pix = QrcodePixRuby::Payload.new | ||
|
||
pix.pix_key = '[email protected]' | ||
pix.merchant_name = 'Fulano de Tal' | ||
pix.merchant_city = 'SAO PAULO' | ||
pix.description = 'is my message :)' | ||
|
||
expect(pix.payload).to eq '[email protected] my message :)5204000053039865802BR5913Fulano de Tal6009SAO PAULO62070503***6304A39D' | ||
end | ||
|
||
it 'generates valids payloads and base64' do | ||
it 'QRCode - Payload - 08 - Repeatable' do | ||
pix = QrcodePixRuby::Payload.new | ||
|
||
pix.pix_key = '12345678900' | ||
pix.description = 'Pagamento do pedido 123456' | ||
pix.merchant_name = 'William Costa' | ||
pix.pix_key = '[email protected]' | ||
pix.merchant_name = 'Fulano de Tal' | ||
pix.merchant_city = 'SAO PAULO' | ||
pix.transaction_id = 'WDEV1234' | ||
pix.amount = '100.00' | ||
pix.repeatable = false | ||
|
||
expect(pix.payload).to eq '00020126630014br.gov.bcb.pix0111123456789000226Pagamento do pedido 1234565204000053039865406100.005802BR5913William Costa6009SAO PAULO62120508WDEV12346304E9BF' | ||
expect(pix.base64).to eq '' | ||
expect(pix.payload).to eq '00020101021126380014BR.GOV.BCB.PIX0116test@mail.com.br5204000053039865802BR5913Fulano de Tal6009SAO PAULO62070503***6304BCD7' | ||
end | ||
end |