diff options
-rw-r--r-- | sapi/cli/tests/php_cli_server.inc | 21 | ||||
-rw-r--r-- | sapi/cli/tests/php_cli_server_001.phpt | 6 | ||||
-rw-r--r-- | sapi/cli/tests/php_cli_server_002.phpt | 4 | ||||
-rw-r--r-- | sapi/cli/tests/php_cli_server_003.phpt | 4 |
4 files changed, 15 insertions, 20 deletions
diff --git a/sapi/cli/tests/php_cli_server.inc b/sapi/cli/tests/php_cli_server.inc index 012efa704f..3a4e8ebb17 100644 --- a/sapi/cli/tests/php_cli_server.inc +++ b/sapi/cli/tests/php_cli_server.inc @@ -1,7 +1,8 @@ <?php define ("PHP_CLI_SERVER_ADDRESS", "localhost:8964"); -function php_cli_server_start($php_executable, $code = 'echo "Hello world";') { +function php_cli_server_start($code = 'echo "Hello world";') { + $php_executable = getenv('TEST_PHP_EXECUTABLE'); $doc_root = __DIR__; $router = "router.php"; file_put_contents($doc_root . '/' . $router, '<?php ' . $code . ' ?>'); @@ -12,18 +13,18 @@ function php_cli_server_start($php_executable, $code = 'echo "Hello world";') { 2 => STDERR, ); - $cmd = "{$php_executable} -t {$doc_root} -S " . PHP_CLI_SERVER_ADDRESS . " {$router}"; + $cmd = "exec {$php_executable} -t {$doc_root} -S " . PHP_CLI_SERVER_ADDRESS . " {$router}"; $handle = proc_open($cmd, $descriptorspec, $pipes, $doc_root); - sleep(1); - return $handle; -} + register_shutdown_function( + function($handle) { + proc_terminate($handle); + @unlink(__DIR__ . "/router.php"); + }, + $handle + ); -function php_cli_server_shutdown($handle) { - proc_terminate($handle); - proc_close($handle); - @unlink(__DIR__ . "router.php"); - return true; + usleep(50000); } ?> diff --git a/sapi/cli/tests/php_cli_server_001.phpt b/sapi/cli/tests/php_cli_server_001.phpt index 30d72700ba..27c81bb6ba 100644 --- a/sapi/cli/tests/php_cli_server_001.phpt +++ b/sapi/cli/tests/php_cli_server_001.phpt @@ -12,10 +12,8 @@ if (substr(PHP_OS, 0, 3) == 'WIN') { --FILE-- <?php include "php_cli_server.inc"; -$php = getenv('TEST_PHP_EXECUTABLE'); -$handle = php_cli_server_start($php); +php_cli_server_start(); var_dump(file_get_contents("http://" . PHP_CLI_SERVER_ADDRESS)); -php_cli_server_shutdown($handle); ?> ---EXPECT-- +--EXPECT-- string(11) "Hello world" diff --git a/sapi/cli/tests/php_cli_server_002.phpt b/sapi/cli/tests/php_cli_server_002.phpt index 046dd731c1..e1120d61bf 100644 --- a/sapi/cli/tests/php_cli_server_002.phpt +++ b/sapi/cli/tests/php_cli_server_002.phpt @@ -12,10 +12,8 @@ if (substr(PHP_OS, 0, 3) == 'WIN') { --FILE-- <?php include "php_cli_server.inc"; -$php = getenv('TEST_PHP_EXECUTABLE'); -$handle = php_cli_server_start($php, 'var_dump($_SERVER["DOCUMENT_ROOT"], $_SERVER["SERVER_SOFTWARE"]);'); +php_cli_server_start('var_dump($_SERVER["DOCUMENT_ROOT"], $_SERVER["SERVER_SOFTWARE"]);'); var_dump(file_get_contents("http://" . PHP_CLI_SERVER_ADDRESS)); -php_cli_server_shutdown($handle); ?> --EXPECTF-- string(%d) "string(%d) "%s/tests" diff --git a/sapi/cli/tests/php_cli_server_003.phpt b/sapi/cli/tests/php_cli_server_003.phpt index 0fe104ff6a..8e7f11fed7 100644 --- a/sapi/cli/tests/php_cli_server_003.phpt +++ b/sapi/cli/tests/php_cli_server_003.phpt @@ -12,11 +12,9 @@ if (substr(PHP_OS, 0, 3) == 'WIN') { --FILE-- <?php include "php_cli_server.inc"; -$php = getenv('TEST_PHP_EXECUTABLE'); -$handle = php_cli_server_start($php, 'chdir("/tmp"); echo "okey";'); +php_cli_server_start('chdir("/tmp"); echo "okey";'); var_dump(file_get_contents("http://" . PHP_CLI_SERVER_ADDRESS)); var_dump(file_get_contents("http://" . PHP_CLI_SERVER_ADDRESS)); -php_cli_server_shutdown($handle); ?> --EXPECTF-- string(4) "okey" |