From e23d6dac810ea330d74b5e33546b125a48671fc0 Mon Sep 17 00:00:00 2001 From: David Grudl Date: Tue, 10 Mar 2020 21:28:56 +0100 Subject: [PATCH] RouteList: Countable and IteratorAggregate are deprecated --- src/Application/Routers/RouteList.php | 4 ++++ src/Bridges/ApplicationTracy/RoutingPanel.php | 2 +- tests/Bridges.DI/RoutingExtension.basic.phpt | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Application/Routers/RouteList.php b/src/Application/Routers/RouteList.php index e660a545e..a8899be71 100644 --- a/src/Application/Routers/RouteList.php +++ b/src/Application/Routers/RouteList.php @@ -93,8 +93,10 @@ public function getModule(): ?string } + /** @deprecated */ public function count(): int { + trigger_error(__METHOD__ . '() is deprecated.', E_USER_DEPRECATED); return count($this->getRouters()); } @@ -149,8 +151,10 @@ public function offsetUnset($index): void } + /** @deprecated */ public function getIterator(): \ArrayIterator { + trigger_error(__METHOD__ . '() is deprecated, use getRouters().', E_USER_DEPRECATED); return new \ArrayIterator($this->getRouters()); } } diff --git a/src/Bridges/ApplicationTracy/RoutingPanel.php b/src/Bridges/ApplicationTracy/RoutingPanel.php index 7cf1a8ff2..f49feb726 100644 --- a/src/Bridges/ApplicationTracy/RoutingPanel.php +++ b/src/Bridges/ApplicationTracy/RoutingPanel.php @@ -100,7 +100,7 @@ private function analyse(Nette\Routing\Router $router, string $module = ''): voi { if ($router instanceof Routers\RouteList) { if ($router->match($this->httpRequest)) { - foreach ($router as $subRouter) { + foreach ($router->getRouters() as $subRouter) { $this->analyse($subRouter, $module . $router->getModule()); } } diff --git a/tests/Bridges.DI/RoutingExtension.basic.phpt b/tests/Bridges.DI/RoutingExtension.basic.phpt index 5b6dd36ea..20e1c9dd4 100644 --- a/tests/Bridges.DI/RoutingExtension.basic.phpt +++ b/tests/Bridges.DI/RoutingExtension.basic.phpt @@ -36,7 +36,7 @@ test(function () { $container = new Container1; $router = $container->getService('router'); Assert::type(Nette\Application\Routers\RouteList::class, $router); - Assert::count(2, $router); + @Assert::count(2, $router); // @ is deprecated Assert::same('index.php', $router[0]->getMask()); Assert::same('item/', $router[1]->getMask());