Completed
Push — refonte ( 64e01a...7173e3 )
by Arnaud
03:31
created

ConfigurationFactoryTest::testCreate()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 37

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 37
rs 9.328
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
namespace LAG\AdminBundle\Tests\AdminBundle\Action\Factory;
4
5
use LAG\AdminBundle\Action\Configuration\ActionConfiguration;
6
use LAG\AdminBundle\Action\Factory\ConfigurationFactory;
7
use LAG\AdminBundle\Admin\Configuration\AdminConfiguration;
8
use LAG\AdminBundle\Application\Configuration\ApplicationConfiguration;
9
use LAG\AdminBundle\Tests\AdminTestBase;
10
11
class ConfigurationFactoryTest extends AdminTestBase
12
{
13
    public function testCreate()
14
    {
15
        $applicationConfiguration = $this->getMockWithoutConstructor(ApplicationConfiguration::class);
16
        $applicationConfiguration
17
            ->expects($this->once())
18
            ->method('getParameter')
19
            ->with('fields_mapping')
20
            ->willReturn([
21
                ''
22
            ])
23
        ;
24
25
        $configuration = $this->getMockWithoutConstructor(AdminConfiguration::class);
26
        $configuration
27
            ->expects($this->once())
28
            ->method('isResolved')
29
            ->willReturn(true)
30
        ;
31
        $configuration
32
            ->expects($this->exactly(6))
33
            ->method('getParameter')
34
            ->willReturnMap([
35
                ['actions', [
36
                    'my-action' => [],
37
                ]],
38
                ['translation_pattern', 'test'],
39
                ['routing_url_pattern', 'test'],
40
                ['max_per_page', 10],
41
                ['form', 'FormType'],
42
            ])
43
        ;
44
        
45
        $factory = new ConfigurationFactory($applicationConfiguration);
46
        $actionConfiguration = $factory->create($configuration);
47
    
48
        $this->assertInstanceOf(ActionConfiguration::class, $actionConfiguration);
49
    }
50
}
51