1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
<?php declare(strict_types=1);
/*
* This file is part of PHPUnit.
*
* (c) Sebastian Bergmann <sebastian@phpunit.de>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace PHPUnit\TestFixture;
use Exception;
use InvalidArgumentException;
use PHPUnit;
use PHPUnit\Framework\ExpectationFailedException;
use PHPUnit\Framework\TestCase;
final class ExceptionStackTest extends TestCase
{
public function testPrintingChildException(): void
{
try {
$this->assertEquals([1], [2], 'message');
} catch (ExpectationFailedException $e) {
$message = $e->getMessage() . $e->getComparisonFailure()->getDiff();
throw new PHPUnit\Framework\Exception("Child exception\n{$message}", 101, $e);
}
}
public function testNestedExceptions(): void
{
$exceptionThree = new Exception('Three');
$exceptionTwo = new InvalidArgumentException('Two', 0, $exceptionThree);
$exceptionOne = new Exception('One', 0, $exceptionTwo);
throw $exceptionOne;
}
}
|