Passed
Pull Request — master (#48)
by Harry
02:40
created

FailedRejectionExceptionTest::testGetPrevious()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * This file is part of graze/queue.
5
 *
6
 * Copyright (c) 2015 Nature Delivered Ltd. <https://www.graze.com>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 *
11
 * @license https://github.com/graze/queue/blob/master/LICENSE MIT
12
 *
13
 * @link    https://github.com/graze/queue
14
 */
15
16
namespace Graze\Queue\Adapter\Exception;
17
18
use Exception;
19
use Graze\Queue\Adapter\AdapterInterface;
20
use Graze\Queue\Message\MessageInterface;
21
use Mockery as m;
22
use Mockery\MockInterface;
23
use Graze\Queue\Test\TestCase;
24
25
class FailedRejectionExceptionTest extends TestCase
26
{
27
    /** @var AdapterInterface|MockInterface */
28
    private $adapter;
29
    /** @var array */
30
    private $debug;
31
    /** @var MessageInterface[]|MockInterface[] */
32
    private $messages;
33
    /** @var Exception */
34
    private $previous;
35
    /** @var FailedRejectionException */
36
    private $exception;
37
38
    public function setUp()
39
    {
40
        $this->adapter = m::mock(AdapterInterface::class);
41
        $this->debug = ['foo' => 'bar'];
42
43
        $a = m::mock(MessageInterface::class);
44
        $b = m::mock(MessageInterface::class);
45
        $c = m::mock(MessageInterface::class);
46
        $this->messages = [$a, $b, $c];
47
48
        $this->previous = new Exception();
49
50
        $this->exception = new FailedRejectionException(
51
            $this->adapter,
0 ignored issues
show
Bug introduced by
$this->adapter of type Mockery\MockInterface is incompatible with the type Graze\Queue\Adapter\AdapterInterface expected by parameter $adapter of Graze\Queue\Adapter\Exce...xception::__construct(). ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

51
            /** @scrutinizer ignore-type */ $this->adapter,
Loading history...
52
            $this->messages,
53
            $this->debug,
54
            $this->previous
55
        );
56
    }
57
58
    public function testInterface()
59
    {
60
        assertThat($this->exception, is(anInstanceOf(AdapterException::class)));
61
    }
62
63
    public function testGetAdapter()
64
    {
65
        assertThat($this->exception->getAdapter(), is(identicalTo($this->adapter)));
66
    }
67
68
    public function testGetDebug()
69
    {
70
        assertThat($this->exception->getDebug(), is(identicalTo($this->debug)));
71
    }
72
73
    public function testGetMessages()
74
    {
75
        assertThat($this->exception->getMessages(), is(identicalTo($this->messages)));
76
    }
77
78
    public function testGetPrevious()
79
    {
80
        assertThat($this->exception->getPrevious(), is(identicalTo($this->previous)));
81
    }
82
}
83