TestConsoleOutput.php 745 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. App::uses('ConsoleOutput', 'Console');
  3. /**
  4. * Use as
  5. *
  6. * App::uses('TestConsoleOutput', 'Tools.TestSuite');
  7. *
  8. * $stdOut = new TestConsoleOutput();
  9. * $this->MyShell = new MyShell($stdOut);
  10. *
  11. * @license MIT
  12. * @author Mark Scherer
  13. */
  14. class TestConsoleOutput extends ConsoleOutput {
  15. /**
  16. * Holds all output messages.
  17. *
  18. * @var array
  19. */
  20. public $output = array();
  21. /**
  22. * Overwrite _write to output the message to debug instead of CLI.
  23. *
  24. * @param string $message
  25. * @return void
  26. */
  27. protected function _write($message) {
  28. $this->output[] = $message;
  29. }
  30. /**
  31. * Helper method to return the debug output as string.
  32. *
  33. * @return string
  34. */
  35. public function output() {
  36. return implode('', $this->output);
  37. }
  38. }