From 57e101668e62aab7d332c1c2f403eee9511de626 Mon Sep 17 00:00:00 2001 From: Sam Light Date: Wed, 10 Jun 2026 19:00:32 +0100 Subject: RouteDefinition can add name --- src/RouteDefinition.php | 10 +++++++++- tests/Unit/RouteDefinitionTest.php | 12 +++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/RouteDefinition.php b/src/RouteDefinition.php index ed6c721..fb10380 100644 --- a/src/RouteDefinition.php +++ b/src/RouteDefinition.php @@ -9,5 +9,13 @@ class RouteDefinition public function __construct( private Router $router, private Route $route, - ) {} + ) { + } + + public function name(string $value): static + { + $this->router->addNamedRoute($value, $this->route); + + return $this; + } } diff --git a/tests/Unit/RouteDefinitionTest.php b/tests/Unit/RouteDefinitionTest.php index 8ac0e45..f605293 100644 --- a/tests/Unit/RouteDefinitionTest.php +++ b/tests/Unit/RouteDefinitionTest.php @@ -1,5 +1,7 @@ expect(fn () => new RouteDefinition( new Router(), - new Route(HttpMethod::Get, fn() => null), + new Route(HttpMethod::Get, fn () => null), )) ->toBeInstanceOf(RouteDefinition::class); + +it('adds route to named routes', function () { + $router = new Router(); + $route = new Route(HttpMethod::Get, fn () => null); + $definition = new RouteDefinition($router, $route); + expect($definition->name('testing'))->toBe($definition); + expect($router->getNamedRoute('testing'))->toBe($route); +}); -- cgit v1.2.3