getId()); self::assertNull($sut->getName()); self::assertNull($sut->getExpiresAt()); self::assertNull($sut->getLastUsage()); self::assertSame('foo', $sut->getToken()); self::assertSame($user, $sut->getUser()); self::assertTrue($sut->isValid()); $sut->setName('bar'); self::assertSame('bar', $sut->getName()); $dateTime = new \DateTimeImmutable('-1 year'); $sut->setLastUsage($dateTime); self::assertSame($dateTime, $sut->getLastUsage()); $dateTime = new \DateTimeImmutable('-1 month'); $sut->setExpiresAt($dateTime); self::assertSame($dateTime, $sut->getExpiresAt()); } public function testIsValid(): void { $user = new User(); $sut = new AccessToken($user, 'foo'); $sut->setExpiresAt(new \DateTimeImmutable('-1 day')); self::assertFalse($sut->isValid()); } public function testClone(): void { $user = new User(); $sut = new AccessToken($user, 'foo'); $this->assertCloneResetsId($sut); } }