Completed
Push — master ( 7c1eaa...80d841 )
by Joachim
15:53
created

SyncTerminalsCommandTest::testExecute()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 21
Code Lines 14

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 21
c 0
b 0
f 0
rs 9.3142
cc 1
eloc 14
nc 1
nop 0
1
<?php
2
3
namespace Loevgaard\DandomainAltapayBundle\Tests\Command;
4
5
use Loevgaard\AltaPay\Client;
6
use Loevgaard\DandomainAltapayBundle\Command\SyncTerminalsCommand;
7
use Loevgaard\DandomainAltapayBundle\Manager\TerminalManager;
8
use Loevgaard\DandomainAltapayBundle\Synchronizer\TerminalSynchronizer;
9
use PHPUnit\Framework\TestCase;
10
use Symfony\Component\Console\Application;
11
use Symfony\Component\Console\Tester\CommandTester;
12
13
class SyncTerminalsCommandTest extends TestCase
14
{
15
    public function testExecute()
16
    {
17
        $terminalManager = $this->createMock(TerminalManager::class);
18
        $altapayClient = $this->createMock(Client::class);
19
        $terminalSynchronizer = new TerminalSynchronizer($terminalManager, $altapayClient);
20
21
        $command = new SyncTerminalsCommand();
22
        $command->setTerminalSynchronizer($terminalSynchronizer);
23
24
        $application = new Application();
25
        $application->setAutoExit(false);
26
        $application->add($command);
27
28
        $command = $application->find('loevgaard:dandomain:altapay:sync-terminals');
29
        $commandTester = new CommandTester($command);
30
        $exitCode = $commandTester->execute([
31
            'command' => $command->getName(),
32
        ]);
33
34
        $this->assertSame(0, $exitCode, 'Returns 0 in case of success');
35
    }
36
}
37