Skip to content

Commit be25d54

Browse files
magento2-login-as-customer/issues/40: "Change Admin user's access to 'Login as Customer' button" test added.
1 parent 3c3f7de commit be25d54

File tree

1 file changed

+98
-0
lines changed

1 file changed

+98
-0
lines changed
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
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+
<tests xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10+
xsi:noNamespaceSchemaLocation="urn:magento:mftf:Test/etc/testSchema.xsd">
11+
<test name="AdminChangUserAccessToLoginAsCustomerButtonTest">
12+
<annotations>
13+
<features value="Login As Customer"/>
14+
<stories value="Permissions and ACl"/>
15+
<title value="Change admin user's access to 'Login as Customer Button'"/>
16+
<description
17+
value="Verify admin user's access to 'Login as Customer Button' can be changed"/>
18+
<severity value="CRITICAL"/>
19+
<group value="login_as_customer"/>
20+
</annotations>
21+
<before>
22+
<magentoCLI command="config:set {{LoginAsCustomerConfigDataEnabled.path}} 1"
23+
stepKey="enableLoginAsCustomer"/>
24+
<magentoCLI command="cache:flush config" stepKey="flushCacheBeforeTestRun"/>
25+
<createData entity="Simple_US_Customer" stepKey="createCustomer"/>
26+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsDefaultAdminUserBefore"/>
27+
28+
<!--Create New Role-->
29+
<actionGroup ref="AdminOpenCreateRolePageActionGroup" stepKey="goToNewRolePage"/>
30+
<actionGroup ref="AdminFillUserRoleFormActionGroup" stepKey="fillNewRoleForm">
31+
<argument name="role" value="customRoleAllResources"/>
32+
</actionGroup>
33+
<actionGroup ref="AdminClickSaveButtonOnUserRoleFormActionGroup" stepKey="saveNewRole"/>
34+
35+
<!--Create New User-->
36+
<actionGroup ref="AdminCreateUserWithApiRoleActionGroup" stepKey="adminCreateUser">
37+
<argument name="user" value="NewAdminUser"/>
38+
<argument name="role" value="customRoleAllResources"/>
39+
</actionGroup>
40+
</before>
41+
<after>
42+
<deleteData createDataKey="createCustomer" stepKey="deleteCustomer"/>
43+
44+
<!--Delete new User-->
45+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logoutNewUserAfter"/>
46+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsDefaultAdminUserAfter"/>
47+
<actionGroup ref="AdminDeleteCustomUserActionGroup" stepKey="deleteNewUser">
48+
<argument name="user" value="NewAdminUser"/>
49+
</actionGroup>
50+
51+
<!--Delete new Role-->
52+
<actionGroup ref="AdminDeleteUserRoleActionGroup" stepKey="deleteCustomRoleAllResources">
53+
<argument name="roleName" value="{{customRoleAllResources.rolename}}"/>
54+
</actionGroup>
55+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logOut"/>
56+
57+
<magentoCLI command="config:set {{LoginAsCustomerConfigDataEnabled.path}} 0"
58+
stepKey="disableLoginAsCustomer"/>
59+
<magentoCLI command="cache:flush config" stepKey="flushCacheAfterTestRun"/>
60+
</after>
61+
62+
<!-- Login as new User -->
63+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logOutFromAdminPanel"/>
64+
<actionGroup ref="AdminLoginActionGroup" stepKey="loginAsNewUser">
65+
<argument name="username" value="{{NewAdminUser.username}}"/>
66+
<argument name="password" value="{{NewAdminUser.password}}"/>
67+
</actionGroup>
68+
69+
<!-- Verify new User has access to 'Login as Customer Button' -->
70+
<actionGroup ref="AdminLoginAsCustomerLoginFromCustomerPageActionGroup"
71+
stepKey="verifyLoginAsCustomerWorksOnCustomerPage">
72+
<argument name="customerId" value="$$createCustomer.id$$"/>
73+
</actionGroup>
74+
<actionGroup ref="StorefrontSignOutAndCloseTabActionGroup" stepKey="customerSignOutAndCloseTab"/>
75+
76+
<!-- Revoke 'Login as Customer Button' access for new User -->
77+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logoutNewUser"/>
78+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsDefaultAdminUser"/>
79+
80+
<actionGroup ref="AdminEditUserRoleActionGroup" stepKey="openEditUserRole">
81+
<argument name="roleName" value="{{customRoleAllResources.rolename}}"/>
82+
</actionGroup>
83+
<actionGroup ref="AdminRevokeRoleResourceActionGroup" stepKey="revokeLoginAsCustomerAccess">
84+
<argument name="resourceName" value="Login As Customer Button"/>
85+
</actionGroup>
86+
<actionGroup ref="AdminClickSaveButtonOnUserRoleFormActionGroup" stepKey="saveEditedRole"/>
87+
88+
<actionGroup ref="AdminLogoutActionGroup" stepKey="logoutDefaultAdminUserAfterRevoke"/>
89+
<actionGroup ref="LoginAsAdmin" stepKey="loginAsNewUserAfterRevoke">
90+
<argument name="adminUser" value="NewAdminUser"/>
91+
</actionGroup>
92+
93+
<!-- Verify new User no longer has access to 'Login as Customer Button' -->
94+
<actionGroup ref="AdminLoginAsCustomerAbsentOnCustomerPageActionGroup" stepKey="verifyLoginAsCustomerAbsentOnCustomerPage">
95+
<argument name="customerId" value="$createCustomer.id$"/>
96+
</actionGroup>
97+
</test>
98+
</tests>

0 commit comments

Comments
 (0)