4 * This file is part of Psy Shell.
6 * (c) 2012-2018 Justin Hileman
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
12 namespace Psy\Test\Exception;
14 use Psy\Exception\ParseErrorException;
16 class ParseErrorExceptionTest extends \PHPUnit\Framework\TestCase
18 public function testInstance()
20 $e = new ParseErrorException();
22 $this->assertInstanceOf('Psy\Exception\Exception', $e);
23 $this->assertInstanceOf('PhpParser\Error', $e);
24 $this->assertInstanceOf('Psy\Exception\ParseErrorException', $e);
27 public function testMessage()
29 $e = new ParseErrorException('{msg}', 1);
31 $this->assertContains('{msg}', $e->getMessage());
32 $this->assertContains('PHP Parse error:', $e->getMessage());
35 public function testConstructFromParseError()
37 $e = ParseErrorException::fromParseError(new \PhpParser\Error('{msg}'));
39 $this->assertContains('{msg}', $e->getRawMessage());
40 $this->assertContains('PHP Parse error:', $e->getMessage());