From 586acff444132d9ed2fc5dad2c9331039e673c30 Mon Sep 17 00:00:00 2001 From: gcatanese Date: Tue, 12 Aug 2025 11:33:10 +0200 Subject: [PATCH 1/4] Add TestPixActionQrCode --- src/test/java/com/adyen/CheckoutTest.java | 26 +++++++++++++++++++ .../mocks/checkout/pixQrCodeResponse.json | 15 +++++++++++ 2 files changed, 41 insertions(+) create mode 100644 src/test/resources/mocks/checkout/pixQrCodeResponse.json diff --git a/src/test/java/com/adyen/CheckoutTest.java b/src/test/java/com/adyen/CheckoutTest.java index 33e701a93..7cab424a1 100644 --- a/src/test/java/com/adyen/CheckoutTest.java +++ b/src/test/java/com/adyen/CheckoutTest.java @@ -665,4 +665,30 @@ public void TestSessionsCheckDefaultValues() throws Exception { final JsonNode actual = mapper.readTree(captor.getValue()); assertEquals(expected, actual); } + + @Test + public void TestPixActionQrCode() throws Exception { + Client client = createMockClientFromFile("mocks/checkout/pixQrCodeResponse.json"); + + PaymentRequest paymentRequest = new PaymentRequest(); + paymentRequest.setAmount(new Amount().currency("EUR").value(1000L)); + paymentRequest.lineItems( + Arrays.asList( + new LineItem().id("Item 1").amountIncludingTax(40000L), + new LineItem().id("Item 2").amountIncludingTax(60000L))); + paymentRequest.shopperName(new Name().firstName("Jose").lastName("Silva")); + paymentRequest.setPaymentMethod( + new CheckoutPaymentMethod(new PixDetails().type(PixDetails.TypeEnum.PIX))); + PaymentsApi checkout = new PaymentsApi(client); + PaymentResponse paymentResponse = checkout.payments(paymentRequest); + assertEquals("8815658961765250", paymentResponse.getPspReference()); + assertEquals( + CheckoutQrCodeAction.TypeEnum.QRCODE, + paymentResponse.getAction().getCheckoutQrCodeAction().getType()); + assertEquals( + "pix", paymentResponse.getAction().getCheckoutQrCodeAction().getPaymentMethodType()); + assertEquals( + "DMhpN90TFR2e7TzwHYRFkhw4brxm2wHBg", + paymentResponse.getAction().getCheckoutQrCodeAction().getQrCodeData()); + } } diff --git a/src/test/resources/mocks/checkout/pixQrCodeResponse.json b/src/test/resources/mocks/checkout/pixQrCodeResponse.json new file mode 100644 index 000000000..e60f5d05b --- /dev/null +++ b/src/test/resources/mocks/checkout/pixQrCodeResponse.json @@ -0,0 +1,15 @@ +{ + "additionalData": { + "pix.expirationDate": "2021-12-21T13:00:00-03:00", + "acquirerReference": "00000000008815658961765250", + "acquirerAccountCode": "PixBTGAcquirerAccount" + }, + "pspReference": "8815658961765250", + "resultCode": "Pending", + "action": { + "paymentData": "Ab02b4c0!BQABAgA...", + "paymentMethodType": "pix", + "type": "qrCode", + "qrCodeData": "DMhpN90TFR2e7TzwHYRFkhw4brxm2wHBg" + } +} \ No newline at end of file From 3deb6040d6fd71e4ac0894f2fecdda6d82eb3c58 Mon Sep 17 00:00:00 2001 From: Beppe Catanese <1771700+gcatanese@users.noreply.github.com> Date: Tue, 12 Aug 2025 12:05:36 +0200 Subject: [PATCH 2/4] Update src/test/java/com/adyen/CheckoutTest.java Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- src/test/java/com/adyen/CheckoutTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/com/adyen/CheckoutTest.java b/src/test/java/com/adyen/CheckoutTest.java index 7cab424a1..1616fd28a 100644 --- a/src/test/java/com/adyen/CheckoutTest.java +++ b/src/test/java/com/adyen/CheckoutTest.java @@ -671,7 +671,7 @@ public void TestPixActionQrCode() throws Exception { Client client = createMockClientFromFile("mocks/checkout/pixQrCodeResponse.json"); PaymentRequest paymentRequest = new PaymentRequest(); - paymentRequest.setAmount(new Amount().currency("EUR").value(1000L)); + paymentRequest.setAmount(new Amount().currency("EUR").value(100000L)); paymentRequest.lineItems( Arrays.asList( new LineItem().id("Item 1").amountIncludingTax(40000L), From c4af28dac8f2debd353176a9f5ca251f8863959e Mon Sep 17 00:00:00 2001 From: Beppe Catanese <1771700+gcatanese@users.noreply.github.com> Date: Tue, 12 Aug 2025 12:05:48 +0200 Subject: [PATCH 3/4] Update src/test/java/com/adyen/CheckoutTest.java Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- src/test/java/com/adyen/CheckoutTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/com/adyen/CheckoutTest.java b/src/test/java/com/adyen/CheckoutTest.java index 1616fd28a..8d21f0387 100644 --- a/src/test/java/com/adyen/CheckoutTest.java +++ b/src/test/java/com/adyen/CheckoutTest.java @@ -667,7 +667,7 @@ public void TestSessionsCheckDefaultValues() throws Exception { } @Test - public void TestPixActionQrCode() throws Exception { + public void testPixActionQrCode() throws Exception { Client client = createMockClientFromFile("mocks/checkout/pixQrCodeResponse.json"); PaymentRequest paymentRequest = new PaymentRequest(); From 2ccb5490c7ecc68754175bdc90027a4700eb2bd4 Mon Sep 17 00:00:00 2001 From: Beppe Catanese <1771700+gcatanese@users.noreply.github.com> Date: Tue, 12 Aug 2025 12:06:24 +0200 Subject: [PATCH 4/4] Update src/test/java/com/adyen/CheckoutTest.java Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- src/test/java/com/adyen/CheckoutTest.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/test/java/com/adyen/CheckoutTest.java b/src/test/java/com/adyen/CheckoutTest.java index 8d21f0387..38beea516 100644 --- a/src/test/java/com/adyen/CheckoutTest.java +++ b/src/test/java/com/adyen/CheckoutTest.java @@ -682,13 +682,13 @@ public void testPixActionQrCode() throws Exception { PaymentsApi checkout = new PaymentsApi(client); PaymentResponse paymentResponse = checkout.payments(paymentRequest); assertEquals("8815658961765250", paymentResponse.getPspReference()); - assertEquals( - CheckoutQrCodeAction.TypeEnum.QRCODE, - paymentResponse.getAction().getCheckoutQrCodeAction().getType()); - assertEquals( - "pix", paymentResponse.getAction().getCheckoutQrCodeAction().getPaymentMethodType()); - assertEquals( - "DMhpN90TFR2e7TzwHYRFkhw4brxm2wHBg", - paymentResponse.getAction().getCheckoutQrCodeAction().getQrCodeData()); + assertEquals(PaymentResponse.ResultCodeEnum.PENDING, paymentResponse.getResultCode()); + + assertNotNull(paymentResponse.getAction()); + final CheckoutQrCodeAction qrCodeAction = paymentResponse.getAction().getCheckoutQrCodeAction(); + assertNotNull(qrCodeAction); + assertEquals(CheckoutQrCodeAction.TypeEnum.QRCODE, qrCodeAction.getType()); + assertEquals("pix", qrCodeAction.getPaymentMethodType()); + assertEquals("DMhpN90TFR2e7TzwHYRFkhw4brxm2wHBg", qrCodeAction.getQrCodeData()); } }