$this->
assertSession()->
pageTextContains('The website encountered an unexpected error. Please try again later.'
);
$this->
assertSession()->
pageTextContains($this->expectedExceptionMessage
);
$this->
assertErrorLogged($this->expectedExceptionMessage
);
} /**
* Tests displaying an uncaught fatal error.
*/
public function testUncaughtFatalError() { $fatal_error =
[ '%type' => 'TypeError',
'@message' => 'Drupal\error_test\Controller\ErrorTestController::Drupal\error_test\Controller\{closure}(): Argument #1 ($test) must be of type array, string given, called in ' . \Drupal::
root() . '/core/modules/system/tests/modules/error_test/src/Controller/ErrorTestController.php on line 65',
'%function' => 'Drupal\error_test\Controller\ErrorTestController->Drupal\error_test\Controller\{closure}()',
];
$this->
drupalGet('error-test/generate-fatals'
);
$this->
assertSession()->
statusCodeEquals(500
);
$message =
new FormattableMarkup('%type: @message in %function (line ',
$fatal_error);
$this->
assertSession()->
responseContains((string) $message);
$this->
assertSession()->
responseContains('<pre class="backtrace">'
);
// Ensure we are escaping but not double escaping.
$this->
assertSession()->
responseContains('>'
);
$this->
assertSession()->
responseNotContains('&gt;'
);
}