Issues (2)

Tests/DependencyInjection/UniGenExtensionTest.php (2 issues)

1
<?php
2
3
namespace UniGen\Bundle\UniGenBundle\Tests\DependencyInjection;
4
5
use Mockery;
6
use Mockery\MockInterface;
7
use PHPUnit\Framework\TestCase;
8
use Mockery\Adapter\Phpunit\MockeryPHPUnitIntegration;
9
use Symfony\Component\DependencyInjection\ContainerBuilder;
10
use UniGen\Bundle\UniGenBundle\DependencyInjection\UniGenExtension;
11
12
class UniGenExtensionTest extends TestCase
13
{
14
    use MockeryPHPUnitIntegration;
15
16
    /** @var UniGenExtension */
17
    private $sut;
18
19
    /** @var ContainerBuilder|MockInterface */
20
    private $containerBuilderMock;
21
22
    /**
23
     * {@inheritdoc}
24
     */
25
    protected function setUp()
26
    {
27
        $this->containerBuilderMock = Mockery::mock(ContainerBuilder::class)->makePartial();
28
29
        $this->sut = new UniGenExtension();
30
    }
31
32
    public function testLoadShouldLoadCorrectContainerParameters()
33
    {
34
        $this->containerBuilderMock
35
            ->shouldReceive('setParameter')
0 ignored issues
show
The method shouldReceive() does not exist on Symfony\Component\Depend...ection\ContainerBuilder. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

35
            ->/** @scrutinizer ignore-call */ 
36
              shouldReceive('setParameter')

This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.

This is most likely a typographical error or the method has been renamed.

Loading history...
36
            ->with('unigen.test_case', 'TestCase');
37
38
        $this->containerBuilderMock
39
            ->shouldReceive('setParameter')
40
            ->with('unigen.mock_framework', 'mockery');
41
42
        $this->containerBuilderMock
43
            ->shouldReceive('setParameter')
44
            ->with('unigen.path_pattern', '/src\/([a-zA-Z\/]+)/');
45
46
        $this->containerBuilderMock
47
            ->shouldReceive('setParameter')
48
            ->with('unigen.path_replacement_pattern', 'tests/${1}Test');
49
50
        $this->containerBuilderMock
51
            ->shouldReceive('setParameter')
52
            ->with('unigen.namespace_pattern', '/namespace ([a-zA-Z]+\\\\)(.*);/');
53
54
        $this->containerBuilderMock
55
            ->shouldReceive('setParameter')
56
            ->with('unigen.namespace_replacement_pattern', 'namespace ${1}Test\\\\${2};');
57
58
        $this->containerBuilderMock
59
            ->shouldReceive('setParameter')
60
            ->with('unigen.render.twig.template', 'sut_template.php.twig');
61
62
        $this->containerBuilderMock
63
            ->shouldReceive('setParameter')
64
            ->with('unigen.render.twig.template_dir', '%kernel.project_dir%/vendor/unigen/unigen/src/Resources/views');
65
66
        $this->sut->load([], $this->containerBuilderMock);
0 ignored issues
show
It seems like $this->containerBuilderMock can also be of type Mockery\MockInterface; however, parameter $container of UniGen\Bundle\UniGenBund...UniGenExtension::load() does only seem to accept Symfony\Component\Depend...ection\ContainerBuilder, maybe add an additional type check? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

66
        $this->sut->load([], /** @scrutinizer ignore-type */ $this->containerBuilderMock);
Loading history...
67
    }
68
}