RequestHeaderMiddlewareTest   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 31
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 13
c 1
b 0
f 0
dl 0
loc 31
rs 10
wmc 3

3 Methods

Rating   Name   Duplication   Size   Complexity  
A testApplyResponse() 0 3 1
A testApplyRequest() 0 9 1
A setUp() 0 6 1
1
<?php
2
/*
3
 * This file is part of Guzzle HTTP JSON-RPC
4
 *
5
 * Copyright (c) 2014 Nature Delivered Ltd. <http://graze.com>
6
 *
7
 * For the full copyright and license information, please view the LICENSE
8
 * file that was distributed with this source code.
9
 *
10
 * @see  http://github.com/graze/guzzle-jsonrpc/blob/master/LICENSE
11
 * @link http://github.com/graze/guzzle-jsonrpc
12
 */
13
namespace Graze\GuzzleHttp\JsonRpc\Middleware;
14
15
use Graze\GuzzleHttp\JsonRpc\Test\UnitTestCase;
16
17
class RequestHeaderMiddlewareTest extends UnitTestCase
18
{
19
    /** @var mixed */
20
    private $request;
21
    /** @var mixed */
22
    private $response;
23
    /** @var RequestHeaderMiddleware */
24
    private $middleware;
25
26
    public function setUp()
27
    {
28
        $this->request = $this->mockRequest();
29
        $this->response = $this->mockResponse();
30
31
        $this->middleware = new RequestHeaderMiddleware();
32
    }
33
34
    public function testApplyRequest()
35
    {
36
        $requestA = clone $this->request;
37
        $requestB = clone $requestA;
38
39
        $this->request->shouldReceive('withHeader')->once()->with('Accept-Encoding', 'gzip;q=1.0,deflate;q=0.6,identity;q=0.3')->andReturn($requestA);
40
        $requestA->shouldReceive('withHeader')->once()->with('Content-Type', 'application/json')->andReturn($requestB);
41
42
        $this->assertSame($requestB, $this->middleware->applyRequest($this->request, []));
43
    }
44
45
    public function testApplyResponse()
46
    {
47
        $this->assertSame($this->response, $this->middleware->applyResponse($this->request, $this->response, []));
48
    }
49
}
50