diff options
author | Hannes Magnusson <bjori@php.net> | 2011-09-01 11:00:51 +0000 |
---|---|---|
committer | Hannes Magnusson <bjori@php.net> | 2011-09-01 11:00:51 +0000 |
commit | 2da2b548994a0e50aa3763f96469d91940b198b7 (patch) | |
tree | 3eaf9ff226994f5dd8fa899675f88280b1c22985 | |
parent | 53ee01975ff377ccedca379b4aa034fbbe3cca5b (diff) | |
download | php-git-2da2b548994a0e50aa3763f96469d91940b198b7.tar.gz |
Seeing thousands of PASS tests flying by is meaningless.
Add an option to only print certain result groups.
-rwxr-xr-x | run-tests.php | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/run-tests.php b/run-tests.php index ae65a43e65..10154fb0ee 100755 --- a/run-tests.php +++ b/run-tests.php @@ -207,6 +207,12 @@ if (getenv('TEST_PHP_DETAILED')) { $DETAILED = 0; } +if (getenv('SHOW_ONLY_GROUPS')) { + $SHOW_ONLY_GROUPS = explode(",", getenv('SHOW_ONLY_GROUPS')); +} else { + $SHOW_ONLY_GROUPS = array(); +} + // Check whether user test dirs are requested. if (getenv('TEST_PHP_USER')) { $user_tests = explode (',', getenv('TEST_PHP_USER')); @@ -560,6 +566,9 @@ if (isset($argc) && $argc > 1) { case 'd': $ini_overwrites[] = $argv[++$i]; break; + case 'g': + $SHOW_ONLY_GROUPS = explode(",", $argv[++$i]);; + break; //case 'h' case '--keep-all': foreach($cfgfiles as $file) { @@ -675,6 +684,9 @@ Options: -d foo=bar Pass -d option to the php binary (Define INI entry foo with value 'bar'). + -g Comma seperated list of groups to show during test run + (e.x. FAIL,SKIP). + -m Test for memory leaks with Valgrind. -p <php> Specify PHP executable to run. @@ -2426,16 +2438,24 @@ function show_redirect_ends($tests, $tested, $tested_file) function show_test($test_idx, $shortname) { global $test_cnt; + global $line_length; - echo "TEST $test_idx/$test_cnt [$shortname]\r"; + $str = "TEST $test_idx/$test_cnt [$shortname]\r"; + $line_length = strlen($str); + echo $str; flush(); } function show_result($result, $tested, $tested_file, $extra = '', $temp_filenames = null) { - global $html_output, $html_file, $temp_target, $temp_urlbase; + global $html_output, $html_file, $temp_target, $temp_urlbase, $line_length, $SHOW_ONLY_GROUPS; - echo "$result $tested [$tested_file] $extra\n"; + if (!$SHOW_ONLY_GROUPS || in_array($result, $SHOW_ONLY_GROUPS)) { + echo "$result $tested [$tested_file] $extra\n"; + } else { + // Write over the last line to avoid random trailing chars on next echo + echo str_repeat(" ", $line_length), "\r"; + } if ($html_output) { |