refactor(arch): enforce gateway compliance and remove service-wrapping gateways
This commit is contained in:
@@ -2,22 +2,22 @@
|
||||
|
||||
namespace MintyPHP\Tests\Service\Access;
|
||||
|
||||
use MintyPHP\Service\Access\PermissionGateway;
|
||||
use MintyPHP\Service\Access\PermissionService;
|
||||
|
||||
trait AuthorizationPolicyTestSupport
|
||||
{
|
||||
/**
|
||||
* @param array<int, array<int, string>> $permissionsByUser
|
||||
*/
|
||||
private function permissionGatewayAllowing(array $permissionsByUser): PermissionGateway
|
||||
private function permissionGatewayAllowing(array $permissionsByUser): PermissionService
|
||||
{
|
||||
$permissionGateway = $this->createMock(PermissionGateway::class);
|
||||
$permissionGateway->method('userHas')
|
||||
$permissionService = $this->createMock(PermissionService::class);
|
||||
$permissionService->method('userHas')
|
||||
->willReturnCallback(static function (int $userId, string $permission) use ($permissionsByUser): bool {
|
||||
return in_array($permission, $permissionsByUser[$userId] ?? [], true);
|
||||
});
|
||||
|
||||
return $permissionGateway;
|
||||
return $permissionService;
|
||||
}
|
||||
|
||||
private function assertForbiddenDecision(mixed $decision, string $error = 'forbidden'): void
|
||||
|
||||
Reference in New Issue
Block a user