Completed
Push — master ( 8fb423...c81d0e )
by
unknown
04:06
created

ModuleConfigTest::testInvoke()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 25
Code Lines 20

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
dl 0
loc 25
rs 8.8571
c 1
b 0
f 1
cc 1
eloc 20
nc 1
nop 0
1
<?php
2
3
namespace ReddogsTest\Doctrine\Migrations;
4
5
use Reddogs\Doctrine\Migrations\ModuleConfig;
6
use Reddogs\Doctrine\Migrations\GenerateCommand;
7
use Reddogs\Doctrine\Migrations\LatestCommand;
8
use Reddogs\Doctrine\Migrations\MigrateCommand;
9
use Reddogs\Doctrine\Migrations\MigrateAllCommand;
10
use Reddogs\Doctrine\Migrations\ExecuteCommand;
11
use Reddogs\Doctrine\Migrations\StatusCommand;
12
use Reddogs\Doctrine\Migrations\CommandFactory;
13
14
class ModuleConfigTest extends \PHPUnit_Framework_TestCase
15
{
16
    public function testInvoke()
17
    {
18
        $moduleConfig = new ModuleConfig();
19
        $config = $moduleConfig->__invoke();
20
        $this->assertInternalType('array', $config);
21
        $this->assertArrayHasKey('console_routes', $config);
22
        $this->assertArrayHasKey('dependencies', $config);
23
24
        $factories = $config['dependencies']['factories'];
25
26
        $this->assertEquals(CommandFactory::class, $factories[ExecuteCommand::class]);
27
        $this->assertEquals(CommandFactory::class, $factories[GenerateCommand::class]);
28
        $this->assertEquals(CommandFactory::class, $factories[LatestCommand::class]);
29
        $this->assertEquals(CommandFactory::class, $factories[MigrateCommand::class]);
30
        $this->assertEquals(CommandFactory::class, $factories[MigrateAllCommand::class]);
31
        $this->assertEquals(CommandFactory::class, $factories[StatusCommand::class]);
32
33
        $routes = $config['console_routes'];
34
        $this->assertEquals(ExecuteCommand::class, $routes['mogrations:execute']['handler']);
35
        $this->assertEquals(GenerateCommand::class, $routes['mogrations:generate']['handler']);
36
        $this->assertEquals(LatestCommand::class, $routes['mogrations:latest']['handler']);
37
        $this->assertEquals(MigrateCommand::class, $routes['mogrations:migrate']['handler']);
38
        $this->assertEquals(MigrateAllCommand::class, $routes['mogrations:migrate-all']['handler']);
39
        $this->assertEquals(StatusCommand::class, $routes['mogrations:status']['handler']);
40
    }
41
}