Skip to content

Commit 2901df7

Browse files
Add tests
1 parent be334df commit 2901df7

10 files changed

+240
-0
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
phpcov merge --unknown-option ../../fixture/example/coverage
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$_SERVER['argv'][1] = 'merge';
10+
$_SERVER['argv'][2] = '--unknown-option';
11+
$_SERVER['argv'][3] = __DIR__ . '/../../fixture/example/coverage';
12+
13+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
14+
--EXPECTF--
15+
phpcov %s by Sebastian Bergmann.
16+
17+
%s
18+
int(1)
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
phpcov merge --clover /tmp/file ../../fixture/example/coverage
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$tmp = tempnam(sys_get_temp_dir(), __FILE__);
10+
11+
$_SERVER['argv'][1] = 'merge';
12+
$_SERVER['argv'][2] = '--clover';
13+
$_SERVER['argv'][3] = $tmp;
14+
$_SERVER['argv'][4] = __DIR__ . '/../../fixture/example/coverage';
15+
16+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
17+
18+
unlink($tmp);
19+
--EXPECTF--
20+
phpcov %s by Sebastian Bergmann.
21+
22+
Generating code coverage report in Clover XML format ... done
23+
int(0)
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
phpcov merge --cobertura /tmp/file ../../fixture/example/coverage
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$tmp = tempnam(sys_get_temp_dir(), __FILE__);
10+
11+
$_SERVER['argv'][1] = 'merge';
12+
$_SERVER['argv'][2] = '--cobertura';
13+
$_SERVER['argv'][3] = $tmp;
14+
$_SERVER['argv'][4] = __DIR__ . '/../../fixture/example/coverage';
15+
16+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
17+
18+
unlink($tmp);
19+
--EXPECTF--
20+
phpcov %s by Sebastian Bergmann.
21+
22+
Generating code coverage report in Cobertura XML format ... done
23+
int(0)
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
phpcov merge --crap4j /tmp/file ../../fixture/example/coverage
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$tmp = tempnam(sys_get_temp_dir(), __FILE__);
10+
11+
$_SERVER['argv'][1] = 'merge';
12+
$_SERVER['argv'][2] = '--crap4j';
13+
$_SERVER['argv'][3] = $tmp;
14+
$_SERVER['argv'][4] = __DIR__ . '/../../fixture/example/coverage';
15+
16+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
17+
18+
unlink($tmp);
19+
--EXPECTF--
20+
phpcov %s by Sebastian Bergmann.
21+
22+
Generating code coverage report in Crap4J XML format ... done
23+
int(0)
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
--TEST--
2+
phpcov merge --html /tmp/dir ../../fixture/example/coverage
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$tmp = sys_get_temp_dir() . '/phpcov-html-' . uniqid();
10+
11+
$_SERVER['argv'][1] = 'merge';
12+
$_SERVER['argv'][2] = '--html';
13+
$_SERVER['argv'][3] = $tmp;
14+
$_SERVER['argv'][4] = __DIR__ . '/../../fixture/example/coverage';
15+
16+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
17+
18+
$files = new RecursiveIteratorIterator(
19+
new RecursiveDirectoryIterator($tmp, FilesystemIterator::SKIP_DOTS),
20+
RecursiveIteratorIterator::CHILD_FIRST,
21+
);
22+
23+
foreach ($files as $file) {
24+
$file->isDir() ? rmdir($file->getPathname()) : unlink($file->getPathname());
25+
}
26+
27+
rmdir($tmp);
28+
--EXPECTF--
29+
phpcov %s by Sebastian Bergmann.
30+
31+
Generating code coverage report in HTML format ... done
32+
int(0)
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
phpcov merge --openclover /tmp/file ../../fixture/example/coverage
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$tmp = tempnam(sys_get_temp_dir(), __FILE__);
10+
11+
$_SERVER['argv'][1] = 'merge';
12+
$_SERVER['argv'][2] = '--openclover';
13+
$_SERVER['argv'][3] = $tmp;
14+
$_SERVER['argv'][4] = __DIR__ . '/../../fixture/example/coverage';
15+
16+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
17+
18+
unlink($tmp);
19+
--EXPECTF--
20+
phpcov %s by Sebastian Bergmann.
21+
22+
Generating code coverage report in OpenClover XML format ... done
23+
int(0)
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
phpcov merge --php /tmp/file ../../fixture/example/coverage
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$tmp = tempnam(sys_get_temp_dir(), __FILE__);
10+
11+
$_SERVER['argv'][1] = 'merge';
12+
$_SERVER['argv'][2] = '--php';
13+
$_SERVER['argv'][3] = $tmp;
14+
$_SERVER['argv'][4] = __DIR__ . '/../../fixture/example/coverage';
15+
16+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
17+
18+
unlink($tmp);
19+
--EXPECTF--
20+
phpcov %s by Sebastian Bergmann.
21+
22+
Generating code coverage report in PHP format ... done
23+
int(0)
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
--TEST--
2+
phpcov merge --xml /tmp/dir ../../fixture/example/coverage
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$tmp = sys_get_temp_dir() . '/phpcov-xml-' . uniqid();
10+
11+
$_SERVER['argv'][1] = 'merge';
12+
$_SERVER['argv'][2] = '--xml';
13+
$_SERVER['argv'][3] = $tmp;
14+
$_SERVER['argv'][4] = __DIR__ . '/../../fixture/example/coverage';
15+
16+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
17+
18+
$files = new RecursiveIteratorIterator(
19+
new RecursiveDirectoryIterator($tmp, FilesystemIterator::SKIP_DOTS),
20+
RecursiveIteratorIterator::CHILD_FIRST,
21+
);
22+
23+
foreach ($files as $file) {
24+
$file->isDir() ? rmdir($file->getPathname()) : unlink($file->getPathname());
25+
}
26+
27+
rmdir($tmp);
28+
--EXPECTF--
29+
phpcov %s by Sebastian Bergmann.
30+
31+
Generating code coverage report in XML format ... done
32+
int(0)
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
--TEST--
2+
phpcov patch-coverage with invalid coverage file content
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$tmp = tempnam(sys_get_temp_dir(), __FILE__);
10+
file_put_contents($tmp, 'this is not valid coverage data');
11+
12+
$_SERVER['argv'][1] = 'patch-coverage';
13+
$_SERVER['argv'][2] = $tmp;
14+
$_SERVER['argv'][3] = __DIR__ . '/../../fixture/example/patch';
15+
16+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
17+
18+
unlink($tmp);
19+
--EXPECTF--
20+
phpcov %s by Sebastian Bergmann.
21+
22+
%s
23+
int(255)
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
--TEST--
2+
phpcov patch-coverage --path-prefix /path/prefix ../../fixture/example/coverage/testGreetsWithName.cov ../../fixture/example/patch
3+
--INI--
4+
xdebug.overload_var_dump=0
5+
--FILE--
6+
<?php declare(strict_types=1);
7+
require __DIR__ . '/../../../vendor/autoload.php';
8+
9+
$_SERVER['argv'][1] = 'patch-coverage';
10+
$_SERVER['argv'][2] = '--path-prefix';
11+
$_SERVER['argv'][3] = dirname(__DIR__, 3);
12+
$_SERVER['argv'][4] = __DIR__ . '/../../fixture/example/coverage/testGreetsWithName.cov';
13+
$_SERVER['argv'][5] = __DIR__ . '/../../fixture/example/patch';
14+
15+
var_dump((new SebastianBergmann\PHPCOV\Application)->run($_SERVER['argv']));
16+
--EXPECTF--
17+
phpcov %s by Sebastian Bergmann.
18+
19+
1 / 1 changed executable lines covered (100.00%)
20+
int(0)

0 commit comments

Comments
 (0)