FastRouteAdaptorTest   A
last analyzed

Complexity

Total Complexity 11

Size/Duplication

Total Lines 121
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Importance

Changes 0
Metric Value
wmc 11
lcom 1
cbo 4
dl 0
loc 121
rs 10
c 0
b 0
f 0

11 Methods

Rating   Name   Duplication   Size   Complexity  
A setUp() 0 15 1
A testConstructMissingOptions() 0 5 1
A testIsCachedWithCacheEnabled() 0 17 1
A testMatch() 0 3 1
A testGetCachedRoutes() 0 3 1
A testIsCached() 0 3 1
A test_checkCacheExpires() 0 3 1
A test_getCachedDispatcher() 0 3 1
A test_createFastRouteHandler() 0 3 1
A test_findOptionsHandler() 0 3 1
A test_createRouterResponse() 0 3 1
1
<?php
2
/**
3
 * This file is part of the DS Framework.
4
 *
5
 * (c) Dan Smith <[email protected]>
6
 *
7
 * For the full copyright and license information, please view the LICENSE
8
 * file that was distributed with this source code.
9
 */
10
namespace Tests\Ds\Router\Adaptor;
11
12
use Ds\Router\Adaptor\FastRouteAdaptor;
13
use Ds\Router\Exceptions\RouterException;
14
use Ds\Router\Interfaces\SerializerInterface;
15
use Tests\Ds\Router\Helpers\Reflection;
16
17
/**
18
 * Class FastRouteAdaptorTest
19
 * @package Tests\Ds\Router\Adaptor
20
 */
21
class FastRouteAdaptorTest extends \PHPUnit_Framework_TestCase
22
{
23
24
    /**
25
     * @var FastRouteAdaptor
26
     */
27
    public $fastRoute;
28
    /**
29
     * @var array
30
     */
31
    public $options;
32
    /**
33
     * @var \PHPUnit_Framework_MockObject_MockObject|SerializerInterface
34
     */
35
    public $serializer;
36
37
    /**
38
     *
39
     */
40
    public function setUp()
41
    {
42
        $this->options = [
43
            'cacheDisabled' => true,
44
            'errorHandlers' => [
45
                'default' => [
46
                    'handler' => 'errorController::method404',
47
                    'name' => ['error']
48
                ]
49
            ]
50
        ];
51
52
        $this->serializer = $this->getMockBuilder(SerializerInterface::class)->getMock();
53
        $this->fastRoute = new FastRouteAdaptor($this->serializer, $this->options);
54
    }
55
56
    /**
57
     *
58
     */
59
    public function testConstructMissingOptions()
60
    {
61
        $this->setExpectedException(RouterException::class);
62
        return new FastRouteAdaptor($this->serializer, []);
63
    }
64
65
    /**
66
     *
67
     */
68
    public function testIsCachedWithCacheEnabled()
69
    {
70
        $expected = false;
71
        $adaptor = new FastRouteAdaptor($this->serializer, [
72
            'cacheDisabled' => $expected,
73
            'cacheFile' => __DIR__,
74
            'errorHandlers' => [
75
                'default' => [
76
                    'handler' => 'errorController::method404',
77
                    'name' => ['error']
78
                ]
79
            ]
80
        ]);
81
82
        $options = Reflection::getProperty(FastRouteAdaptor::class, 'options', $adaptor);
83
        $this->assertEquals($expected, $options['cacheDisabled']);
84
    }
85
86
    /**
87
     *
88
     */
89
    public function testMatch()
90
    {
91
    }
92
93
    /**
94
     *
95
     */
96
    public function testGetCachedRoutes()
97
    {
98
    }
99
100
    /**
101
     *
102
     */
103
    public function testIsCached()
104
    {
105
    }
106
107
    /**
108
     * Internal Methods
109
     */
110
    public function test_checkCacheExpires()
111
    {
112
    }
113
114
    /**
115
     *
116
     */
117
    public function test_getCachedDispatcher()
118
    {
119
    }
120
121
    /**
122
     *
123
     */
124
    public function test_createFastRouteHandler()
125
    {
126
    }
127
128
    /**
129
     *
130
     */
131
    public function test_findOptionsHandler()
132
    {
133
    }
134
135
    /**
136
     *
137
     */
138
    public function test_createRouterResponse()
139
    {
140
    }
141
}
142