Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
LockAdminUserWhenCreatingNewRoleTest.php
Go to the documentation of this file.
1 <?php
8 
10 use Magento\User\Test\Page\Adminhtml\UserRoleEditRole;
11 use Magento\User\Test\Page\Adminhtml\UserRoleIndex;
12 use Magento\Mtf\TestCase\Injectable;
15 
33 class LockAdminUserWhenCreatingNewRoleTest extends Injectable
34 {
35  /* tags */
36  const MVP = 'yes';
37  const SEVERITY = 'S2';
38  /* end tags */
39 
45  protected $userRoleIndex;
46 
52  protected $userRoleEditRole;
53 
59  protected $configData;
60 
64  protected $adminAuthLogin;
65 
73  public function __inject(
74  UserRoleIndex $userRoleIndex,
75  UserRoleEditRole $userRoleEditRole,
77  ) {
78  $this->userRoleIndex = $userRoleIndex;
79  $this->userRoleEditRole = $userRoleEditRole;
80  $this->adminAuthLogin = $adminAuthLogin;
81  }
82 
92  public function testLockAdminUser(
93  Role $role,
94  $attempts,
95  User $customAdmin,
96  $configData = null
97  ) {
98  $this->configData = $configData;
99 
100  // Preconditions
101  $this->objectManager->create(
102  \Magento\Config\Test\TestStep\SetupConfigurationStep::class,
103  ['configData' => $this->configData]
104  )->run();
105  $customAdmin->persist();
106 
107  // Steps
108  $this->adminAuthLogin->open();
109  $this->adminAuthLogin->getLoginBlock()->fill($customAdmin);
110  $this->adminAuthLogin->getLoginBlock()->submit();
111 
112  $this->userRoleIndex->open();
113  $this->userRoleIndex->getRoleActions()->addNew();
114  for ($i = 0; $i < $attempts; $i++) {
115  $this->userRoleEditRole->getRoleFormTabs()->fill($role);
116  $this->userRoleEditRole->getPageActions()->save();
117  }
118 
119  // Reload
120  $this->adminAuthLogin->open();
121  $this->adminAuthLogin->getLoginBlock()->fill($customAdmin);
122  $this->adminAuthLogin->getLoginBlock()->submit();
123  }
124 
130  public function tearDown()
131  {
132  $this->objectManager->create(
133  \Magento\Config\Test\TestStep\SetupConfigurationStep::class,
134  ['configData' => $this->configData, 'rollback' => true]
135  )->run();
136  }
137 }
testLockAdminUser(Role $role, $attempts, User $customAdmin, $configData=null)
__inject(UserRoleIndex $userRoleIndex, UserRoleEditRole $userRoleEditRole, AdminAuthLogin $adminAuthLogin)
$i
Definition: gallery.phtml:31