feat(connector): Archipel connector (#7851)

Co-authored-by: Michal Czernecki <michal.czerencki@flowbird.group>
Co-authored-by: Guillaume Bague <guillaume.bague@flowbird.group>
This commit is contained in:
michal-czernecki
2025-05-16 11:21:29 +02:00
committed by GitHub
parent 1192bd5247
commit 3d095cec0c
468 changed files with 27027 additions and 67 deletions

View File

@ -824,29 +824,44 @@ Cypress.Commands.add(
updateConnectorBody.connector_type = connectorType;
updateConnectorBody.connector_label = connectorLabel;
cy.request({
method: "POST",
url: url,
headers: {
Accept: "application/json",
"Content-Type": "application/json",
"api-key": api_key,
"x-merchant-id": merchant_id,
},
body: updateConnectorBody,
failOnStatusCode: false,
}).then((response) => {
logRequestId(response.headers["x-request-id"]);
cy.wrap(response).then(() => {
expect(response.headers["content-type"]).to.include("application/json");
expect(response.body.connector_name).to.equal(connector_id);
expect(response.body.merchant_connector_id).to.equal(
merchant_connector_id
cy.readFile(globalState.get("connectorAuthFilePath")).then(
(jsonContent) => {
const { authDetails } = getValueByKey(
JSON.stringify(jsonContent),
connector_id
);
expect(response.body.connector_label).to.equal(connectorLabel);
});
});
if (authDetails && authDetails.metadata) {
updateConnectorBody.metadata = {
...updateConnectorBody.metadata, // Preserve existing metadata
...authDetails.metadata,
};
}
cy.request({
method: "POST",
url: url,
headers: {
Accept: "application/json",
"Content-Type": "application/json",
"api-key": api_key,
"x-merchant-id": merchant_id,
},
body: updateConnectorBody,
failOnStatusCode: false,
}).then((response) => {
logRequestId(response.headers["x-request-id"]);
cy.wrap(response).then(() => {
expect(response.headers["content-type"]).to.include(
"application/json"
);
expect(response.body.connector_name).to.equal(connector_id);
expect(response.body.merchant_connector_id).to.equal(
merchant_connector_id
);
expect(response.body.connector_label).to.equal(connectorLabel);
});
});
}
);
}
);
@ -1104,12 +1119,12 @@ Cypress.Commands.add(
const responsePaymentMethods = response.body["payment_methods"];
const responseRequiredFields =
responsePaymentMethods[0]["payment_method_types"][0][
"required_fields"
"required_fields"
];
const expectedRequiredFields =
data["payment_methods"][0]["payment_method_types"][0][
"required_fields"
"required_fields"
];
Object.keys(expectedRequiredFields).forEach((key) => {
@ -2421,13 +2436,13 @@ Cypress.Commands.add(
for (const key in response.body.attempts) {
if (
response.body.attempts[key].attempt_id ===
`${payment_id}_${attempt}` &&
`${payment_id}_${attempt}` &&
response.body.status === "succeeded"
) {
expect(response.body.attempts[key].status).to.equal("charged");
} else if (
response.body.attempts[key].attempt_id ===
`${payment_id}_${attempt}` &&
`${payment_id}_${attempt}` &&
response.body.status === "requires_customer_action"
) {
expect(response.body.attempts[key].status).to.equal(
@ -2611,6 +2626,7 @@ Cypress.Commands.add(
}
} else if (response.body.authentication_type === "no_three_ds") {
for (const key in resData.body) {
expect(resData.body[key], [key]).to.deep.equal(
response.body[key]
);