WorkerPassTest::declareServiceMock()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 8
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 6
nc 1
nop 1
1
<?php
2
3
namespace Cmobi\RabbitmqBundle\Tests\DependencyInjection\Compiler;
4
5
use Cmobi\RabbitmqBundle\Connection\ConnectionManager;
6
use Cmobi\RabbitmqBundle\DependencyInjection\CmobiRabbitmqExtension;
7
use Cmobi\RabbitmqBundle\DependencyInjection\Compiler\WorkerPass;
8
use Cmobi\RabbitmqBundle\Queue\BaseQueueService;
9
use Cmobi\RabbitmqBundle\Tests\BaseTestCase;
10
use Symfony\Component\DependencyInjection\ContainerBuilder;
11
12
class WorkerPassTest extends BaseTestCase
13
{
14
    public function testProcess()
15
    {
16
        $container = new ContainerBuilder();
17
        $this->declareServiceMock($container);
18
        $container->register('cmobi_rabbitmq.message.handler', BaseQueueService::class)
19
            ->setPublic(false);
20
        $container->register('cmobi_rabbitmq.connection.manager', ConnectionManager::class)
21
            ->setPublic(false);
22
23
        $this->process($container);
24
25
        $this->assertTrue($container->hasDefinition('cmobi_rabbitmq.worker.test'));
26
    }
27
28
    private function declareServiceMock(ContainerBuilder $container)
29
    {
30
        $container->registerExtension(new CmobiRabbitmqExtension());
31
        $container->register('cmobi_rabbitmq.worker.test')
32
            ->setPublic(false);
33
        $container->register('cmobi_rabbitmq.connection.default')
34
            ->setPublic(false);
35
    }
36
37
    protected function process(ContainerBuilder $container)
38
    {
39
        $workerPass = new WorkerPass(
40
            'test',
41
            'cmobi_rabbitmq.connection.default',
42
            'cmobi_rabbitmq.message.handler',
43
            1,
44
            []
45
        );
46
        $workerPass->process($container);
47
    }
48
}