class CalculatedPermissionsItemTest
Same name and namespace in other branches
- 11.x core/tests/Drupal/Tests/Core/Session/CalculatedPermissionsItemTest.php \Drupal\Tests\Core\Session\CalculatedPermissionsItemTest
Tests the CalculatedPermissionsItem value object.
@coversDefaultClass \Drupal\Core\Session\CalculatedPermissionsItem
@group Session
Hierarchy
- class \Drupal\Tests\Core\Session\CalculatedPermissionsItemTest
Expanded class hierarchy of CalculatedPermissionsItemTest
File
-
core/
tests/ Drupal/ Tests/ Core/ Session/ CalculatedPermissionsItemTest.php, line 16
Namespace
Drupal\Tests\Core\SessionView source
class CalculatedPermissionsItemTest extends UnitTestCase {
/**
* Tests that the object values were set in the constructor.
*
* @covers ::__construct
* @covers ::getIdentifier
* @covers ::getScope
* @covers ::getPermissions
* @covers ::isAdmin
*/
public function testConstructor() : void {
$scope = 'some_scope';
$item = new CalculatedPermissionsItem([
'bar',
'baz',
'bar',
], FALSE, $scope, 'foo');
$this->assertEquals($scope, $item->getScope(), 'Scope name was set correctly.');
$this->assertEquals('foo', $item->getIdentifier(), 'Scope identifier was set correctly.');
$this->assertEquals([
'bar',
'baz',
], $item->getPermissions(), 'Permissions were made unique and set correctly.');
$this->assertFalse($item->isAdmin(), 'Admin flag was set correctly');
$item = new CalculatedPermissionsItem([
'bar',
'baz',
'bar',
], TRUE, $scope, 'foo');
$this->assertEquals([], $item->getPermissions(), 'Permissions were emptied out for an admin item.');
$this->assertTrue($item->isAdmin(), 'Admin flag was set correctly');
}
/**
* Tests the permission check when the admin flag is not set.
*
* @covers ::hasPermission
* @depends testConstructor
*/
public function testHasPermission() : void {
$item = new CalculatedPermissionsItem([
'bar',
], FALSE, 'some_scope', 'foo');
$this->assertFalse($item->hasPermission('baz'), 'Missing permission was not found.');
$this->assertTrue($item->hasPermission('bar'), 'Existing permission was found.');
}
/**
* Tests the permission check when the admin flag is set.
*
* @covers ::hasPermission
* @depends testConstructor
*/
public function testHasPermissionWithAdminFlag() : void {
$item = new CalculatedPermissionsItem([
'bar',
], TRUE, 'some_scope', 'foo');
$this->assertTrue($item->hasPermission('baz'), 'Missing permission was found.');
$this->assertTrue($item->hasPermission('bar'), 'Existing permission was found.');
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
CalculatedPermissionsItemTest::testConstructor | public | function | Tests that the object values were set in the constructor. |
CalculatedPermissionsItemTest::testHasPermission | public | function | Tests the permission check when the admin flag is not set. |
CalculatedPermissionsItemTest::testHasPermissionWithAdminFlag | public | function | Tests the permission check when the admin flag is set. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.