我有一个PHP类,它输出相应的image/jpeg
内容标题和JPG二进制数据。我想使用PHPUnit测试该类,以确保它输出正确的图像。
我的测试方法是:
public function testNotFound(){
ob_start(NULL,0);
Model\Photo::deliver('blabbityblabbyblab');
$content = ob_get_clean();
$this->assertEquals(50,strlen($content));
}
Model\Photo
将输出特定的已知图像。但是,断言永远不会运行,我得到PHPUnit生成的错误:
Test code or tested code did not (only) close its own output buffers
我如何只关闭我在测试方法中启动的缓冲区?
答案 0 :(得分:0)
最近也让我感到沮丧。您似乎使用的是更高版本的PHPUnit(例如4.5)。他们changed the way that output buffering is handled通过以下方式:
expectOutputString(string $expectedString)
expectOutputRegex(string $regularExpression)
我相信您的示例可以使用RegEx方法确保图像中出现预期的EXIF数据字符串或其他测试。