RouterTraitTest   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
eloc 18
dl 0
loc 32
rs 10
c 1
b 0
f 1
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testRegisterCustomRouter() 0 12 1
A testRegisterRouter() 0 16 1
1
<?php
2
3
namespace Nip\Router\Tests\ServiceProvider\Traits;
4
5
use Nip\Container\Container;
6
use Nip\Router\Generator\CompiledUrlGenerator;
7
use Nip\Router\Router;
8
use Nip\Router\RouterServiceProvider;
9
use Nip\Router\Tests\AbstractTest;
10
use Nip\Router\Tests\Fixtures\Application\Library\Application;
11
use Nip\Router\Tests\Fixtures\Application\Library\Router\CustomRouter;
12
use Symfony\Component\Routing\RouterInterface;
13
14
/**
15
 * Class RouterServiceProviderTest
16
 * @package Nip\Router\Tests\ServiceProvider\Traits
17
 */
18
class RouterTraitTest extends AbstractTest
19
{
20
    public function testRegisterRouter()
21
    {
22
        $container = new Container();
23
        $container->set('app', new Application());
24
25
        $provider = new RouterServiceProvider();
26
        $provider->setContainer($container);
27
        $provider->register();
28
29
        /** @var Router $router */
30
        $router = $container->get('router');
31
        self::assertInstanceOf(Router::class, $router);
32
33
        $generator = $router->getGenerator();
34
        self::assertInstanceOf(CompiledUrlGenerator::class, $generator);
35
        self::assertTrue($generator->hasRoute('default.standard'));
36
    }
37
38
    public function testRegisterCustomRouter()
39
    {
40
        $container = new Container();
41
        $container->set('app', new Application());
42
43
        $provider = new RouterServiceProvider();
44
        $provider->setContainer($container);
45
        $provider->register();
46
47
        $container->add(RouterInterface::class, CustomRouter::class);
48
49
        self::assertInstanceOf(CustomRouter::class, $container->get('router'));
50
    }
51
}
52