Skip to content

Commit e528f41

Browse files
committed
CE-33194: Added MFTF tests
1 parent 7623e8a commit e528f41

File tree

5 files changed

+81
-3
lines changed

5 files changed

+81
-3
lines changed

app/code/Magento/Swagger/Test/Mftf/ActionGroup/StorefrontApplyAdminTokenOnSwaggerPageActionGroup.xml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,13 @@
1515
<argument name="token" type="string" defaultValue=""/>
1616
</arguments>
1717

18-
<clearField selector="{{SwaggerHeaderSection.apiKeyInput}}" stepKey="clearApiTokenField"/>
19-
<fillField selector="{{SwaggerHeaderSection.apiKeyInput}}" userInput="{{token}}" stepKey="fillApiTokenInput"/>
20-
<click selector="{{SwaggerHeaderSection.applyButton}}" stepKey="clickApplyButton" />
18+
<click selector="{{SwaggerAuthorizeSection.authorizeButtonUnlocked}}" stepKey="clickAuthorizeButton"/>
19+
<waitForElementVisible selector="{{SwaggerAuthorizeSection.apiKeyInput}}" stepKey="waitModalPopUp"/>
20+
<clearField selector="{{SwaggerAuthorizeSection.apiKeyInput}}" stepKey="clearApiTokenField"/>
21+
<fillField selector="{{SwaggerAuthorizeSection.apiKeyInput}}" userInput="{{token}}" stepKey="fillApiTokenInput"/>
22+
<comment userInput="Comment is added to preserve the step key for backward compatibility" stepKey="clickApplyButton"/>
23+
<click selector="{{SwaggerAuthorizeSection.authorizeModalButton}}" stepKey="clickModalAuthorizeButton"/>
24+
<waitForPageLoad stepKey="waitForPageReloaded"/>
25+
<click selector="{{SwaggerAuthorizeSection.closeModalButton}}" stepKey="clickModalCloseButton"/>
2126
</actionGroup>
2227
</actionGroups>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright © Magento, Inc. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
9+
<actionGroups xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/actionGroupSchema.xsd">
10+
<actionGroup name="StorefrontSwaggerLogoutActionGroup">
11+
<annotations>
12+
<description>Logout Admin Token on Swagger Page</description>
13+
</annotations>
14+
15+
<click selector="{{SwaggerAuthorizeSection.authorizeButtonLocked}}" stepKey="clickAuthorizeButton"/>
16+
<click selector="{{SwaggerAuthorizeSection.logoutModalButton}}" stepKey="clickModalLogoutButton"/>
17+
<waitForPageLoad stepKey="waitForPageReloaded"/>
18+
<click selector="{{SwaggerAuthorizeSection.closeModalButton}}" stepKey="clickModalCloseButton" />
19+
<seeElementInDOM selector="{{SwaggerAuthorizeSection.authorizeButtonUnlocked}}" stepKey="assertIsLoggedOut"/>
20+
</actionGroup>
21+
</actionGroups>

app/code/Magento/Swagger/Test/Mftf/Page/SwaggerPage.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
<pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/PageObject.xsd">
1010
<page name="StorefrontSwaggerPage" url="/swagger" area="storefront" module="Swagger">
11+
<section name="SwaggerAuthorizeSection"/>
1112
<section name="SwaggerHeaderSection"/>
1213
<section name="SwaggerApiListSection"/>
1314
</page>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
/**
4+
* Copyright © Magento, Inc. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
9+
<sections xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:mftf:Page/etc/SectionObject.xsd">
10+
<section name="SwaggerAuthorizeSection">
11+
<element name="authorizeButtonUnlocked" type="button" selector=".btn.authorize.unlocked"/>
12+
<element name="authorizeButtonLocked" type="button" selector=".btn.authorize.locked"/>
13+
<element name="authorizeModalButton" type="button" selector=".btn.auth.authorize"/>
14+
<element name="logoutModalButton" type="button" selector=".btn.modal-btn.auth"/>
15+
<element name="closeModalButton" type="button" selector=".btn.modal-btn.auth.btn-done"/>
16+
<element name="apiKeyInput" type="input" selector=".auth-container .wrapper input"/>
17+
</section>
18+
</sections>
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
<!--
2+
/**
3+
* Copyright © Magento, Inc. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
-->
7+
8+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
9+
<test name="StorefrontMagentoApiSwaggerActionsExistTest">
10+
<annotations>
11+
<features value="Swagger"/>
12+
<stories value="Swagger via the Storefront"/>
13+
<title value="Authorize and logout on Swagger page"/>
14+
<description value="Authorize and logout on Swagger page use API Key"/>
15+
<severity value="CRITICAL"/>
16+
</annotations>
17+
<before>
18+
<getOTP stepKey="getOtpCode"/>
19+
<createData entity="adminApiToken" stepKey="createAdminToken">
20+
<field key="otp">{$getOtpCode}</field>
21+
</createData>
22+
</before>
23+
<after></after>
24+
<actionGroup ref="StorefrontGoToSwaggerPageActionGroup" stepKey="goToSwaggerPage"/>
25+
<actionGroup ref="StorefrontApplyAdminTokenOnSwaggerPageActionGroup" stepKey="applyAdminToken">
26+
<argument name="token" value="$createAdminToken.return$"/>
27+
</actionGroup>
28+
<seeElement selector="{{SwaggerApiListSection.swaggerActionTitle('storeStoreRepositoryV1')}}" stepKey="assertTitleOfFirstAction"/>
29+
<seeElement selector="{{SwaggerApiListSection.swaggerActionTitle('quoteCartRepositoryV1')}}" stepKey="assertTitleOfSecondAction"/>
30+
<seeElement selector="{{SwaggerApiListSection.swaggerActionTitle('catalogProductRepositoryV1')}}" stepKey="assertTitleOfThirdAction"/>
31+
<actionGroup ref="StorefrontSwaggerLogoutActionGroup" stepKey="swaggerLogout"/>
32+
</test>
33+
</tests>

0 commit comments

Comments
 (0)