Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/cakephp/cakephp/src/TestSuite/Stub/ConsoleOutput.php
<?php
/**
 * CakePHP :  Rapid Development Framework (https://cakephp.org)
 * Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
 *
 * Licensed under The MIT License
 * For full copyright and license information, please see the LICENSE.txt
 * Redistributions of files must retain the above copyright notice.
 *
 * @copyright     Copyright (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
 * @link          https://cakephp.org CakePHP Project
 * @license       https://opensource.org/licenses/mit-license.php MIT License
 */
namespace Cake\TestSuite\Stub;

use
Cake\Console\ConsoleOutput as ConsoleOutputBase;

/**
 * StubOutput makes testing shell commands/shell helpers easier.
 *
 * You can use this class by injecting it into a ConsoleIo instance
 * that your command/task/helper uses:
 *
 * ```
 * use Cake\Console\ConsoleIo;
 * use Cake\TestSuite\Stub\ConsoleOutput;
 *
 * $output = new ConsoleOutput();
 * $io = new ConsoleIo($output);
 * ```
 */
class ConsoleOutput extends ConsoleOutputBase
{
   
/**
     * Buffered messages.
     *
     * @var array
     */
   
protected $_out = [];

   
/**
     * Write output to the buffer.
     *
     * @param string|string[] $message A string or an array of strings to output
     * @param int $newlines Number of newlines to append
     * @return void
     */
   
public function write($message, $newlines = 1)
    {
        foreach ((array)
$message as $line) {
           
$this->_out[] = $line;
        }

       
$newlines--;
        while (
$newlines > 0) {
           
$this->_out[] = '';
           
$newlines--;
        }
    }

   
/**
     * Get the buffered output.
     *
     * @return array
     */
   
public function messages()
    {
        return
$this->_out;
    }
}