bug64529.phpt 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. --TEST--
  2. Bug #64529 (Ran out of opcode space)
  3. --EXTENSIONS--
  4. readline
  5. --SKIPIF--
  6. <?php
  7. if (substr(PHP_OS, 0, 3) == "WIN") {
  8. die("skip non windows test");
  9. }
  10. if (!readline_info("done")) {
  11. die("skip readline support required");
  12. }
  13. exec('which expect', $output, $ret);
  14. if ($ret) {
  15. die("skip no expect installed");
  16. }
  17. ?>
  18. --FILE--
  19. <?php
  20. $expect_executable = trim(`which expect`);
  21. $php_executable = getenv('TEST_PHP_EXECUTABLE');
  22. $script = __DIR__ . "/expect.sh";
  23. if (extension_loaded("readline")) {
  24. $expect_script = <<<SCRIPT
  25. set php_executable [lindex \$argv 0]
  26. spawn \$php_executable -n -d cli.prompt="" -a
  27. expect "php >"
  28. send "echo 'hello world';\n"
  29. send "\04"
  30. expect eof
  31. exit
  32. SCRIPT;
  33. } else {
  34. $expect_script = <<<SCRIPT
  35. set php_executable [lindex \$argv 0]
  36. spawn \$php_executable -n -d cli.prompt="" -a
  37. expect "Interactive mode enabled"
  38. send "<?php echo 'hello world';\n"
  39. send "\04"
  40. expect eof
  41. exit
  42. SCRIPT;
  43. }
  44. file_put_contents($script, $expect_script);
  45. system($expect_executable . " " . $script . " " . $php_executable);
  46. @unlink($script);
  47. ?>
  48. --EXPECTF--
  49. spawn %sphp -n -d cli.prompt="" -a
  50. Interactive %s
  51. %Secho 'hello world';
  52. %Shello world