PageRenderTime 46ms CodeModel.GetById 20ms RepoModel.GetById 1ms app.codeStats 0ms

/sapi/cli/tests/016.phpt

http://github.com/php/php-src
Unknown | 128 lines | 107 code | 21 blank | 0 comment | 0 complexity | b9befb2bca97d56d9e261360e7917bad MD5 | raw file
Possible License(s): BSD-2-Clause, BSD-3-Clause, MPL-2.0-no-copyleft-exception, LGPL-2.1
  1. --TEST--
  2. CLI -a and readline
  3. --SKIPIF--
  4. <?php
  5. include "skipif.inc";
  6. if (!extension_loaded('readline') || readline_info('done') === NULL) {
  7. die ("skip need readline support");
  8. }
  9. ?>
  10. --FILE--
  11. <?php
  12. $php = getenv('TEST_PHP_EXECUTABLE');
  13. // disallow console escape sequences that may break the output
  14. putenv('TERM=VT100');
  15. $codes = array();
  16. $codes[1] = <<<EOT
  17. echo 'Hello world';
  18. exit
  19. EOT;
  20. $codes[] = <<<EOT
  21. echo 'multine
  22. single
  23. quote';
  24. exit
  25. EOT;
  26. $codes[] = <<<EOT
  27. echo <<<HEREDOC
  28. Here
  29. comes
  30. the
  31. doc
  32. HEREDOC;
  33. EOT;
  34. $codes[] = <<<EOT
  35. if (0) {
  36. echo "I'm not there";
  37. }
  38. echo "Done";
  39. EOT;
  40. $codes[] = <<<EOT
  41. function a_function_with_some_name() {
  42. echo "I was called!";
  43. }
  44. a_function_w );
  45. EOT;
  46. foreach ($codes as $key => $code) {
  47. echo "\n--------------\nSnippet no. $key:\n--------------\n";
  48. $code = escapeshellarg($code);
  49. echo `echo $code | "$php" -a`, "\n";
  50. }
  51. echo "\nDone\n";
  52. ?>
  53. --EXPECTF--
  54. --------------
  55. Snippet no. 1:
  56. --------------
  57. Interactive shell
  58. php > echo 'Hello world';
  59. Hello world
  60. php > exit
  61. --------------
  62. Snippet no. 2:
  63. --------------
  64. Interactive shell
  65. php > echo 'multine
  66. php ' single
  67. php ' quote';
  68. multine
  69. single
  70. quote
  71. php > exit
  72. --------------
  73. Snippet no. 3:
  74. --------------
  75. Interactive shell
  76. php > echo <<<HEREDOC
  77. <<< > Here
  78. <<< > comes
  79. <<< > the
  80. <<< > doc
  81. <<< > HEREDOC;
  82. Here
  83. comes
  84. the
  85. doc
  86. php >
  87. --------------
  88. Snippet no. 4:
  89. --------------
  90. Interactive shell
  91. php > if (0) {
  92. php { echo "I'm not there";
  93. php { }
  94. php > echo "Done";
  95. Done
  96. php >
  97. --------------
  98. Snippet no. 5:
  99. --------------
  100. Interactive shell
  101. php > function a_function_with_some_name() {
  102. php { echo "I was called!";
  103. php { }
  104. php > a_function_with_some_name();
  105. I was called!
  106. php >
  107. Done