Completed
Push — 3.x ( b582dd...8b3829 )
by Jordi Sala
01:51
created

AddGuesserCompilerPassTest::testProcess()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 16
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 16
rs 9.4285
cc 1
eloc 11
nc 1
nop 0
1
<?php
2
3
/*
4
 * This file is part of the Sonata Project package.
5
 *
6
 * (c) Thomas Rabaix <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace Sonata\DoctrineORMAdminBundle\Tests\DependencyInjection\Compiler;
13
14
use PHPUnit\Framework\TestCase;
15
use Sonata\DoctrineORMAdminBundle\DependencyInjection\Compiler\AddGuesserCompilerPass;
16
use Symfony\Component\DependencyInjection\ContainerBuilder;
17
use Symfony\Component\DependencyInjection\Definition;
18
use Symfony\Component\DependencyInjection\Reference;
19
20
class AddGuesserCompilerPassTest extends TestCase
21
{
22
    public function testProcess()
23
    {
24
        $containerBuilder = $this->prophesize(ContainerBuilder::class);
25
        $definition = $this->prophesize(Definition::class);
26
        $definition->replaceArgument(0, [new Reference('some.id')])->shouldBeCalledTimes(3);
27
28
        $containerBuilder->getDefinition('sonata.admin.guesser.orm_list_chain')->willReturn($definition->reveal());
29
        $containerBuilder->getDefinition('sonata.admin.guesser.orm_datagrid_chain')->willReturn($definition->reveal());
30
        $containerBuilder->getDefinition('sonata.admin.guesser.orm_show_chain')->willReturn($definition->reveal());
31
32
        $containerBuilder->findTaggedServiceIds('sonata.admin.guesser.orm_list')->willReturn(['some.id' => 'attr']);
33
        $containerBuilder->findTaggedServiceIds('sonata.admin.guesser.orm_datagrid')->willReturn(['some.id' => 'attr']);
34
        $containerBuilder->findTaggedServiceIds('sonata.admin.guesser.orm_show')->willReturn(['some.id' => 'attr']);
35
36
        (new AddGuesserCompilerPass())->process($containerBuilder->reveal());
37
    }
38
}
39