summaryrefslogtreecommitdiff
path: root/tests/Unit/RouterTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/Unit/RouterTest.php')
-rw-r--r--tests/Unit/RouterTest.php26
1 files changed, 23 insertions, 3 deletions
diff --git a/tests/Unit/RouterTest.php b/tests/Unit/RouterTest.php
index 31e391d..41b794d 100644
--- a/tests/Unit/RouterTest.php
+++ b/tests/Unit/RouterTest.php
@@ -227,12 +227,32 @@ it('makes a :dataset route')
->toBeInstanceOf(RouteMatch::class);
it('returns RouteDefinition when making route')
- ->expect(fn() => (new Router())
- ->route(HttpMethod::Get, '/test', fn() => null)
+ ->expect(fn () => (new Router())
+ ->route(HttpMethod::Get, '/test', fn () => null)
)
->toBeInstanceOf(RouteDefinition::class);
it('returns RouteDefinition when making :dataset route')
->with($methodGenerator)
- ->expect(fn (HttpMethod $m) => (new Router)->{$m->value}('/test', fn() => null))
+ ->expect(fn (HttpMethod $m) => (new Router())->{$m->value}('/test', fn () => null))
->toBeInstanceOf(RouteDefinition::class);
+
+it('has named routes', function () {
+ $router = new Router();
+ $route = new Route(HttpMethod::Get, fn () => null);
+ $router->addNamedRoute('hello-hello', $route);
+
+ expect($router->getNamedRoute('hello-hello'))->toBe($route);
+});
+
+it('overrides existing named routes', function () {
+ $router = new Router();
+ $route1 = new Route(HttpMethod::Get, fn () => null);
+ $route2 = new Route(HttpMethod::Post, fn () => null);
+ $router->addNamedRoute('hello-hello', $route1);
+ $router->addNamedRoute('hello-hello', $route2);
+
+ expect($router->getNamedRoute('hello-hello'))
+ ->not->toBe($route1)
+ ->toBe($route2);
+});