コード例 #1
0
 /**
  * Asserts that user is present in User Grid.
  *
  * @param UserIndex $userIndex
  * @param User $user
  * @param User $customAdmin
  * @return void
  */
 public function processAssert(UserIndex $userIndex, User $user, User $customAdmin = null)
 {
     $adminUser = $user->hasData('password') || $user->hasData('username') ? $user : $customAdmin;
     $filter = ['username' => $adminUser->getUsername()];
     $userIndex->open();
     \PHPUnit_Framework_Assert::assertTrue($userIndex->getUserGrid()->isRowVisible($filter), 'User with name \'' . $adminUser->getUsername() . '\' is absent in User grid.');
 }
コード例 #2
0
 /**
  * Not allowed resources are not available on menu level.
  * In case if type it via URL - "Access Denied" page appeared.
  *
  * @param User $user
  * @param AdminAuthLogin $adminAuthLogin
  * @param Dashboard $dashboard
  * @param Browser $browser
  * @return void
  */
 public function processAssert(User $user, AdminAuthLogin $adminAuthLogin, Dashboard $dashboard, Browser $browser)
 {
     $adminPanelHeader = $dashboard->getAdminPanelHeader();
     if ($adminPanelHeader->isVisible()) {
         $adminPanelHeader->logOut();
     }
     $adminAuthLogin->getLoginBlock()->loginToAdminPanel($user->getData());
     $menuItems = $adminPanelHeader->getMenuFirstLevelItems();
     \PHPUnit_Framework_Assert::assertTrue(count($menuItems) == 1 && in_array('Sales', $menuItems), 'Sales menu item is not visible or count of menu items is greater than 1.');
     $browser->open($_ENV['app_backend_url'] . $this->manageProductsUrl);
     \PHPUnit_Framework_Assert::assertTrue(strpos($dashboard->getMainBlock()->getMainBlockText(), self::ACCESS_DENIED) !== false, self::ACCESS_DENIED . " text is not visible on dashboard page.");
 }
コード例 #3
0
 /**
  * Assert that user have custom role.
  *
  * @param User $user
  * @param AdminAuthLogin $adminAuth
  * @param Dashboard $dashboard
  * @param CatalogCategoryIndex $categoryIndex
  * @param User $customAdmin [optional]
  * @return void
  */
 public function processAssert(User $user, AdminAuthLogin $adminAuth, Dashboard $dashboard, CatalogCategoryIndex $categoryIndex, User $customAdmin = null)
 {
     $adminUser = $customAdmin === null ? $user : $customAdmin;
     $adminPanelHeader = $dashboard->getAdminPanelHeader();
     if ($adminPanelHeader->isVisible()) {
         $adminPanelHeader->logOut();
     }
     $adminAuth->getLoginBlock()->loginToAdminPanel($adminUser->getData());
     $role = $user->getDataFieldConfig('role_id')['source']->getRole();
     $menuItems = $this->getMenuItems($role);
     foreach ($menuItems as $item) {
         \PHPUnit_Framework_Assert::assertTrue($adminPanelHeader->checkMenu(ucfirst($item)), "Menu {$item} is absent on top menu.");
     }
     // Check access denied message on category page.
     $categoryIndex->open();
     \PHPUnit_Framework_Assert::assertTrue($categoryIndex->getContentBlock()->checkAccessDeniedMessage());
 }
 /**
  * Run prevent locked admin user log in to backend entity test.
  *
  * @param User $adminUser
  * @param int $countRetries
  * @return void
  */
 public function test(User $adminUser, $countRetries)
 {
     $this->adminAuthLogin->open();
     // Steps:
     $userName = $adminUser->getUsername();
     for ($i = 1; $i <= $countRetries; $i++) {
         $this->login(['username' => $userName, 'password' => '123123qq']);
     }
     $this->login(['username' => $userName, 'password' => $adminUser->getPassword()]);
 }
 /**
  * Prepare user for test.
  *
  * @param User $user
  * @param Role $role
  * @return User
  */
 protected function prepareUser(User $user, Role $role)
 {
     $userData = $user->getData();
     $userData['role_id'] = ['role' => $role];
     unset($userData['user_id']);
     unset($userData['password_confirmation']);
     return $this->fixtureFactory->createByCode('user', ['data' => $userData]);
 }
コード例 #6
0
 /**
  * Asserts that error message equals to expected message.
  *
  * @param UserEdit $userEdit
  * @param User $user
  * @return void
  */
 public function processAssert(UserEdit $userEdit, User $user)
 {
     $expectedMessage = sprintf(self::ERROR_MESSAGE, $user->getEmail());
     $actualMessage = $userEdit->getMessagesBlock()->getErrorMessages();
     \PHPUnit_Framework_Assert::assertEquals($expectedMessage, $actualMessage, 'Wrong error message is displayed.');
 }
 /**
  * Verify incorrect credentials message while login to admin.
  *
  * @param AdminAuthLogin $adminAuth
  * @param User $customAdmin
  * @return void
  */
 public function processAssert(AdminAuthLogin $adminAuth, User $customAdmin)
 {
     $adminAuth->open();
     $adminAuth->getLoginBlock()->loginToAdminPanel($customAdmin->getData());
     \PHPUnit_Framework_Assert::assertEquals(self::INVALID_CREDENTIALS_MESSAGE, $adminAuth->getMessagesBlock()->getErrorMessages(), 'Message "' . self::INVALID_CREDENTIALS_MESSAGE . '" is not visible.');
 }
コード例 #8
0
 /**
  * Prepare user fixture.
  *
  * @param User $user
  * @param array $data
  * @return FixtureInterface
  */
 protected function prepareUserFixture(User $user, array $data)
 {
     $data['role_id'] = ['role' => $user->getDataFieldConfig('role_id')['source']->getRole()];
     return $this->fixtureFactory->createByCode('user', ['data' => $data]);
 }