Completed
Branch master (4042af)
by Aleksandar
02:14
created

EventServiceFactoryTest   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 45
Duplicated Lines 100 %

Coupling/Cohesion

Components 1
Dependencies 5

Importance

Changes 1
Bugs 0 Features 1
Metric Value
dl 45
loc 45
rs 10
c 1
b 0
f 1
wmc 1
lcom 1
cbo 5

How to fix   Duplicated Code   

Duplicated Code

Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.

Common duplication problems, and corresponding solutions are:

1
<?php
2
3
declare(strict_types=1);
4
5
namespace Test\Article\Controller;
6
7
class EventServiceFactoryTest extends \PHPUnit_Framework_TestCase
8
{
9
    public function testInvokingFactoryShouldReturnExpectedInstance()
10
    {
11
        $articleMapper = $this->getMockBuilder(\Article\Mapper\ArticleMapper::class)
12
            ->getMockForAbstractClass();
13
        $articleEventMapper = $this->getMockBuilder(\Article\Mapper\ArticleEventsMapper::class)
14
            ->getMockForAbstractClass();
15
        $articleFilter = $this->getMockBuilder(\Article\Filter\ArticleFilter::class)
16
            ->getMockForAbstractClass();
17
        $eventFilter = $this->getMockBuilder(\Article\Filter\EventFilter::class)
18
            ->getMockForAbstractClass();
19
        $categoryMapper = $this->getMockBuilder(\Category\Mapper\CategoryMapper::class)
20
            ->getMockForAbstractClass();
21
        $adminUsersMapper = $this->getMockBuilder(\Admin\Mapper\AdminUsersMapper::class)
22
            ->getMockForAbstractClass();
23
24
        $container = $this->getMockBuilder(\Interop\Container\ContainerInterface::class)
25
            ->setMethods(['get'])
26
            ->getMockForAbstractClass();
27
        $container->expects(static::at(0))
28
            ->method('get')
29
            ->will(static::returnValue(['upload' => ['public_path' => 'test', 'non_public_path' => 'test']]));
30
        $container->expects(static::at(1))
31
            ->method('get')
32
            ->will(static::returnValue($articleMapper));
33
        $container->expects(static::at(2))
34
            ->method('get')
35
            ->will(static::returnValue($articleEventMapper));
36
        $container->expects(static::at(3))
37
            ->method('get')
38
            ->will(static::returnValue($articleFilter));
39
        $container->expects(static::at(4))
40
            ->method('get')
41
            ->will(static::returnValue($eventFilter));
42
        $container->expects(static::at(5))
43
            ->method('get')
44
            ->will(static::returnValue($categoryMapper));
45
        $container->expects(static::at(6))
46
            ->method('get')
47
            ->will(static::returnValue($adminUsersMapper));
48
        $factory = new \Article\Factory\Service\EventServiceFactory();
49
        static::assertInstanceOf(\Article\Service\EventService::class, $factory($container));
50
    }
51
}
52