Completed
Push — master ( c1adf5...002a39 )
by Alex
02:26
created

ExtensionExceptionTest   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
wmc 1
c 0
b 0
f 0
lcom 0
cbo 2
dl 0
loc 18
rs 10
1
<?php
2
3
namespace Asmaster\EquipTwig\Tests\Exception;
4
5
use Asmaster\EquipTwig\Exception\ExceptionInterface;
6
use Asmaster\EquipTwig\Exception\ExtensionException;
7
use InvalidArgumentException;
8
use PHPUnit_Framework_TestCase as TestCase;
9
use Twig_ExtensionInterface as TwigExtensionInterface;
10
11
class ExtensionExceptionTest extends TestCase
12
{
13
    public function testInvalidExtension()
14
    {
15
        $extension = new \stdClass();
16
        $interface = TwigExtensionInterface::class;
17
18
        $exception = ExtensionException::invalidExtension($extension);
19
20
        $this->assertInstanceOf(ExtensionException::class, $exception);
21
        $this->assertInstanceOf(InvalidArgumentException::class, $exception);
22
        $this->assertInstanceOf(ExceptionInterface::class, $exception);
23
        $this->assertSame(
24
            'Twig extension `'. get_class($extension) .'` must implement `'. $interface .'`',
25
            $exception->getMessage()
26
        );
27
    }
28
}
29