Skip to content

Commit dee6b3c

Browse files
Merge branch 'ACQE-5766-2' into ACQE-functional-deployment-version8
2 parents 43d940b + edb9977 commit dee6b3c

File tree

4 files changed

+148
-2
lines changed

4 files changed

+148
-2
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2025 Adobe
5+
* All Rights Reserved.
6+
*/
7+
-->
8+
9+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="StorefrontFillCreditCardDetailsActionGroup">
12+
<annotations>
13+
<description>Fills in the provided Credit Card details. And Clicks on PayNow Button</description>
14+
</annotations>
15+
<arguments>
16+
<argument name="creditCardDetails" defaultValue="VisaDefaultCard"/>
17+
</arguments>
18+
<!--Fill the required details for Credit card-->
19+
<waitForElementVisible selector="{{CheckoutPaymentSection.creditCardField}}" stepKey="waitForCreditCardField"/>
20+
<scrollTo selector="{{CheckoutPaymentSection.creditCardField}}" stepKey="scrollToPayment" />
21+
<click selector="{{CheckoutPaymentSection.creditCardField}}" stepKey="clickCreditCardField"/>
22+
<fillField selector ="{{CheckoutPaymentSection.creditCardField}}" userInput="{{creditCardDetails.cardNumber}}" stepKey="inputCreditcardNumber"/>
23+
<fillField selector ="{{CheckoutPaymentSection.expirationMonth}}" userInput="{{creditCardDetails.month}}" stepKey="inputExpirationMonth"/>
24+
<fillField selector ="{{CheckoutPaymentSection.expirationYear}}" userInput="{{creditCardDetails.year}}" stepKey="inputExpirationYear"/>
25+
<fillField selector ="{{CheckoutPaymentSection.cvv}}" userInput="{{creditCardDetails.cvv}}" stepKey="inputCvv"/>
26+
<waitForElementClickable selector="{{CheckoutPaymentSection.payNowBtn}}" stepKey="waitToClickPayNowBtn"/>
27+
<click selector="{{CheckoutPaymentSection.payNowBtn}}" stepKey="clickPayNowBtn"/>
28+
</actionGroup>
29+
</actionGroups>
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2025 Adobe
5+
* All Rights Reserved.
6+
*/
7+
-->
8+
9+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
11+
<actionGroup name="StorefrontSwitchToPayPalPayflowActionGroup">
12+
<annotations>
13+
<description>Switch to Paypal Payflow IFrame</description>
14+
</annotations>
15+
<arguments>
16+
<argument name="elementNumber" type="string" defaultValue="0"/>
17+
</arguments>
18+
<!--set ID for iframe of PayPal group button-->
19+
<executeJS function="document.getElementsByClassName('paypal iframe')[{{elementNumber}}].setAttribute('name', 'paypalFrame');" stepKey="setIDForIframe"/>
20+
<!--switch to iframe of PayPal group button-->
21+
<switchToIFrame userInput="paypalFrame" stepKey="switchToIframe"/>
22+
</actionGroup>
23+
</actionGroups>

app/code/Magento/Paypal/Test/Mftf/Data/AdminMenuData.xml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<!--
33
/**
4-
* Copyright © Magento, Inc. All rights reserved.
5-
* See COPYING.txt for license details.
4+
* Copyright 2019 Adobe
5+
* All Rights Reserved.
66
*/
77
-->
88

