Support dynamic redirects based on an after-date condition

This commit is contained in:
Alejandro Celaya
2025-12-18 09:41:07 +01:00
parent 39585ed87d
commit 9ae2dce261
7 changed files with 42 additions and 4 deletions

View File

@@ -211,4 +211,19 @@ class RedirectConditionTest extends TestCase
yield 'date later than current' => [Chronos::now()->addHours(1), true];
yield 'date earlier than current' => [Chronos::now()->subHours(1), false];
}
#[Test, DataProvider('provideVisitsWithAfterDateCondition')]
public function matchesAfterDate(Chronos $date, bool $expectedResult): void
{
$request = ServerRequestFactory::fromGlobals();
$result = RedirectCondition::forAfterDate($date)->matchesRequest($request);
self::assertEquals($expectedResult, $result);
}
public static function provideVisitsWithAfterDateCondition(): iterable
{
yield 'date later than current' => [Chronos::now()->addHours(1), false];
yield 'date earlier than current' => [Chronos::now()->subHours(1), true];
}
}