CatCommandTest::catCommand()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 21

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 21
rs 9.584
c 0
b 0
f 0
cc 2
nc 2
nop 0
1
<?php
2
/**
3
 * VersionControl_HG
4
 * Simple OO implementation for Mercurial.
5
 *
6
 * PHP Version 5.4
7
 *
8
 * @copyright 2014 Siad Ardroumli
9
 * @license http://www.opensource.org/licenses/mit-license.php MIT
10
 * @link http://siad007.github.io/versioncontrol_hg
11
 */
12
13
namespace Siad007\VersionControl\HG\Tests\Command;
14
15
use Siad007\VersionControl\HG\Factory;
16
17
class CatCommandTest extends \PHPUnit_Framework_TestCase
18
{
19
    /**
20
     * @test
21
     */
22
    public function catCommand()
23
    {
24
        $catCmd = Factory::createCat();
25
        $catCmd->addFile('C:\\xampp\\file1\\');
26
        $catCmd->addFile('C:\\xampp\\file2\\');
27
        $catCmd->setRev('revision');
28
        $catCmd->setOutput('output');
29
        $catCmd->addInclude('includePattern');
30
        $catCmd->addExclude('excludePattern');
31
        $catCmd->setDecode(true);
32
33
        $file = '\'C:\xampp\file1\\\' \'C:\xampp\file2\\\'';
34
        $expected = 'hg cat --output ' . escapeshellarg('output') . ' --rev ' . escapeshellarg('revision') . ' --decode --include includePattern --exclude excludePattern ';
35
36
        if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
37
            $file = str_replace("'", '"', $file);
38
        }
39
40
        $this->assertSame($file, implode(' ', $catCmd->getFile()));
41
        $this->assertSame($expected . $file, $catCmd->asString());
42
    }
43
}
44