iliaa Thu Jul 24 13:44:16 2003 EDT Modified files: /php-src run-tests.php Makefile.global Log: When encountering a test that users GET/POST make run-tests.php use CGI sapi if it is avaliable. If CLI sapi is not avaliable print a clear error when make test is executed. Index: php-src/run-tests.php diff -u php-src/run-tests.php:1.166 php-src/run-tests.php:1.167 --- php-src/run-tests.php:1.166 Tue Jun 10 16:03:24 2003 +++ php-src/run-tests.php Thu Jul 24 13:44:16 2003 @@ -117,7 +117,7 @@ putenv("TEST_PHP_EXECUTABLE=$php"); } } -if (!file_exists($php)) { +if (empty($php) || !file_exists($php)) { error("environment variable TEST_PHP_EXECUTABLE must be set to specify PHP executable!"); } @@ -665,6 +665,14 @@ } fclose($fp); + /* For GET/POST tests, check if cgi sapi is avaliable and if it is, use it. */ + if ((!empty($section_text['GET']) || !empty($section_text['POST']))) { + if (file_exists("./sapi/cgi/php")) { + $old_php = $php; + $php = realpath("./sapi/cgi/php") . ' -C '; + } + } + $shortname = str_replace($cwd.'/', '', $file); $tested = trim($section_text['TEST'])." [$shortname]"; @@ -708,6 +716,9 @@ } else { echo "\n"; } + if (isset($old_php)) { + $php = $old_php; + } return 'SKIPPED'; } if (eregi("^info", trim($output))) { @@ -795,6 +806,11 @@ $output = trim($out); $output = preg_replace('/\r\n/',"\n",$output); + /* when using CGI, strip the headers from the output */ + if (isset($old_php) && ($pos = strpos($output, "\n\n")) !== FALSE) { + $output = substr($output, ($pos + 2)); + } + if (isset($section_text['EXPECTF']) || isset($section_text['EXPECTREGEX'])) { if (isset($section_text['EXPECTF'])) { $wanted = trim($section_text['EXPECTF']); @@ -821,6 +837,9 @@ if (preg_match("/^$wanted_re\$/s", $output)) { @unlink($tmp_file); echo "PASS $tested\n"; + if (isset($old_php)) { + $php = $old_php; + } return 'PASSED'; } @@ -832,6 +851,9 @@ if ($ok) { @unlink($tmp_file); echo "PASS $tested\n"; + if (isset($old_php)) { + $php = $old_php; + } return 'PASSED'; } } @@ -888,6 +910,10 @@ "); fclose($log); error_report($file,$logname,$tested); + } + + if (isset($old_php)) { + $php = $old_php; } return $warn ? 'WARNED' : 'FAILED'; Index: php-src/Makefile.global diff -u php-src/Makefile.global:1.49 php-src/Makefile.global:1.50 --- php-src/Makefile.global:1.49 Tue Jul 1 22:38:47 2003 +++ php-src/Makefile.global Thu Jul 24 13:44:16 2003 @@ -50,11 +50,15 @@ install-su: install-pear install-tester -test: $(SAPI_CLI_PATH) - @TEST_PHP_EXECUTABLE=$(top_builddir)/$(SAPI_CLI_PATH) \ - TEST_PHP_SRCDIR=$(top_srcdir) \ - CC="$(CC)" \ - $(top_builddir)/$(SAPI_CLI_PATH) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' $(top_srcdir)/run-tests.php $(TESTS) +test: + [EMAIL PROTECTED] test -x $(SAPI_CLI_PATH) && test ! -z $(SAPI_CLI_PATH); then \ + TEST_PHP_EXECUTABLE=$(top_builddir)/$(SAPI_CLI_PATH) \ + TEST_PHP_SRCDIR=$(top_srcdir) \ + CC="$(CC)" \ + $(top_builddir)/$(SAPI_CLI_PATH) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' $(top_srcdir)/run-tests.php $(TESTS); \ + else \ + echo "ERROR: Cannot run tests without CLI sapi."; \ + fi clean: find . -name \*.lo -o -name \*.o | xargs rm -f
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php