/var/www/vhosts/ihelp.ro/httpdocs/vendor/cakedc/auth/tests/TestCase/Policy
Edit: /var/www/vhosts/ihelp.ro/httpdocs/vendor/cakedc/auth/tests/TestCase/Policy/CollectionPolicyTest.php (2750B)
getMockBuilder(RbacPolicy::class)
->setMethods(['canAccess'])
->getMock();
$Mock->expects($this->once())
->method('canAccess')
->will($this->returnValue($success));
return $Mock;
};
$rbacPolicyNever = function () {
$Mock = $this->getMockBuilder(RbacPolicy::class)
->setMethods(['canAccess'])
->getMock();
$Mock->expects($this->never())
->method('canAccess');
return $Mock;
};
return [
[true, $rbacPolicyNever(), true],
[false, $rbacPolicy(false), false],
[false, $rbacPolicy(true), true],
];
}
/**
* Test canAccess method
*
* @param bool $isSuperuser Is this a super user
* @param RbacPolicy $rbacPolicy Rbac policy instance
* @param bool $expected The expected result;
* @dataProvider dataProviderCanAccess
* @return void
*/
public function testCanAccess($isSuperuser, RbacPolicy $rbacPolicy, $expected)
{
$user = new Entity([
'id' => '00000000-0000-0000-0000-000000000001',
'is_superuser' => $isSuperuser,
]);
$service = $this->createMock(AuthorizationServiceInterface::class);
$identity = new IdentityDecorator($service, $user);
$request = ServerRequestFactory::fromGlobals();
$policy = new CollectionPolicy([
SuperuserPolicy::class,
$rbacPolicy,
]);
$actual = $policy->canAccess($identity, $request);
$this->assertSame($expected, $actual);
}
}