SecurityExtensionTest   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Importance

Changes 0
Metric Value
wmc 2
lcom 1
cbo 4
dl 0
loc 38
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testLoadConfiguration() 0 13 1
A testLoadVoters() 0 21 1
1
<?php
2
3
declare(strict_types=1);
4
5
/*
6
 * This file is part of Symplify.
7
 * Copyright (c) 2014 Tomas Votruba (http://tomasvotruba.cz)
8
 */
9
10
namespace Symplify\SymfonySecurity\Tests\Adapter\Nette\DI;
11
12
use Symfony\Component\Security\Core\Authorization\AccessDecisionManager;
13
use Symplify\SymfonySecurity\Core\Authorization\AccessDecisionManagerFactory;
14
use Symplify\SymfonySecurity\Tests\Adapter\Nette\DI\SymfonySecurityExtensionSource\SomeVoter;
15
16
final class SecurityExtensionTest extends AbstractSecurityExtensionTestCase
17
{
18
    public function testLoadConfiguration()
19
    {
20
        $extension = $this->getExtension();
21
        $extension->loadConfiguration();
22
23
        $containerBuilder = $extension->getContainerBuilder();
24
        $containerBuilder->prepareClassList();
25
26
        $accessDecisionManagerDefinition = $containerBuilder->getDefinition(
27
            $containerBuilder->getByType(AccessDecisionManager::class)
28
        );
29
        $this->assertSame(AccessDecisionManager::class, $accessDecisionManagerDefinition->getClass());
30
    }
31
32
    public function testLoadVoters()
33
    {
34
        $extension = $this->getExtension();
35
        $containerBuilder = $extension->getContainerBuilder();
36
37
        $extension->loadConfiguration();
38
39
        $containerBuilder->addDefinition('someVoter')
40
            ->setClass(SomeVoter::class);
41
        $containerBuilder->prepareClassList();
42
43
        $accessDecisionManagerFactoryDefinition = $containerBuilder->getDefinition(
44
            $containerBuilder->getByType(AccessDecisionManagerFactory::class)
45
        );
46
47
        $this->assertCount(0, $accessDecisionManagerFactoryDefinition->getSetup());
48
49
        $extension->beforeCompile();
50
51
        $this->assertCount(2, $accessDecisionManagerFactoryDefinition->getSetup());
52
    }
53
}
54