Completed
Push — master ( 6eef69...27b08f )
by Alejandro
07:50
created

versionOneIsPrependedWhenNoVersionIsDefined()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 6
nc 1
nop 0
dl 0
loc 9
rs 9.6666
c 0
b 0
f 0
1
<?php
2
namespace ShlinkioTest\Shlink\Rest\Middleware;
3
4
use PHPUnit_Framework_TestCase as TestCase;
5
use Psr\Http\Message\ServerRequestInterface as Request;
6
use Shlinkio\Shlink\Rest\Middleware\PathVersionMiddleware;
7
use Zend\Diactoros\Response;
8
use Zend\Diactoros\ServerRequestFactory;
9
use Zend\Diactoros\Uri;
10
11
class PathVersionMiddlewareTest extends TestCase
12
{
13
    /**
14
     * @var PathVersionMiddleware
15
     */
16
    protected $middleware;
17
18
    public function setUp()
19
    {
20
        $this->middleware = new PathVersionMiddleware();
21
    }
22
23
    /**
24
     * @test
25
     */
26
    public function whenVersionIsProvidedRequestRemainsUnchanged()
27
    {
28
        $request = ServerRequestFactory::fromGlobals()->withUri(new Uri('/rest/v2/foo'));
29
        $test = $this;
30
        $this->middleware->__invoke($request, new Response(), function ($req) use ($request, $test) {
31
            $test->assertSame($request, $req);
32
        });
33
    }
34
35
    /**
36
     * @test
37
     */
38
    public function versionOneIsPrependedWhenNoVersionIsDefined()
39
    {
40
        $request = ServerRequestFactory::fromGlobals()->withUri(new Uri('/rest/bar/baz'));
41
        $test = $this;
42
        $this->middleware->__invoke($request, new Response(), function (Request $req) use ($request, $test) {
43
            $test->assertNotSame($request, $req);
44
            $this->assertEquals('/rest/v1/bar/baz', $req->getUri()->getPath());
45
        });
46
    }
47
}
48