public function UncaughtExceptionTest::testUncaughtFatalError in Drupal 10
Same name and namespace in other branches
- 8 core/tests/Drupal/FunctionalTests/Bootstrap/UncaughtExceptionTest.php \Drupal\FunctionalTests\Bootstrap\UncaughtExceptionTest::testUncaughtFatalError()
- 9 core/tests/Drupal/FunctionalTests/Bootstrap/UncaughtExceptionTest.php \Drupal\FunctionalTests\Bootstrap\UncaughtExceptionTest::testUncaughtFatalError()
Tests displaying an uncaught fatal error.
File
- core/
tests/ Drupal/ FunctionalTests/ Bootstrap/ UncaughtExceptionTest.php, line 94
Class
- UncaughtExceptionTest
- Tests kernel panic when things are really messed up.
Namespace
Drupal\FunctionalTests\BootstrapCode
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;');
}