object = $this->getMockForAbstractClass('PMA_Error_Handler'); } /** * Tears down the fixture, for example, closes a network connection. * This method is called after a test is executed. * * @access protected * @return void */ protected function tearDown() { unset($this->object); } /** * Call protected functions by making the visibitlity to public. * * @param string $name method name * @param array $params parameters for the invocation * * @return the output from the protected method. */ private function _callProtectedFunction($name, $params) { $class = new ReflectionClass('PMA_Error_Handler'); $method = $class->getMethod($name); $method->setAccessible(true); return $method->invokeArgs($this->object, $params); } /** * @param integer $errno error number * @param string $errstr error string * @param string $errfile error file * @param integer $errline error line * @param $output output from the handleError method * * @dataProvider providerForTestHandleError */ public function testHandleError($errno, $errstr, $errfile, $errline, $output) { $GLOBALS['cfg']['Error_Handler']['gather'] = true; $this->assertEquals($this->object->handleError($errno, $errstr, $errfile, $errline), $output); } /** * @return array data for testHandleError */ public function providerForTestHandleError() { return array( array( '1024', 'Compile Error', 'error.txt', 12, '' ) ); } /** * Test for logError */ // public function testLogError(){ // // $error = new PMA_Error('2', 'Compile Error', 'error.txt', 15); // // $this->assertTrue( // $this->_callProtectedFunction( // 'logError', // array($error) // ) // ); // } /** * Test for getDispUserErrors */ public function testGetDispUserErrors() { $this->assertEquals($this->object->getDispUserErrors(), '
Compile Error
' ); } /** * Test for getDispErrors */ public function testGetDispErrorsForDisplayFalse() { $GLOBALS['cfg']['Error_Handler']['display'] = false; $this->assertEquals($this->object->getDispUserErrors(), '' ); } /** * Test for getDispErrors */ public function testGetDispErrorsForDisplayTrue() { $GLOBALS['cfg']['Error_Handler']['display'] = true; $this->assertEquals($this->object->getDispErrors(), '' ); } /** * Test for checkSavedErrors */ public function testCheckSavedErrors() { $_SESSION['errors'] = true; $this->_callProtectedFunction( 'checkSavedErrors', array() ); $this->assertTrue(!isset($_SESSION['errors'])); } /** * Test for countErrors */ public function testCountErrors() { $err = array(); $err[] = new PMA_Error('256', 'Compile Error', 'error.txt', 15); $errHandler = $this->getMock('PMA_Error_Handler'); $errHandler->expects($this->any()) ->method('getErrors') ->will($this->returnValue($err)); $this->assertEquals($this->object->countErrors(), 0 ); } /** * Test for countUserErrors */ public function testCountUserErrors() { $err = array(); $err[] = new PMA_Error('256', 'Compile Error', 'error.txt', 15); $errHandler = $this->getMock('PMA_Error_Handler'); $errHandler->expects($this->any()) ->method('countErrors', 'getErrors') ->will($this->returnValue(1, $err)); $this->assertEquals($this->object->countUserErrors(), 0 ); } /** * Test for hasUserErrors */ public function testHasUserErrors() { $this->assertFalse($this->object->hasUserErrors()); } /** * Test for hasErrors */ public function testHasErrors() { $this->assertFalse($this->object->hasErrors()); } /** * Test for countDisplayErrors */ public function testCountDisplayErrorsForDisplayTrue() { $GLOBALS['cfg']['Error_Handler']['display'] = true; $this->assertEquals($this->object->countDisplayErrors(), 0 ); } /** * Test for countDisplayErrors */ public function testCountDisplayErrorsForDisplayFalse() { $GLOBALS['cfg']['Error_Handler']['display'] = false; $this->assertEquals($this->object->countDisplayErrors(), 0 ); } /** * Test for hasDisplayErrors */ public function testHasDisplayErrors() { $this->assertFalse($this->object->hasDisplayErrors()); } }