From a7f8560a2dea1353e828e9337bccf330f552e167 Mon Sep 17 00:00:00 2001 From: Pa1NarK <69745008+pixincreate@users.noreply.github.com> Date: Wed, 2 Apr 2025 11:50:39 +0530 Subject: [PATCH] ci(cypress): verify `payment_method_status` for respective attempt status (#7496) Co-authored-by: hyperswitch-bot[bot] <148525504+hyperswitch-bot[bot]@users.noreply.github.com> --- .../cypress/e2e/configs/Payment/Adyen.js | 2 +- .../cypress/e2e/configs/Payment/Fiuu.js | 2 +- .../cypress/e2e/configs/Payment/Novalnet.js | 2 +- .../cypress/e2e/configs/Payment/WorldPay.js | 2 +- .../e2e/spec/Payment/00014-SaveCardFlow.cy.js | 24 ++ .../spec/Payment/00015-ZeroAuthMandate.cy.js | 49 ++++ .../e2e/spec/Payment/00018-BankRedirect.cy.js | 6 +- .../Payment/00019-MandatesUsingPMID.cy.js | 97 +++++++ .../Routing/00001-VolumeBasedRouting.cy.js | 4 +- .../spec/Routing/00002-RuleBasedRouting.cy.js | 2 +- .../cypress/fixtures/confirm-body.json | 2 +- .../cypress/fixtures/create-confirm-body.json | 2 +- .../cypress/fixtures/create-mandate-cit.json | 2 +- .../cypress/fixtures/create-ntid-mit.json | 2 +- .../cypress/fixtures/create-pm-id-mit.json | 2 +- .../fixtures/merchant-create-body.json | 2 +- .../fixtures/merchant-update-body.json | 2 +- cypress-tests/cypress/support/commands.js | 68 ++++- cypress-tests/package-lock.json | 263 +++++++++--------- cypress-tests/package.json | 16 +- 20 files changed, 399 insertions(+), 152 deletions(-) diff --git a/cypress-tests/cypress/e2e/configs/Payment/Adyen.js b/cypress-tests/cypress/e2e/configs/Payment/Adyen.js index 8dc34a85b9..0669d46b3e 100644 --- a/cypress-tests/cypress/e2e/configs/Payment/Adyen.js +++ b/cypress-tests/cypress/e2e/configs/Payment/Adyen.js @@ -544,7 +544,7 @@ export const connectorDetails = { Response: { status: 200, body: { - status: "succeeded", + status: "requires_customer_action", }, }, }, diff --git a/cypress-tests/cypress/e2e/configs/Payment/Fiuu.js b/cypress-tests/cypress/e2e/configs/Payment/Fiuu.js index e116064bed..dd64efb404 100644 --- a/cypress-tests/cypress/e2e/configs/Payment/Fiuu.js +++ b/cypress-tests/cypress/e2e/configs/Payment/Fiuu.js @@ -535,7 +535,7 @@ export const connectorDetails = { Response: { status: 200, body: { - status: "succeeded", + status: "requires_customer_action", }, }, }, diff --git a/cypress-tests/cypress/e2e/configs/Payment/Novalnet.js b/cypress-tests/cypress/e2e/configs/Payment/Novalnet.js index a63c4ada81..6155208f2c 100644 --- a/cypress-tests/cypress/e2e/configs/Payment/Novalnet.js +++ b/cypress-tests/cypress/e2e/configs/Payment/Novalnet.js @@ -293,7 +293,7 @@ export const connectorDetails = { Response: { status: 200, body: { - status: "succeeded", + status: "requires_customer_action", }, }, }, diff --git a/cypress-tests/cypress/e2e/configs/Payment/WorldPay.js b/cypress-tests/cypress/e2e/configs/Payment/WorldPay.js index 88d2033d80..64d447416d 100644 --- a/cypress-tests/cypress/e2e/configs/Payment/WorldPay.js +++ b/cypress-tests/cypress/e2e/configs/Payment/WorldPay.js @@ -309,7 +309,7 @@ export const connectorDetails = { Response: { status: 200, body: { - status: "succeeded", + status: "requires_customer_action", }, }, }, diff --git a/cypress-tests/cypress/e2e/spec/Payment/00014-SaveCardFlow.cy.js b/cypress-tests/cypress/e2e/spec/Payment/00014-SaveCardFlow.cy.js index 29ef0b64a5..e71d375056 100644 --- a/cypress-tests/cypress/e2e/spec/Payment/00014-SaveCardFlow.cy.js +++ b/cypress-tests/cypress/e2e/spec/Payment/00014-SaveCardFlow.cy.js @@ -183,6 +183,14 @@ describe("Card - SaveCard payment flow test", () => { if (shouldContinue) shouldContinue = utils.should_continue_further(data); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["Capture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); } ); @@ -276,6 +284,14 @@ describe("Card - SaveCard payment flow test", () => { if (shouldContinue) shouldContinue = utils.should_continue_further(data); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["PartialCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); } ); @@ -405,6 +421,14 @@ describe("Card - SaveCard payment flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["Capture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("retrieve-customerPM-call-test", () => { cy.listCustomerPMCallTest(globalState); }); diff --git a/cypress-tests/cypress/e2e/spec/Payment/00015-ZeroAuthMandate.cy.js b/cypress-tests/cypress/e2e/spec/Payment/00015-ZeroAuthMandate.cy.js index bb71e1023f..82ec8bd24f 100644 --- a/cypress-tests/cypress/e2e/spec/Payment/00015-ZeroAuthMandate.cy.js +++ b/cypress-tests/cypress/e2e/spec/Payment/00015-ZeroAuthMandate.cy.js @@ -45,6 +45,14 @@ describe("Card - SingleUse Mandates flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["ZeroAuthMandate"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -59,6 +67,14 @@ describe("Card - SingleUse Mandates flow test", () => { globalState ); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["MITAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); } ); context( @@ -91,6 +107,14 @@ describe("Card - SingleUse Mandates flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["ZeroAuthMandate"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -105,6 +129,15 @@ describe("Card - SingleUse Mandates flow test", () => { globalState ); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["MITAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -119,6 +152,14 @@ describe("Card - SingleUse Mandates flow test", () => { globalState ); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["MITAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); } ); @@ -198,5 +239,13 @@ describe("Card - SingleUse Mandates flow test", () => { if (shouldContinue) shouldContinue = utils.should_continue_further(data); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["SaveCardConfirmAutoCaptureOffSession"]; + + cy.retrievePaymentCallTest(globalState, data); + }); }); }); diff --git a/cypress-tests/cypress/e2e/spec/Payment/00018-BankRedirect.cy.js b/cypress-tests/cypress/e2e/spec/Payment/00018-BankRedirect.cy.js index 4a7fc84036..9b7bc56986 100644 --- a/cypress-tests/cypress/e2e/spec/Payment/00018-BankRedirect.cy.js +++ b/cypress-tests/cypress/e2e/spec/Payment/00018-BankRedirect.cy.js @@ -109,7 +109,7 @@ describe("Bank Redirect tests", () => { }); it("Handle bank redirect redirection", () => { - // return_url is a static url (https://hyperswitch.io) taken from confirm-body fixture and is not updated + // return_url is a static url (https://example.com) taken from confirm-body fixture and is not updated const expected_redirection = fixtures.confirmBody["return_url"]; const payment_method_type = globalState.get("paymentMethodType"); @@ -171,7 +171,7 @@ describe("Bank Redirect tests", () => { }); it("Handle bank redirect redirection", () => { - // return_url is a static url (https://hyperswitch.io) taken from confirm-body fixture and is not updated + // return_url is a static url (https://example.com) taken from confirm-body fixture and is not updated const expected_redirection = fixtures.confirmBody["return_url"]; const payment_method_type = globalState.get("paymentMethodType"); cy.handleBankRedirectRedirection( @@ -231,7 +231,7 @@ describe("Bank Redirect tests", () => { }); it("Handle bank redirect redirection", () => { - // return_url is a static url (https://hyperswitch.io) taken from confirm-body fixture and is not updated + // return_url is a static url (https://example.com) taken from confirm-body fixture and is not updated const expected_redirection = fixtures.confirmBody["return_url"]; const payment_method_type = globalState.get("paymentMethodType"); cy.handleBankRedirectRedirection( diff --git a/cypress-tests/cypress/e2e/spec/Payment/00019-MandatesUsingPMID.cy.js b/cypress-tests/cypress/e2e/spec/Payment/00019-MandatesUsingPMID.cy.js index 59c1865675..d0e03cc1b9 100644 --- a/cypress-tests/cypress/e2e/spec/Payment/00019-MandatesUsingPMID.cy.js +++ b/cypress-tests/cypress/e2e/spec/Payment/00019-MandatesUsingPMID.cy.js @@ -62,6 +62,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["PaymentMethodIdMandateNo3DSAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -76,6 +84,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { globalState ); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["MITAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); } ); @@ -137,6 +153,13 @@ describe("Card - Mandates using Payment Method Id flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["Capture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -151,6 +174,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { globalState ); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["MITAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); } ); @@ -184,6 +215,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["PaymentMethodIdMandateNo3DSAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -198,6 +237,15 @@ describe("Card - Mandates using Payment Method Id flow test", () => { globalState ); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["MITAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -212,6 +260,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { globalState ); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["MITAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); } ); @@ -256,6 +312,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["Capture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT 1", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -285,6 +349,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["Capture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT 2", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -310,6 +382,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { if (shouldContinue) shouldContinue = utils.should_continue_further(data); }); + + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["Capture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); } ); @@ -407,6 +487,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { cy.handleRedirection(globalState, expected_redirection); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["PaymentMethodIdMandate3DSAutoCapture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -421,6 +509,7 @@ describe("Card - Mandates using Payment Method Id flow test", () => { globalState ); }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" @@ -484,6 +573,14 @@ describe("Card - Mandates using Payment Method Id flow test", () => { shouldContinue = utils.should_continue_further(data); }); + it("retrieve-payment-call-test", () => { + const data = getConnectorDetails(globalState.get("connectorId"))[ + "card_pm" + ]["Capture"]; + + cy.retrievePaymentCallTest(globalState, data); + }); + it("Confirm No 3DS MIT", () => { const data = getConnectorDetails(globalState.get("connectorId"))[ "card_pm" diff --git a/cypress-tests/cypress/e2e/spec/Routing/00001-VolumeBasedRouting.cy.js b/cypress-tests/cypress/e2e/spec/Routing/00001-VolumeBasedRouting.cy.js index 75d5b7ab84..67411c7056 100644 --- a/cypress-tests/cypress/e2e/spec/Routing/00001-VolumeBasedRouting.cy.js +++ b/cypress-tests/cypress/e2e/spec/Routing/00001-VolumeBasedRouting.cy.js @@ -154,7 +154,7 @@ describe("Volume Based Routing Test", () => { }); it("Handle bank redirect redirection", () => { - // return_url is a static url (https://hyperswitch.io) taken from confirm-body fixture and is not updated + // return_url is a static url (https://example.com) taken from confirm-body fixture and is not updated const expected_redirection = fixtures.confirmBody["return_url"]; const payment_method_type = globalState.get("paymentMethodType"); cy.handleBankRedirectRedirection( @@ -267,7 +267,7 @@ describe("Volume Based Routing Test", () => { }); it("Handle bank redirect redirection", () => { - // return_url is a static url (https://hyperswitch.io) taken from confirm-body fixture and is not updated + // return_url is a static url (https://example.com) taken from confirm-body fixture and is not updated const expected_redirection = fixtures.confirmBody["return_url"]; const payment_method_type = globalState.get("paymentMethodType"); cy.handleBankRedirectRedirection( diff --git a/cypress-tests/cypress/e2e/spec/Routing/00002-RuleBasedRouting.cy.js b/cypress-tests/cypress/e2e/spec/Routing/00002-RuleBasedRouting.cy.js index cf18a20487..30b877aee3 100644 --- a/cypress-tests/cypress/e2e/spec/Routing/00002-RuleBasedRouting.cy.js +++ b/cypress-tests/cypress/e2e/spec/Routing/00002-RuleBasedRouting.cy.js @@ -202,7 +202,7 @@ describe("Rule Based Routing Test", () => { }); it("Handle bank redirect redirection", () => { - // return_url is a static url (https://hyperswitch.io) taken from confirm-body fixture and is not updated + // return_url is a static url (https://example.com) taken from confirm-body fixture and is not updated const expected_redirection = fixtures.confirmBody["return_url"]; const payment_method_type = globalState.get("paymentMethodType"); cy.handleBankRedirectRedirection( diff --git a/cypress-tests/cypress/fixtures/confirm-body.json b/cypress-tests/cypress/fixtures/confirm-body.json index d92be2d91e..22b1b894f1 100644 --- a/cypress-tests/cypress/fixtures/confirm-body.json +++ b/cypress-tests/cypress/fixtures/confirm-body.json @@ -1,6 +1,6 @@ { "client_secret": "", - "return_url": "https://hyperswitch.io", + "return_url": "https://example.com", "confirm": true, "customer_acceptance": { "acceptance_type": "offline", diff --git a/cypress-tests/cypress/fixtures/create-confirm-body.json b/cypress-tests/cypress/fixtures/create-confirm-body.json index e0ea67816d..8d30e379ee 100644 --- a/cypress-tests/cypress/fixtures/create-confirm-body.json +++ b/cypress-tests/cypress/fixtures/create-confirm-body.json @@ -11,7 +11,7 @@ "phone_country_code": "+65", "description": "Its my first payment request", "authentication_type": "no_three_ds", - "return_url": "https://hyperswitch.io", + "return_url": "https://example.com", "setup_future_usage": "on_session", "customer_acceptance": { "acceptance_type": "offline", diff --git a/cypress-tests/cypress/fixtures/create-mandate-cit.json b/cypress-tests/cypress/fixtures/create-mandate-cit.json index d011b59d78..5c3b86feaf 100644 --- a/cypress-tests/cypress/fixtures/create-mandate-cit.json +++ b/cypress-tests/cypress/fixtures/create-mandate-cit.json @@ -11,7 +11,7 @@ "phone_country_code": "+65", "description": "Its my first payment request", "authentication_type": "no_three_ds", - "return_url": "https://hyperswitch.io", + "return_url": "https://example.com", "payment_method": "card", "payment_method_type": "debit", "payment_method_data": { diff --git a/cypress-tests/cypress/fixtures/create-ntid-mit.json b/cypress-tests/cypress/fixtures/create-ntid-mit.json index 0673220b54..997fbc6f4c 100644 --- a/cypress-tests/cypress/fixtures/create-ntid-mit.json +++ b/cypress-tests/cypress/fixtures/create-ntid-mit.json @@ -3,7 +3,7 @@ "currency": "USD", "confirm": true, "payment_method": "card", - "return_url": "https://hyperswitch.io", + "return_url": "https://example.com", "email": "example@email.com", "recurring_details": { "type": "network_transaction_id_and_card_details", diff --git a/cypress-tests/cypress/fixtures/create-pm-id-mit.json b/cypress-tests/cypress/fixtures/create-pm-id-mit.json index 77d3c76b8b..a067e20c90 100644 --- a/cypress-tests/cypress/fixtures/create-pm-id-mit.json +++ b/cypress-tests/cypress/fixtures/create-pm-id-mit.json @@ -3,7 +3,7 @@ "currency": "USD", "confirm": true, "customer_id": "customer098765", - "return_url": "https://hyperswitch.io", + "return_url": "https://example.com", "recurring_details": { "type": "payment_method_id", "data": "{{payment_method_id}}" diff --git a/cypress-tests/cypress/fixtures/merchant-create-body.json b/cypress-tests/cypress/fixtures/merchant-create-body.json index d67ee7f421..67b77f4c89 100644 --- a/cypress-tests/cypress/fixtures/merchant-create-body.json +++ b/cypress-tests/cypress/fixtures/merchant-create-body.json @@ -21,7 +21,7 @@ "country": "US" } }, - "return_url": "https://hyperswitch.io", + "return_url": "https://example.com", "webhook_details": { "webhook_version": "1.0.1", "webhook_username": "ekart_retail", diff --git a/cypress-tests/cypress/fixtures/merchant-update-body.json b/cypress-tests/cypress/fixtures/merchant-update-body.json index 4d2ba6ef07..022ef759e2 100644 --- a/cypress-tests/cypress/fixtures/merchant-update-body.json +++ b/cypress-tests/cypress/fixtures/merchant-update-body.json @@ -21,7 +21,7 @@ "country": "US" } }, - "return_url": "https://hyperswitch.io", + "return_url": "https://example.com", "webhook_details": { "webhook_version": "1.0.1", "webhook_username": "ekart_retail", diff --git a/cypress-tests/cypress/support/commands.js b/cypress-tests/cypress/support/commands.js index 9872561c95..12df3772f8 100644 --- a/cypress-tests/cypress/support/commands.js +++ b/cypress-tests/cypress/support/commands.js @@ -2155,6 +2155,16 @@ Cypress.Commands.add( "nextActionUrl", response.body.next_action.redirect_to_url ); + + if ( + response.body?.payment_method_id && + response.body.payment_method_id !== null + ) { + expect( + response.body.payment_method_status, + "payment_method_status" + ).to.equal("active"); + } } else if (response.body.authentication_type === "no_three_ds") { for (const key in resData.body) { expect(resData.body[key]).to.equal(response.body[key]); @@ -2162,6 +2172,28 @@ Cypress.Commands.add( expect(response.body.customer_id).to.equal( globalState.get("customerId") ); + if ( + [ + "partially_captured", + "requires_capture", + "succeeded", + ].includes(response.body.status) + ) { + expect( + response.body.payment_method_id, + "payment_method_id should exist for succeeded/requires_capture status" + ).to.exist.and.to.be.a("string"); + + expect( + response.body.payment_method_id, + "payment_method_id" + ).to.include("pm_"); + + expect( + response.body.payment_method_status, + "payment_method_status" + ).to.equal("active"); + } } else { // Handle other authentication types as needed throw new Error( @@ -2319,8 +2351,9 @@ Cypress.Commands.add( globalState.get("paymentAmount") ); expect(response.body.profile_id, "profile_id").to.not.be.null; - expect(response.body.billing, "billing_address").to.not.be.empty; + expect(response.body.billing, "billing_address").to.not.be.null; expect(response.body.customer, "customer").to.not.be.empty; + if ( ["succeeded", "processing", "requires_customer_action"].includes( response.body.status @@ -2339,6 +2372,39 @@ Cypress.Commands.add( ).to.equal(merchant_connector_id); } + if ( + response.body.payment_method_id && + typeof response.body.payment_method_id === "string" + ) { + // Validate the payment_method_id format + expect( + response.body.payment_method_id, + "payment_method_id" + ).to.include("pm_").and.to.not.be.null; + + const activeStatuses = [ + "succeeded", + "requires_capture", + "partially_captured", + ]; + + // If capture method is manual, 'processing' status also means 'active' + // for the payment method's usability. + if (response.body.capture_method === "manual") { + activeStatuses.push("processing"); + } + + const expectedStatus = activeStatuses.includes(response.body.status) + ? "active" + : "inactive"; + + // Validate the status + expect( + response.body.payment_method_status, + "payment_method_status" + ).to.equal(expectedStatus); + } + if (autoretries) { expect(response.body).to.have.property("attempts"); expect(response.body.attempts).to.be.an("array").and.not.empty; diff --git a/cypress-tests/package-lock.json b/cypress-tests/package-lock.json index ae238ce741..87d5ddb4f1 100644 --- a/cypress-tests/package-lock.json +++ b/cypress-tests/package-lock.json @@ -9,16 +9,16 @@ "version": "1.0.0", "license": "ISC", "devDependencies": { - "@eslint/js": "^9.20.0", - "cypress": "^14.2.0", + "@eslint/js": "^9.23.0", + "cypress": "^14.2.1", "cypress-mochawesome-reporter": "^3.8.2", - "eslint": "^9.20.1", - "eslint-config-prettier": "^10.0.1", - "eslint-plugin-cypress": "^4.1.0", - "eslint-plugin-prettier": "^5.2.3", - "globals": "^15.15.0", + "eslint": "^9.23.0", + "eslint-config-prettier": "^10.1.1", + "eslint-plugin-cypress": "^4.2.0", + "eslint-plugin-prettier": "^5.2.5", + "globals": "^16.0.0", "jsqr": "^1.4.0", - "prettier": "^3.5.1" + "prettier": "^3.5.3" } }, "node_modules/@colors/colors": { @@ -33,9 +33,9 @@ } }, "node_modules/@cypress/request": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@cypress/request/-/request-3.0.7.tgz", - "integrity": "sha512-LzxlLEMbBOPYB85uXrDqvD4MgcenjRBLIns3zyhx7vTPj/0u2eQhzXvPiGcaJrV38Q9dbkExWp6cOHPJ+EtFYg==", + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@cypress/request/-/request-3.0.8.tgz", + "integrity": "sha512-h0NFgh1mJmm1nr4jCwkGHwKneVYKghUyWe6TMNrk0B9zsjAJxpg8C4/+BAcmLgCPa1vj1V8rNUaILl+zYRUWBQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -52,7 +52,7 @@ "json-stringify-safe": "~5.0.1", "mime-types": "~2.1.19", "performance-now": "^2.1.0", - "qs": "6.13.1", + "qs": "6.14.0", "safe-buffer": "^5.1.2", "tough-cookie": "^5.0.0", "tunnel-agent": "^0.6.0", @@ -126,13 +126,13 @@ } }, "node_modules/@eslint/config-array": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.0.tgz", - "integrity": "sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz", + "integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@eslint/object-schema": "^2.1.4", + "@eslint/object-schema": "^2.1.6", "debug": "^4.3.1", "minimatch": "^3.1.2" }, @@ -140,10 +140,20 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@eslint/config-helpers": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.0.tgz", + "integrity": "sha512-yJLLmLexii32mGrhW29qvU3QBVTu0GUmEf/J4XsBtVhp4JkIUFN/BjWqTF63yRvGApIDpZm5fa97LtYtINmfeQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@eslint/core": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", - "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", + "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -154,9 +164,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", - "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", "dev": true, "license": "MIT", "dependencies": { @@ -191,9 +201,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.20.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.20.0.tgz", - "integrity": "sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==", + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.23.0.tgz", + "integrity": "sha512-35MJ8vCPU0ZMxo7zfev2pypqTwWTofFZO6m4KAtdoFhRpLJUpHTZZ+KB3C7Hb1d7bULYwO4lJXGCi5Se+8OMbw==", "dev": true, "license": "MIT", "engines": { @@ -201,9 +211,9 @@ } }, "node_modules/@eslint/object-schema": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz", - "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==", + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -211,13 +221,13 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz", - "integrity": "sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==", + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.7.tgz", + "integrity": "sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@eslint/core": "^0.10.0", + "@eslint/core": "^0.12.0", "levn": "^0.4.1" }, "engines": { @@ -277,9 +287,9 @@ } }, "node_modules/@humanwhocodes/retry": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", - "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz", + "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -291,9 +301,9 @@ } }, "node_modules/@pkgr/core": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", - "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.0.tgz", + "integrity": "sha512-vsJDAkYR6qCPu+ioGScGiMYR7LvZYIXh/dlQeviqoTWNCVfKTLYD/LkNWH4Mxsv2a5vpIRc77FN5DnmK1eBggQ==", "dev": true, "license": "MIT", "engines": { @@ -354,9 +364,9 @@ } }, "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", "dev": true, "license": "MIT", "bin": { @@ -732,14 +742,14 @@ } }, "node_modules/call-bound": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", - "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "get-intrinsic": "^1.2.6" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { "node": ">= 0.4" @@ -1034,13 +1044,13 @@ } }, "node_modules/cypress": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/cypress/-/cypress-14.2.0.tgz", - "integrity": "sha512-u7fuc9JEpSYLOdu8mzZDZ/JWsHUzR5pc8i1TeSqMz/bafXp+6IweMAeyphsEJ6/13qbB6nwTEY1m+GUAp6GqCQ==", + "version": "14.2.1", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-14.2.1.tgz", + "integrity": "sha512-5xd0E7fUp0pjjib1D7ljkmCwFDgMkWuW06jWiz8dKrI7MNRrDo0C65i4Sh+oZ9YHjMHZRJBR0XZk1DfekOhOUw==", "dev": true, "hasInstallScript": true, "dependencies": { - "@cypress/request": "^3.0.7", + "@cypress/request": "^3.0.8", "@cypress/xvfb": "^1.2.4", "@types/sinonjs__fake-timers": "8.1.1", "@types/sizzle": "^2.3.2", @@ -1077,7 +1087,7 @@ "process": "^0.11.10", "proxy-from-env": "1.0.0", "request-progress": "^3.0.0", - "semver": "^7.5.3", + "semver": "^7.7.1", "supports-color": "^8.1.1", "tmp": "~0.2.3", "tree-kill": "1.2.2", @@ -1368,22 +1378,23 @@ } }, "node_modules/eslint": { - "version": "9.20.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.20.1.tgz", - "integrity": "sha512-m1mM33o6dBUjxl2qb6wv6nGNwCAsns1eKtaQ4l/NPHeTvhiUPbtdfMyktxN4B3fgHIgsYh1VT3V9txblpQHq+g==", + "version": "9.23.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.23.0.tgz", + "integrity": "sha512-jV7AbNoFPAY1EkFYpLq5bslU9NLNO8xnEeQXwErNibVryjk67wHVmddTBilc5srIttJDBrB0eMHKZBFbSIABCw==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", - "@eslint/config-array": "^0.19.0", - "@eslint/core": "^0.11.0", - "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.20.0", - "@eslint/plugin-kit": "^0.2.5", + "@eslint/config-array": "^0.19.2", + "@eslint/config-helpers": "^0.2.0", + "@eslint/core": "^0.12.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.23.0", + "@eslint/plugin-kit": "^0.2.7", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.4.1", + "@humanwhocodes/retry": "^0.4.2", "@types/estree": "^1.0.6", "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", @@ -1391,7 +1402,7 @@ "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.2.0", + "eslint-scope": "^8.3.0", "eslint-visitor-keys": "^4.2.0", "espree": "^10.3.0", "esquery": "^1.5.0", @@ -1428,22 +1439,22 @@ } }, "node_modules/eslint-config-prettier": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.0.1.tgz", - "integrity": "sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==", + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.1.tgz", + "integrity": "sha512-4EQQr6wXwS+ZJSzaR5ZCrYgLxqvUjdXctaEtBqHcbkW944B1NQyO4qpdHQbXBONfwxXdkAY81HH4+LUfrg+zPw==", "dev": true, "license": "MIT", "bin": { - "eslint-config-prettier": "build/bin/cli.js" + "eslint-config-prettier": "bin/cli.js" }, "peerDependencies": { "eslint": ">=7.0.0" } }, "node_modules/eslint-plugin-cypress": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-cypress/-/eslint-plugin-cypress-4.1.0.tgz", - "integrity": "sha512-JhqkMY02mw74USwK9OFhectx3YSj6Co1NgWBxlGdKvlqiAp9vdEuQqt33DKGQFvvGS/NWtduuhWXWNnU29xDSg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-cypress/-/eslint-plugin-cypress-4.2.0.tgz", + "integrity": "sha512-v5cyt0VYb1tEEODBJSE44PocYOwQsckyexJhCs7LtdD3FGO6D2GjnZB2s2Sts4RcxdxECTWX01nObOZRs26bQw==", "dev": true, "license": "MIT", "dependencies": { @@ -1453,15 +1464,28 @@ "eslint": ">=9" } }, + "node_modules/eslint-plugin-cypress/node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint-plugin-prettier": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.3.tgz", - "integrity": "sha512-qJ+y0FfCp/mQYQ/vWQ3s7eUlFEL4PyKfAJxsnYTJ4YT73nsJBWqmEpFryxV9OeUiqmsTsYJ5Y+KDNaeP31wrRw==", + "version": "5.2.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.5.tgz", + "integrity": "sha512-IKKP8R87pJyMl7WWamLgPkloB16dagPIdd2FjBDbyRYPKo93wS/NbCOPh6gH+ieNLC+XZrhJt/kWj0PS/DFdmg==", "dev": true, "license": "MIT", "dependencies": { "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.9.1" + "synckit": "^0.10.2" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -1472,7 +1496,7 @@ "peerDependencies": { "@types/eslint": ">=8.0.0", "eslint": ">=8.0.0", - "eslint-config-prettier": "*", + "eslint-config-prettier": ">= 7.0.0 <10.0.0 || >=10.1.0", "prettier": ">=3.0.0" }, "peerDependenciesMeta": { @@ -1485,9 +1509,9 @@ } }, "node_modules/eslint-scope": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", - "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", + "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -1514,19 +1538,6 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/@eslint/core": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.11.0.tgz", - "integrity": "sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@types/json-schema": "^7.0.15" - }, - "engines": { - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" - } - }, "node_modules/espree": { "version": "10.3.0", "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", @@ -1906,18 +1917,18 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", - "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.1", + "call-bind-apply-helpers": "^1.0.2", "es-define-property": "^1.0.1", "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "get-proto": "^1.0.0", + "get-proto": "^1.0.1", "gopd": "^1.2.0", "has-symbols": "^1.1.0", "hasown": "^2.0.2", @@ -2057,9 +2068,9 @@ } }, "node_modules/globals": { - "version": "15.15.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", - "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz", + "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==", "dev": true, "license": "MIT", "engines": { @@ -2209,9 +2220,9 @@ } }, "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, "license": "MIT", "dependencies": { @@ -3458,9 +3469,9 @@ } }, "node_modules/prettier": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.1.tgz", - "integrity": "sha512-hPpFQvHwL3Qv5AdRvBFMhnKo4tYxp0ReXiPn2bxkiohEX6mBeBwEpBSQTkD458RaaDKQMYSp4hX4UtfUTA5wDw==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz", + "integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==", "dev": true, "license": "MIT", "bin": { @@ -3550,13 +3561,13 @@ } }, "node_modules/qs": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.1.tgz", - "integrity": "sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==", + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz", + "integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==", "dev": true, "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.6" + "side-channel": "^1.1.0" }, "engines": { "node": ">=0.6" @@ -3694,9 +3705,9 @@ "license": "MIT" }, "node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, "license": "ISC", "bin": { @@ -3939,14 +3950,14 @@ } }, "node_modules/synckit": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", - "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.10.3.tgz", + "integrity": "sha512-R1urvuyiTaWfeCggqEvpDJwAlDVdsT9NM+IP//Tk2x7qHCkSvBk/fwFgw/TLAHzZlrAnnazMcRw0ZD8HlYFTEQ==", "dev": true, "license": "MIT", "dependencies": { - "@pkgr/core": "^0.1.0", - "tslib": "^2.6.2" + "@pkgr/core": "^0.2.0", + "tslib": "^2.8.1" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -3990,22 +4001,22 @@ "license": "MIT" }, "node_modules/tldts": { - "version": "6.1.77", - "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.77.tgz", - "integrity": "sha512-lBpoWgy+kYmuXWQ83+R7LlJCnsd9YW8DGpZSHhrMl4b8Ly/1vzOie3OdtmUJDkKxcgRGOehDu5btKkty+JEe+g==", + "version": "6.1.85", + "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.85.tgz", + "integrity": "sha512-gBdZ1RjCSevRPFix/hpaUWeak2/RNUZB4/8frF1r5uYMHjFptkiT0JXIebWvgI/0ZHXvxaUDDJshiA0j6GdL3w==", "dev": true, "license": "MIT", "dependencies": { - "tldts-core": "^6.1.77" + "tldts-core": "^6.1.85" }, "bin": { "tldts": "bin/cli.js" } }, "node_modules/tldts-core": { - "version": "6.1.77", - "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.77.tgz", - "integrity": "sha512-bCaqm24FPk8OgBkM0u/SrEWJgHnhBWYqeBo6yUmcZJDCHt/IfyWBb+14CXdGi4RInMv4v7eUAin15W0DoA+Ytg==", + "version": "6.1.85", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.85.tgz", + "integrity": "sha512-DTjUVvxckL1fIoPSb3KE7ISNtkWSawZdpfxGxwiIrZoO6EbHVDXXUIlIuWympPaeS+BLGyggozX/HTMsRAdsoA==", "dev": true, "license": "MIT" }, @@ -4034,9 +4045,9 @@ } }, "node_modules/tough-cookie": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.1.tgz", - "integrity": "sha512-Ek7HndSVkp10hmHP9V4qZO1u+pn1RU5sI0Fw+jCU3lyvuMZcgqsNgc6CmJJZyByK4Vm/qotGRJlfgAX8q+4JiA==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.2.tgz", + "integrity": "sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==", "dev": true, "license": "BSD-3-Clause", "dependencies": { diff --git a/cypress-tests/package.json b/cypress-tests/package.json index acd5315bfa..6032088889 100644 --- a/cypress-tests/package.json +++ b/cypress-tests/package.json @@ -20,15 +20,15 @@ "author": "Hyperswitch", "license": "ISC", "devDependencies": { - "@eslint/js": "^9.20.0", - "cypress": "^14.2.0", + "@eslint/js": "^9.23.0", + "cypress": "^14.2.1", "cypress-mochawesome-reporter": "^3.8.2", - "eslint": "^9.20.1", - "eslint-config-prettier": "^10.0.1", - "eslint-plugin-cypress": "^4.1.0", - "eslint-plugin-prettier": "^5.2.3", - "globals": "^15.15.0", + "eslint": "^9.23.0", + "eslint-config-prettier": "^10.1.1", + "eslint-plugin-cypress": "^4.2.0", + "eslint-plugin-prettier": "^5.2.5", + "globals": "^16.0.0", "jsqr": "^1.4.0", - "prettier": "^3.5.1" + "prettier": "^3.5.3" } }