@@ -18,4 +18,9 @@
1818
<data key="title">Billing Agreements</data>
1919
<data key="dataUiId">magento-paypal-paypal-billing-agreement</data>
2020
</entity>
21+
<entity name="AdminMenuPaypalTransaction">
22+
<data key="orderData">Canceled order</data>
23+
<data key="status">Is Closed</data>
24+
<data key="dataUiId">Last Transaction ID</data>
25+
</entity>
2126
</entities>
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright 2025 Adobe
5+
* All Rights Reserved.
6+
*/
7+
-->
8+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
10+
<test name="AdminCancelSalesOrderPlacedWithPaypalPayflowLinkTest">
11+
<annotations>
12+
<features value="Payflow"/>
13+
<stories value="Payment Payflow Link methods"/>
14+
<title value="Cancel a Sales Order placed with PayPal Payflow Link"/>
15+
<description value="Admin can cancel orders placed by customers using PayPal Payflow"/>
16+
<severity value="MAJOR"/>
17+
<testCaseId value="AC-5429"/>
18+
<group value="3rd_party_integration"/>
19+
<group value="pr_exclude"/>
20+
</annotations>
21+
<before>
22+
<!-- Simple product is created -->
23+
<createData entity="simpleProductWithoutCategory" stepKey="createProduct">
24+
<field key="price">10.00</field>
25+
</createData>
26+
<!-- US Customer is created -->
27+
<createData entity="Simple_US_Customer" stepKey="createCustomer"/>
28+
<actionGroup ref="AdminLoginActionGroup" stepKey="login"/>
29+
<actionGroup ref="AdminEnablePayPalPayFlowLinkActionGroup" stepKey="ConfigPayPalPayFlowLink">
30+
<argument name="credentials" value="SamplePaypalPaymentsFlowLinkConfig"/>
31+
</actionGroup>
32+
<!-- Precondition Step1: Order is placed within PayPal Payflow Link -->
33+
<actionGroup ref="LoginToStorefrontActionGroup" stepKey="loginToStorefrontAccount">
34+
<argument name="Customer" value="$$createCustomer$$"/>
35+
</actionGroup>
36+
<!-- Add product to cart -->
37+
<actionGroup ref="AddSimpleProductToCartActionGroup" stepKey="addProductToCart">
38+
<argument name="product" value="$$createProduct$$"/>
39+
</actionGroup>
40+
<actionGroup ref="StorefrontOpenCheckoutPageActionGroup" stepKey="goToCheckout"/>
41+
<actionGroup ref="CheckoutSelectFlatRateShippingMethodActionGroup" stepKey="selectFlatRateShippingMethod"/>
42+
<actionGroup ref="StorefrontCheckoutClickNextButtonActionGroup" stepKey="clickNext"/>
43+
<!-- Click on PayPal payment radio button -->
44+
<waitForElementClickable selector="{{CheckoutPaymentSection.PayPalPayflowLinkRadio}}" stepKey="waitForPayPalRadioButton"/>
45+
<click selector="{{CheckoutPaymentSection.PayPalPayflowLinkRadio}}" stepKey="selectPaypalPayment"/>
46+
<checkOption selector="{{CheckoutPaymentSection.selectCheckboxforBilling}}" stepKey="selectCheckboxForBilling"/>
47+
<waitForElementClickable selector="{{CheckoutPaymentSection.cntinuebtn}}" stepKey="waitToClickContinueButton"/>
48+
<click selector="{{CheckoutPaymentSection.cntinuebtn}}" stepKey="submitContinueButton"/>
49+
<actionGroup ref="StorefrontSwitchToPayPalPayflowActionGroup" stepKey="switchToPaypalPayflowIframe"/>
50+
<actionGroup ref="StorefrontFillCreditCardDetailsActionGroup" stepKey="inputCreditCardNumberFillCreditCardDetails"/>
51+
<waitForPageLoad stepKey="waitForOrderData"/>
52+
</before>
53+
<after>
54+
<deleteData createDataKey="createProduct" stepKey="deleteProduct"/>
55+
<deleteData createDataKey="createCustomer" stepKey="deleteCustomer"/>
56+
<createData entity="RollbackPaypalPayflowPro" stepKey="rollbackPaypalPayflowProConfig"/>
57+
<!-- Logout from storefront -->
58+
<actionGroup ref="StorefrontCustomerLogoutActionGroup" stepKey="logoutCustomer"/>
59+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logout"/>
60+
</after>
61+
<!-- Step1,2&3: Log in to Admin, Go to Sales > Orders & Open the Order from preconditions -->
62+
<actionGroup ref="StorefrontClickOrderLinkFromCheckoutSuccessPageActionGroup" stepKey="clickOrderLink"/>
63+
<grabFromCurrentUrl regex="~/order_id/(\d+)/~" stepKey="orderId"/>
64+
<actionGroup ref="AdminOpenOrderByEntityIdActionGroup" stepKey="openOrderById">
65+
<argument name="entityId" value="$orderId"/>
66+
</actionGroup>
67+
<waitForPageLoad stepKey="waitPage"/>
68+
<!-- Step 4&5: Click on Cancel button then OK Button-->
69+
<actionGroup ref="CancelPendingOrderActionGroup" stepKey="cancelOrder"/>
70+
<!-- Step6: Observe the Data -->
71+
<actionGroup ref="AdminOrderViewCheckStatusActionGroup" stepKey="seeAdminOrderStatus">
72+
<argument name="status" value="Canceled"/>
73+
</actionGroup>
74+
<waitForElementVisible selector="{{AdminOrderDetailsInformationSection.paymentInformationField(AdminMenuPaypalTransaction.dataUiId)}}" stepKey="waitForTransactionIDFieldToBeAppeared"/>
75+
<grabTextFrom selector="{{AdminOrderDetailsInformationSection.paymentInformationField(AdminMenuPaypalTransaction.dataUiId)}}" stepKey="grabTransactionID"/>
76+
<actionGroup ref="AdminOpenOrderCommentsHistoryActionGroup" stepKey="clickOnCommentsHistory"/>
77+
<waitForText selector="{{AdminOrderCommentsTabSection.orderCommentsWithType(AdminMenuPaypalTransaction.orderData)}}" userInput="Canceled order online Amount: $15.00. Transaction ID: &quot;{$grabTransactionID}&quot;" stepKey="seeOrderHistoryNotesAfterCancelingOrder"/>
78+
<actionGroup ref="AdminOpenTransactionsTabActionGroup" stepKey="openTransactionTypeHasAuthorization">
79+
<argument name="transactionType" value="authorization"/>
80+
</actionGroup>
81+
<waitForText selector="{{AdminTransactionsGridSection.transactionData(AdminMenuPaypalTransaction.status)}}" userInput="{{ImageUpload.shareable}}" stepKey="seeIfClosedHeaderIsSetAsYesForAuthorization"/>
82+
<waitForElementClickable selector="{{AdminProductFormActionSection.backButton}}" stepKey="waitForBackButtonToBeClicked"/>
83+
<click selector="{{AdminProductFormActionSection.backButton}}" stepKey="clickBackButton"/>
84+
<actionGroup ref="AdminOpenTransactionsTabActionGroup" stepKey="openTransactionTypeHasVoid">
85+
<argument name="transactionType" value="void"/>
86+
</actionGroup>
87+
<waitForText selector="{{AdminTransactionsGridSection.transactionData(AdminMenuPaypalTransaction.status)}}" userInput="{{ImageUpload.shareable}}" stepKey="seeIfClosedHeaderIsSetAsYesForVoid"/>
88+
</test>
89+
</tests>

0 commit comments

Comments
 (0)