public function UncaughtExceptionTest::testUncaughtException in Drupal 8
Same name and namespace in other branches
- 9 core/tests/Drupal/FunctionalTests/Bootstrap/UncaughtExceptionTest.php \Drupal\FunctionalTests\Bootstrap\UncaughtExceptionTest::testUncaughtException()
Tests uncaught exception handling when system is in a bad state.
File
- core/
tests/ Drupal/ FunctionalTests/ Bootstrap/ UncaughtExceptionTest.php, line 72
Class
- UncaughtExceptionTest
- Tests kernel panic when things are really messed up.
Namespace
Drupal\FunctionalTests\BootstrapCode
public function testUncaughtException() {
$this->expectedExceptionMessage = 'Oh oh, bananas in the instruments.';
\Drupal::state()
->set('error_service_test.break_bare_html_renderer', TRUE);
$this
->config('system.logging')
->set('error_level', ERROR_REPORTING_HIDE)
->save();
$settings = [];
$settings['config']['system.logging']['error_level'] = (object) [
'value' => ERROR_REPORTING_HIDE,
'required' => TRUE,
];
$this
->writeSettings($settings);
$this
->drupalGet('');
$this
->assertResponse(500);
$this
->assertText('The website encountered an unexpected error. Please try again later.');
$this
->assertNoText($this->expectedExceptionMessage);
$this
->config('system.logging')
->set('error_level', ERROR_REPORTING_DISPLAY_ALL)
->save();
$settings = [];
$settings['config']['system.logging']['error_level'] = (object) [
'value' => ERROR_REPORTING_DISPLAY_ALL,
'required' => TRUE,
];
$this
->writeSettings($settings);
$this
->drupalGet('');
$this
->assertResponse(500);
$this
->assertText('The website encountered an unexpected error. Please try again later.');
$this
->assertText($this->expectedExceptionMessage);
$this
->assertErrorLogged($this->expectedExceptionMessage);
}