2023-05-11 06:46:33 +00:00
|
|
|
import {
|
|
|
|
BUTTON_SELECTORS,
|
|
|
|
ORDER_GRANT_REFUND,
|
|
|
|
ORDER_TRANSACTION_CREATE,
|
|
|
|
ORDERS_SELECTORS,
|
2023-05-15 12:14:40 +00:00
|
|
|
SHARED_ELEMENTS,
|
2023-05-11 06:46:33 +00:00
|
|
|
} from "../../elements";
|
|
|
|
|
|
|
|
export function markAsPaidOrderWithRefNumber(transactionNumber) {
|
|
|
|
cy.addAliasToGraphRequest("OrderMarkAsPaid");
|
|
|
|
clickMarkAsPaidButton();
|
|
|
|
typeTransactionReference(`ref_${transactionNumber}`);
|
|
|
|
clickConfirmMarkAsPaidButton().waitForRequestAndCheckIfNoErrors(
|
|
|
|
"@OrderMarkAsPaid",
|
|
|
|
);
|
|
|
|
}
|
|
|
|
export function captureManualTransaction(
|
|
|
|
transactionDescription,
|
|
|
|
transactionPSPReference,
|
|
|
|
amount,
|
|
|
|
) {
|
|
|
|
clickCaptureManualTransactionButton();
|
|
|
|
typeTransactionDescription(`desc_${transactionDescription}`);
|
|
|
|
typeTransactionPSPReference(`psp_${transactionPSPReference}`);
|
|
|
|
typeRefundTotalAmount(amount);
|
|
|
|
clickCreateManualTransactionButton().confirmationMessageShouldAppear();
|
|
|
|
}
|
|
|
|
export function grantRefundAllProductsAndShippingWithReason(
|
|
|
|
refundReason,
|
|
|
|
total,
|
|
|
|
) {
|
|
|
|
cy.addAliasToGraphRequest("OrderDetailsGrantRefund");
|
|
|
|
clickGrantRefundButton();
|
|
|
|
cy.waitForRequestAndCheckIfNoErrors("@OrderDetailsGrantRefund");
|
|
|
|
clickMaxQuantityButton();
|
|
|
|
typeRefundReason(refundReason);
|
|
|
|
clickRefundShippingCheckbox();
|
2023-05-15 12:14:40 +00:00
|
|
|
// this check makes sure no banner covers apply button which was making this action flaky
|
|
|
|
cy.get(SHARED_ELEMENTS.notificationMessage).should("not.exist");
|
2023-05-11 06:46:33 +00:00
|
|
|
clickApplyRefundButton();
|
|
|
|
cy.get(ORDER_GRANT_REFUND.refundAmountInput).should("contain.value", total);
|
|
|
|
clickConfirmRefundButton();
|
|
|
|
cy.confirmationMessageShouldAppear();
|
|
|
|
}
|
|
|
|
export function sendRefundWithDescriptionPSPAndAmount(
|
|
|
|
transactionDescription,
|
|
|
|
transactionPSPReference,
|
|
|
|
amount,
|
|
|
|
) {
|
|
|
|
clickSendRefundButton();
|
|
|
|
typeTransactionDescription(`desc_${transactionDescription}`);
|
|
|
|
typeTransactionPSPReference(`psp_${transactionPSPReference}`);
|
|
|
|
typeRefundTotalAmount(amount);
|
|
|
|
cy.addAliasToGraphRequest("CreateManualTransactionRefund");
|
|
|
|
clickRefundSubmitButton();
|
|
|
|
cy.waitForRequestAndCheckIfNoErrors(
|
|
|
|
"@CreateManualTransactionRefund",
|
|
|
|
).confirmationMessageShouldAppear();
|
|
|
|
}
|
|
|
|
export function clickMarkAsPaidButton() {
|
|
|
|
return cy.clickOnElement(ORDERS_SELECTORS.markAsPaidButton);
|
|
|
|
}
|
|
|
|
export function clickRefundSubmitButton() {
|
|
|
|
return cy.clickOnElement(ORDER_TRANSACTION_CREATE.manualTransactionSubmit);
|
|
|
|
}
|
|
|
|
export function clickCreateManualTransactionButton() {
|
|
|
|
return cy.clickOnElement(ORDER_TRANSACTION_CREATE.manualTransactionSubmit);
|
|
|
|
}
|
|
|
|
export function clickMaxQuantityButton() {
|
|
|
|
return cy.clickOnElement(ORDER_GRANT_REFUND.setMaxQuantityButton);
|
|
|
|
}
|
|
|
|
export function clickCaptureManualTransactionButton() {
|
|
|
|
return cy.clickOnElement(ORDERS_SELECTORS.captureManualTransactionButton);
|
|
|
|
}
|
|
|
|
export function typeRefundReason(refundReasonDescription) {
|
|
|
|
return cy
|
|
|
|
.get(ORDER_GRANT_REFUND.refundReasonInput)
|
|
|
|
.type(`reason_${refundReasonDescription}`);
|
|
|
|
}
|
|
|
|
export function typeRefundTotalAmount(amount) {
|
|
|
|
return cy.get(ORDER_TRANSACTION_CREATE.transactAmountInput).type(amount);
|
|
|
|
}
|
|
|
|
export function typeTransactionReference(reference) {
|
|
|
|
return cy.get(ORDERS_SELECTORS.transactionReferenceInput).type(reference);
|
|
|
|
}
|
|
|
|
export function typeTransactionDescription(transactionDescription) {
|
|
|
|
return cy
|
|
|
|
.get(ORDER_TRANSACTION_CREATE.transactionDescription)
|
|
|
|
.type(`desc_${transactionDescription}`);
|
|
|
|
}
|
|
|
|
export function typeTransactionPSPReference(transactionPSPReference) {
|
|
|
|
return cy
|
|
|
|
.get(ORDER_TRANSACTION_CREATE.transactionPspReference)
|
|
|
|
.type(`psp_${transactionPSPReference}`);
|
|
|
|
}
|
|
|
|
export function clickGrantRefundButton() {
|
|
|
|
return cy.clickOnElement(ORDERS_SELECTORS.grantRefundButton);
|
|
|
|
}
|
|
|
|
export function clickSendRefundButton() {
|
|
|
|
return cy.clickOnElement(ORDERS_SELECTORS.refundButton);
|
|
|
|
}
|
|
|
|
export function clickRefundShippingCheckbox() {
|
|
|
|
return cy.clickOnElement(ORDER_GRANT_REFUND.refundShippingCheckbox);
|
|
|
|
}
|
|
|
|
export function clickApplyRefundButton() {
|
|
|
|
return cy.clickOnElement(ORDER_GRANT_REFUND.applySelectedRefundButton);
|
|
|
|
}
|
|
|
|
|
|
|
|
export function clickConfirmRefundButton() {
|
|
|
|
return cy.clickOnElement(ORDER_GRANT_REFUND.grantRefundButton);
|
|
|
|
}
|
|
|
|
export function clickConfirmMarkAsPaidButton() {
|
|
|
|
return cy.clickOnElement(BUTTON_SELECTORS.submit);
|
|
|
|
}
|