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 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
<?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\Framework;
use function print_r;
use BadFunctionCallException;
use Exception;
/**
* @small
*/
final class ExceptionWrapperTest extends TestCase
{
/**
* @runInSeparateProcess
*/
public function testGetOriginalException(): void
{
$e = new BadFunctionCallException('custom class exception');
$wrapper = new ExceptionWrapper($e);
$this->assertInstanceOf(BadFunctionCallException::class, $wrapper->getOriginalException());
}
/**
* @runInSeparateProcess
*/
public function testGetOriginalExceptionWithPrevious(): void
{
$e = new BadFunctionCallException('custom class exception', 0, new Exception('previous'));
$wrapper = new ExceptionWrapper($e);
$this->assertInstanceOf(BadFunctionCallException::class, $wrapper->getOriginalException());
}
/**
* @runInSeparateProcess
*/
public function testNoOriginalExceptionInStacktrace(): void
{
$e = new BadFunctionCallException('custom class exception');
$wrapper = new ExceptionWrapper($e);
// Replace the only mention of "BadFunctionCallException" in wrapper
$wrapper->setClassName('MyException');
$data = print_r($wrapper, true);
$this->assertStringNotContainsString(
'BadFunctionCallException',
$data,
'Assert there is s no other BadFunctionCallException mention in stacktrace'
);
}
}
|