Completed
Push — master ( b346da...606e51 )
by Alex
02:08
created

TwigExtensionSetTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4
Metric Value
wmc 2
lcom 1
cbo 4
dl 0
loc 36
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testSet() 0 17 1
A testApply() 0 15 1
1
<?php
2
3
namespace Asmaster\EquipTwigTests\Configuration;
4
5
use Auryn\Injector;
6
use Equip\Configuration\ConfigurationInterface;
7
use Asmaster\EquipTwig\Configuration\TwigExtensionSet;
8
9
class TwigExtensionSetTest extends \PHPUnit_Framework_TestCase 
10
{
11
    public function testSet()
12
    {
13
        $defaultExtension = new TwigExtensionSet();
14
        $this->assertEmpty($defaultExtension->toArray());
15
16
        $e1 = 'Extension1';
17
        $e2 = 'Extension2';
18
        $e3 = 'Extension3';
19
20
        $defaultExtension = $defaultExtension->withValue($e1);
21
        $this->assertContains($e1, $defaultExtension);
22
23
        $defaultExtension = $defaultExtension->withValueBefore($e2, $e1);
24
        $defaultExtension = $defaultExtension->withValueAfter($e3, $e1);
25
26
        $this->assertSame([$e2, $e1, $e3], $defaultExtension->toArray());
27
    }
28
29
    public function testApply()
30
    {
31
        $injector = new Injector;
32
33
        $injector->define(\Twig_Environment::class, [
34
            ':options' => ['debug' => true]
35
        ]);
36
37
        $extensionSet = new TwigExtensionSet();
38
        $extensionSet->apply($injector);
39
40
        $twig = $injector->make(\Twig_Environment::class);
41
42
        $this->assertArrayHasKey('debug', $twig->getExtensions());
43
    }
44
}
45