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

ExtensionExceptionTest::testInvalidExtension()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 15
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 15
rs 9.4285
cc 1
eloc 10
nc 1
nop 0
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