如何在PHPUnit中测试STDIN

前端之家收集整理的这篇文章主要介绍了如何在PHPUnit中测试STDIN前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有读取器类从stdin读取并返回readed值.
class Reader 
{
    const STREAM_READ = 'PHP://stdin';

    private $_streamHandle;

    public function __construct($stream = self::STREAM_READ)
    {
        $this->_streamHandle = fopen($stream,'r');
    }

    public function getReadedValue()
    {
        $value = trim(fgets($this->_streamHandle));

        return $value;
    }

    public function __destruct()
    {
        fclose($this->_streamHandle);
    }
}

现在是我的问题,我如何测试这个类,从stdin读取一些东西并通过getReadedValue()函数返回readed值?

您测试Reader,而不是STDIN是否正常工作.

因为你测试单元(Reader)所以文件名是什么并不重要,因为它只是可选的.您可以注入不同的内容,例如临时文件文件名.

猜你在找的PHP相关文章