Completed
Pull Request — master (#7)
by Yann
02:14
created

InformationGuesserTest::guesser()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 1
1
<?php
2
3
namespace Yokai\SecurityTokenBundle\Tests\InformationGuesser;
4
5
use PHPUnit\Framework\TestCase;
6
use Symfony\Component\HttpFoundation\Request;
7
use Symfony\Component\HttpFoundation\RequestStack;
8
use Yokai\SecurityTokenBundle\InformationGuesser\InformationGuesser;
9
10
/**
11
 * @author Yann Eugoné <[email protected]>
12
 */
13
class InformationGuesserTest extends TestCase
14
{
15
    /**
16
     * @param RequestStack $requestStack
17
     *
18
     * @return InformationGuesser
19
     */
20
    protected function guesser(RequestStack $requestStack)
21
    {
22
        return new InformationGuesser($requestStack);
23
    }
24
25
    /**
26
     * @test
27
     */
28
    public function it_return_empty_array_if_no_master_request()
29
    {
30
        $requestStack = new RequestStack();
31
32
        $info = $this->guesser($requestStack)->get();
33
34
        self::assertSame([], $info);
35
    }
36
37
    /**
38
     * @test
39
     */
40
    public function it_return_array_with_ip_from_master_request()
41
    {
42
        $requestStack = new RequestStack();
43
        $requestStack->push(new Request([], [], [], [], [], ['REMOTE_ADDR' => '88.88.88.88']));
44
45
        $info = $this->guesser($requestStack)->get();
46
47
        self::assertArrayHasKey('ip', $info);
48
        self::assertSame('88.88.88.88', $info['ip']);
49
        self::assertArrayHasKey('host', $info);
50
    }
51
}
52