First version of the security module

This commit is contained in:
2026-06-22 13:19:05 +02:00
parent 0392043ee3
commit 498afc7840
64 changed files with 7581 additions and 4 deletions

View File

@@ -0,0 +1,46 @@
<?php
namespace MintyPHP\Tests\Module\Security\Service;
use MintyPHP\Module\Security\Repository\SecurityTokenRepository;
use MintyPHP\Module\Security\Service\SecurityBcSettingsGateway;
use MintyPHP\Module\Security\Service\SecurityOAuthTokenService;
use PHPUnit\Framework\TestCase;
class SecurityOAuthTokenServiceTest extends TestCase
{
public function testReturnsNullWhenAuthModeIsBasic(): void
{
$settings = $this->createMock(SecurityBcSettingsGateway::class);
$settings->method('getAuthMode')->willReturn(SecurityBcSettingsGateway::AUTH_MODE_BASIC);
$repo = $this->createMock(SecurityTokenRepository::class);
$repo->expects($this->never())->method('findValidToken');
$service = new SecurityOAuthTokenService($settings, $repo);
$this->assertNull($service->getAccessToken(1));
}
public function testReturnsNullForInvalidTenant(): void
{
$settings = $this->createMock(SecurityBcSettingsGateway::class);
$settings->method('getAuthMode')->willReturn(SecurityBcSettingsGateway::AUTH_MODE_OAUTH2);
$repo = $this->createMock(SecurityTokenRepository::class);
$service = new SecurityOAuthTokenService($settings, $repo);
$this->assertNull($service->getAccessToken(0));
}
public function testReturnsCachedTokenWhenAvailable(): void
{
$settings = $this->createMock(SecurityBcSettingsGateway::class);
$settings->method('getAuthMode')->willReturn(SecurityBcSettingsGateway::AUTH_MODE_OAUTH2);
$repo = $this->createMock(SecurityTokenRepository::class);
$repo->method('findValidToken')->willReturn('cached-bearer-token');
$service = new SecurityOAuthTokenService($settings, $repo);
$this->assertSame('cached-bearer-token', $service->getAccessToken(1));
}
}