Completed
Push — master ( 86b8da...2af8a4 )
by Tomáš
02:58
created

ConfigurationTest::createConfigurationWithConfig()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 7
rs 9.4285
cc 1
eloc 4
nc 1
nop 1
1
<?php
2
3
namespace Symplify\MultiCodingStandard\Tests\Configuration;
4
5
use phpunit\framework\TestCase;
6
use Symplify\MultiCodingStandard\CodeSniffer\Naming\SniffNaming;
7
use Symplify\MultiCodingStandard\Configuration\Configuration;
8
use Symplify\MultiCodingStandard\Configuration\MultiCsFileLoader;
9
use Symplify\MultiCodingStandard\Contract\Configuration\ConfigurationInterface;
10
11
final class ConfigurationTest extends TestCase
12
{
13
    /**
14
     * @var ConfigurationInterface
15
     */
16
    private $configuration;
17
18
    protected function setUp()
19
    {
20
        $this->configuration = $this->createConfigurationWithConfig(__DIR__.'/multi-cs.json');
21
    }
22
23
    public function testGetActiveSniffs()
24
    {
25
        $this->assertSame(['somecodingstandard_sniffs_group_specificsniff'], $this->configuration->getActiveSniffs());
26
    }
27
28
    public function testGetActiveStandards()
29
    {
30
        $this->assertSame(['SomeStandard'], $this->configuration->getActiveStandards());
31
    }
32
33
    public function testGetExcludedSniffs()
34
    {
35
        $this->assertSame(['SomeCodingStandard.Sniffs.Group.SpecificSniff'], $this->configuration->getExcludedSniffs());
36
    }
37
38
    public function testEmpty()
39
    {
40
        $configuration = $this->createConfigurationWithConfig(__DIR__.'/multi-cs-empty.json');
41
42
        $this->assertSame([], $configuration->getActiveSniffs());
43
        $this->assertSame([], $configuration->getExcludedSniffs());
44
        $this->assertSame([], $configuration->getActiveStandards());
45
    }
46
47
    /**
48
     * @param string $config
49
     * @return Configuration
50
     */
51
    private function createConfigurationWithConfig($config)
52
    {
53
        return new Configuration(
54
            new MultiCsFileLoader($config),
55
            new SniffNaming()
56
        );
57
    }
58
}