Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
AssertUserRoleRestrictedAccess.php
Go to the documentation of this file.
1 <?php
8 
9 use Magento\Backend\Test\Page\Adminhtml\Dashboard;
10 use Magento\Mtf\Client\BrowserInterface;
11 use Magento\Mtf\Constraint\AbstractConstraint;
13 
17 class AssertUserRoleRestrictedAccess extends AbstractConstraint
18 {
19  const DENIED_ACCESS = 'Sorry, you need permissions to view this content.';
20 
31  public function processAssert(
32  BrowserInterface $browser,
33  Dashboard $dashboard,
34  User $user,
35  array $restrictedAccess,
36  $denyUrl
37  ) {
38  $this->objectManager->create(
39  \Magento\User\Test\TestStep\LoginUserOnBackendStep::class,
40  ['user' => $user]
41  )->run();
42 
43  $menuItems = $dashboard->getMenuBlock()->getTopMenuItems();
44  \PHPUnit\Framework\Assert::assertEquals($menuItems, $restrictedAccess, 'Wrong display menu.');
45 
46  $browser->open($_ENV['app_backend_url'] . $denyUrl);
47  $deniedMessage = $dashboard->getAccessDeniedBlock()->getTextFromAccessDeniedBlock();
48  \PHPUnit\Framework\Assert::assertEquals(self::DENIED_ACCESS, $deniedMessage, 'Possible access to denied page.');
49  }
50 
56  public function toString()
57  {
58  return 'Sales item is present in Menu block.';
59  }
60 }
$user
Definition: dummy_user.php:13
processAssert(BrowserInterface $browser, Dashboard $dashboard, User $user, array $restrictedAccess, $denyUrl)