FailedEnqueueExceptionTest   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 50
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 50
rs 10
c 0
b 0
f 0
wmc 6

6 Methods

Rating   Name   Duplication   Size   Complexity  
A testGetAdapter() 0 3 1
A testInterface() 0 3 1
A testGetMessages() 0 3 1
A setUp() 0 12 1
A testGetPrevious() 0 3 1
A testGetDebug() 0 3 1
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 FailedEnqueueExceptionTest 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 FailedEnqueueException */
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
        $this->exception = new FailedEnqueueException($this->adapter, $this->messages, $this->debug, $this->previous);
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

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