public function PanelizerIpeTest::testAdministerEntityRevertPermission in Panelizer 8.5
Same name and namespace in other branches
- 8.4 tests/src/Functional/PanelizerIpeTest.php \Drupal\Tests\panelizer\Functional\PanelizerIpeTest::testAdministerEntityRevertPermission()
@todo Confirm the 'administer panelizer $entity_type_id $bundle revert' permission works.
File
- tests/
src/ Functional/ PanelizerIpeTest.php, line 287
Class
- PanelizerIpeTest
- Confirm that the IPE functionality works.
Namespace
Drupal\Tests\panelizer\FunctionalCode
public function testAdministerEntityRevertPermission() {
// Need the node for the tests below, so create it now.
$node = $this
->createTestNode();
// Test with just the 'revert' permission
$perms = [
'administer panelizer node page revert',
];
$drupalSettings = $this
->setupPermissionTests($perms, $node);
$this
->assertNotNull($drupalSettings);
if (!empty($drupalSettings)) {
$this
->assertArrayNotHasKey('panels_ipe', $drupalSettings);
$this
->assertArrayNotHasKey('panelizer', $drupalSettings);
}
// Make sure the user is logged out before doing another pass.
$this
->drupalLogout();
// Test with the 'revert' and the 'content' permission.
$perms = [
// The permission to be tested.
'administer panelizer node page revert',
// This permission has to be enabled for the 'revert' permission to work.
'administer panelizer node page content',
];
$drupalSettings = $this
->setupPermissionTests($perms, $node);
$this
->assertNotNull($drupalSettings);
if (!empty($drupalSettings)) {
$this
->assertArrayHasKey('panels_ipe', $drupalSettings);
$this
->assertArrayHasKey('regions', $drupalSettings['panels_ipe']);
$this
->assertArrayHasKey('layout', $drupalSettings['panels_ipe']);
$this
->assertArrayHasKey('user_permission', $drupalSettings['panels_ipe']);
$this
->assertArrayHasKey('panels_display', $drupalSettings['panels_ipe']);
$this
->assertArrayHasKey('unsaved', $drupalSettings['panels_ipe']);
$this
->assertArrayHasKey('panelizer', $drupalSettings);
$this
->assertArrayHasKey('entity', $drupalSettings['panelizer']);
$this
->assertArrayHasKey('entity_type_id', $drupalSettings['panelizer']['entity']);
$this
->assertEqual($drupalSettings['panelizer']['entity']['entity_type_id'], 'node');
$this
->assertArrayHasKey('entity_id', $drupalSettings['panelizer']['entity']);
$this
->assertEqual($drupalSettings['panelizer']['entity']['entity_id'], $node
->id());
$this
->assertArrayHasKey('user_permission', $drupalSettings['panelizer']);
$this
->assertArrayHasKey('revert', $drupalSettings['panelizer']['user_permission']);
$this
->assertArrayHasKey('save_default', $drupalSettings['panelizer']['user_permission']);
$this
->assertTrue($drupalSettings['panelizer']['user_permission']['revert']);
$this
->assertFalse($drupalSettings['panelizer']['user_permission']['save_default']);
}
}