Skip to content

Commit

Permalink
Initial work on Error and ErrorTestCase
Browse files Browse the repository at this point in the history
  • Loading branch information
sebastianbergmann committed Oct 25, 2020
1 parent fbd0ef9 commit 068e79c
Show file tree
Hide file tree
Showing 2 changed files with 90 additions and 0 deletions.
66 changes: 66 additions & 0 deletions src/Framework/ErrorTestCase.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
<?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;

/**
* @internal This class is not covered by the backward compatibility promise for PHPUnit
*/
final class ErrorTestCase extends TestCase
{
/**
* @var bool
*/
protected $backupGlobals = false;

/**
* @var bool
*/
protected $backupStaticAttributes = false;

/**
* @var bool
*/
protected $runTestInSeparateProcess = false;

/**
* @var string
*/
private $message;

public function __construct(string $message = '')
{
$this->message = $message;

parent::__construct('Error');
}

public function getMessage(): string
{
return $this->message;
}

/**
* Returns a string representation of the test case.
*/
public function toString(): string
{
return 'Error';
}

/**
* @throws Exception
*
* @psalm-return never-return
*/
protected function runTest(): void
{
throw new Error($this->message);
}
}
24 changes: 24 additions & 0 deletions src/Framework/Exception/Error.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?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;

/**
* @internal This class is not covered by the backward compatibility promise for PHPUnit
*/
final class Error extends Exception implements SelfDescribing
{
/**
* Wrapper for getMessage() which is declared as final.
*/
public function toString(): string
{
return $this->getMessage();
}
}

0 comments on commit 068e79c

Please sign in to comment.