blob: 33c639de7c29579be275cec671e240766f3a754f [file] [log] [blame]
<?php
/**
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* @category tests
* @package log4php
* @license http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0
* @link http://logging.apache.org/log4php
*/
use PHPUnit\Framework\TestCase;
/**
* @group main
*/
class LoggerThrowableInformationTest extends TestCase {
public function testConstructor() {
$ex = new Exception();
$tInfo = new LoggerThrowableInformation($ex);
$result = $tInfo->getStringRepresentation();
$this->assertInternalType('array', $result);
}
public function testExceptionChain() {
$ex1 = new LoggerThrowableInformationTestException('Message1');
$ex2 = new LoggerThrowableInformationTestException('Message2', 0, $ex1);
$ex3 = new LoggerThrowableInformationTestException('Message3', 0, $ex2);
$tInfo = new LoggerThrowableInformation($ex3);
$result = $tInfo->getStringRepresentation();
$this->assertInternalType('array', $result);
}
public function testGetThrowable() {
$ex = new LoggerThrowableInformationTestException('Message1');
$tInfo = new LoggerThrowableInformation($ex);
$result = $tInfo->getThrowable();
$this->assertEquals($ex, $result);
}
}
if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
class LoggerThrowableInformationTestException extends Exception { }
} else {
class LoggerThrowableInformationTestException extends Exception {
protected $previous;
public function __construct($message = '', $code = 0, Exception $previous = null) {
parent::__construct($message, $code);
$this->previous = $previous;
}
public function getPrevious() {
return $this->previous;
}
}
}
?>