38 lines
1.2 KiB
PHP
38 lines
1.2 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace App\Tests\Entity;
|
||
|
|
|
||
|
|
use App\Entity\Account;
|
||
|
|
use App\Entity\AccountResetPasswordRequest;
|
||
|
|
use PHPUnit\Framework\TestCase;
|
||
|
|
use ReflectionClass;
|
||
|
|
|
||
|
|
class AccountResetPasswordRequestTest extends TestCase
|
||
|
|
{
|
||
|
|
public function testEntitySettersAndGetters(): void
|
||
|
|
{
|
||
|
|
$account = new Account(); // Ou crée un mock si la classe est complexe
|
||
|
|
$token = 'reset-token-example';
|
||
|
|
$now = new \DateTimeImmutable();
|
||
|
|
$expires = $now->modify('+1 hour');
|
||
|
|
|
||
|
|
$resetRequest = new AccountResetPasswordRequest();
|
||
|
|
$resetRequest->setAccount($account);
|
||
|
|
$resetRequest->setToken($token);
|
||
|
|
$resetRequest->setRequestedAt($now);
|
||
|
|
$resetRequest->setExpiresAt($expires);
|
||
|
|
|
||
|
|
$refClass = new ReflectionClass($resetRequest);
|
||
|
|
$idProp = $refClass->getProperty('id');
|
||
|
|
$idProp->setAccessible(true);
|
||
|
|
$idProp->setValue($resetRequest, 123);
|
||
|
|
|
||
|
|
$this->assertSame($account, $resetRequest->getAccount());
|
||
|
|
$this->assertSame($token, $resetRequest->getToken());
|
||
|
|
$this->assertSame($now, $resetRequest->getRequestedAt());
|
||
|
|
$this->assertSame($expires, $resetRequest->getExpiresAt());
|
||
|
|
$this->assertSame(123, $resetRequest->getId());
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|