3 namespace Friendica\Test\src\Util\Router;
5 use FastRoute\DataGenerator\GroupCountBased;
6 use FastRoute\RouteCollector;
7 use FastRoute\RouteParser\Std;
8 use Friendica\Module\Special\Options;
9 use Friendica\Test\MockedTest;
10 use Friendica\Util\Router\FriendicaGroupCountBased;
12 class FriendicaGroupCountBasedTest extends MockedTest
14 public function testOptions()
16 $collector = new RouteCollector(new Std(), new GroupCountBased());
17 $collector->addRoute('GET', '/get', Options::class);
18 $collector->addRoute('POST', '/post', Options::class);
19 $collector->addRoute('GET', '/multi', Options::class);
20 $collector->addRoute('POST', '/multi', Options::class);
22 $dispatcher = new FriendicaGroupCountBased($collector->getData());
24 self::assertEquals(['GET'], $dispatcher->getOptions('/get'));
25 self::assertEquals(['POST'], $dispatcher->getOptions('/post'));
26 self::assertEquals(['GET', 'POST'], $dispatcher->getOptions('/multi'));