/** * Tests Json::onPhpbuEnd */ public function testOutput() { // result mock $result = $this->getResultMock(); // debug event mock $debugEvent = $this->getMockBuilder('\\phpbu\\App\\Event\\Debug')->disableOriginalConstructor()->getMock(); $debugEvent->method('getMessage')->willReturn('debug'); // phpbu end event mock $phpbuEndEvent = $this->getMockBuilder('\\phpbu\\App\\Event\\App\\End')->disableOriginalConstructor()->getMock(); $phpbuEndEvent->method('getResult')->willReturn($result); $json = new Json(); $json->setup(['target' => 'php://output']); $json->onDebug($debugEvent); ob_flush(); ob_start(); $json->onPhpbuEnd($phpbuEndEvent); $outputJson = ob_get_clean(); $outputPHP = json_decode($outputJson); $this->assertTrue(is_a($outputPHP, '\\stdClass')); }