PEAR2_Pyrus_Developer-0.2.0 › PEAR2_Pyrus_Developer-0.2.0/php/pear2/Pyrus/Developer/CoverageAnalyzer/test-modified.php
- PEAR2_Pyrus_Developer-0.2.0/
- customcommand/
- PEAR2_Pyrus_Developer/
- pear2.php.net/
- PEAR2_Pyrus_Developer/
- data/
- PEAR2_Pyrus_Developer/
- php/
- pear2/
- Autoload.php
- Exception.php
- MultiErrors/
- MultiErrors.php
- Pyrus/
- Developer/
- CoverageAnalyzer/
- Creator/
- PackageFile/
- Runphpt/
- Developer/
- pear2/
- customcommand/
- package.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php
namespace {
$force = false;
$norender = false;
if (isset($_SERVER['argv'][1])) {
$arg = $_SERVER['argv'][1];
if ($arg === '--force') {
$force = true;
if (!isset($_SERVER['argv'][2])) {
goto skippy;
}
// check if we only want to rebuild the coverage db
if ($_SERVER['argv'][2] === '--norender') {
$norender = true;
if (!isset($_SERVER['argv'][3])) {
goto skippy;
}
}
} elseif ($arg === '--norender') {
$norender = true;
if (!isset($_SERVER['argv'][2])) {
goto skippy;
}
if ($_SERVER['argv'][2] === '--force') {
$force = true;
if (!isset($_SERVER['argv'][3])) {
goto skippy;
}
}
}
}
skippy:
function __autoload($c)
{
$c = str_replace(array('pear2\Pyrus\Developer\CoverageAnalyzer\\',
'\\'), array('', '/'), $c);
include __DIR__ . '/' . $c . '.php';
}
$e = error_reporting();
error_reporting(0);
require_once 'PEAR/Command/Test.php';
require_once 'PEAR/Frontend/CLI.php';
require_once 'PEAR/Config.php';
$cli = new PEAR_Frontend_CLI;
$config = @PEAR_Config::singleton();
$test = new PEAR_Command_Test($cli, $config);
error_reporting($e);
}
namespace pear2\Pyrus\Developer\CoverageAnalyzer {
$codepath = realpath('../../../../../Pyrus/src');
$testpath = realpath('../../../../../Pyrus/tests');
$sqlite = new Sqlite($testpath . '/pear2coverage.db', $codepath, $testpath);
$modified = $sqlite->getModifiedTests();
if (!count($modified)) {
if ($force) {
goto dorender;
}
echo "No changes to coverage needed. Bye!\n";
exit;
}
$dir = getcwd();
chdir($testpath);
error_reporting(0);
$test->doRunTests('run-tests', array('coverage' => true), $modified);
error_reporting($e);
chdir($dir);
if (file_exists($testpath . '/run-tests.log')) {
// tests failed
echo "Tests failed - not regenerating coverage data\n";
exit;
}
dorender:
$a = new Aggregator($testpath,
$codepath,
$testpath . '/pear2coverage.db');
if ($norender) {
exit;
}
if (file_exists(__DIR__ . '/test')) {
foreach (new \DirectoryIterator(__DIR__ . '/test') as $file) {
if ($file->isDot()) continue;
unlink($file->getPathName());
}
} else {
mkdir(__DIR__ . '/test');
}
echo "Rendering\n";
$a->render(__DIR__ . '/test');
echo "Done rendering\n";
}
?>
EOF
