setMask($foreignException); $this->assertEquals('This is a general error', $exceptionMask->getMessage()); } public function testCmsExceptionPhp() { $theme = Theme::load('test'); $router = new Router($theme); $page = $router->findByUrl('/throw-php'); $error = [ 'file' => 'test.php', 'line' => 20, ]; $foreignException = new \Symfony\Component\ErrorHandler\Error\FatalError('This is a general error', 100, $error); $this->setProtectedProperty($foreignException, 'file', "/modules/cms/classes/CodeParser.php(165) : eval()'d code line 7"); $exception = new CmsException($page, 300); $exception->setMask($foreignException); $this->assertEquals($page->getFilePath(), $exception->getFile()); $this->assertEquals('PHP Content', $exception->getErrorType()); $this->assertEquals('This is a general error', $exception->getMessage()); } }