function DevelopmentSettingsFormTest::testTwigDevelopmentMode
Same name in other branches
- 11.x core/modules/system/tests/src/FunctionalJavascript/Form/DevelopmentSettingsFormTest.php \Drupal\Tests\system\FunctionalJavascript\Form\DevelopmentSettingsFormTest::testTwigDevelopmentMode()
Tests turning on Twig development mode.
@dataProvider twigDevelopmentData
File
-
core/
modules/ system/ tests/ src/ FunctionalJavascript/ Form/ DevelopmentSettingsFormTest.php, line 46
Class
- DevelopmentSettingsFormTest
- Tests development settings form items for expected behavior.
Namespace
Drupal\Tests\system\FunctionalJavascript\FormCode
public function testTwigDevelopmentMode(bool $twig_development_mode, ?bool $twig_debug, ?bool $twig_cache_disable) : void {
$twig_debug = $twig_debug ?? $twig_development_mode;
$twig_cache_disable = $twig_cache_disable ?? $twig_development_mode;
$twig_config = \Drupal::getContainer()->getParameter('twig.config');
self::assertFalse($twig_config['debug']);
self::assertNull($twig_config['auto_reload']);
self::assertTrue($twig_config['cache']);
$this->drupalGet(Url::fromRoute('system.development_settings'));
if ($twig_development_mode) {
$this->getSession()
->getPage()
->checkField('Twig development mode');
$this->assertSession()
->checkboxChecked('Twig debug mode');
$this->assertSession()
->checkboxChecked('Disable Twig cache');
}
if (!$twig_debug) {
$this->getSession()
->getPage()
->uncheckField('Twig debug mode');
}
if (!$twig_cache_disable) {
$this->getSession()
->getPage()
->uncheckField('Disable Twig cache');
}
$this->getSession()
->getPage()
->pressButton('Save settings');
$this->drupalGet(Url::fromRoute('system.status'));
if (!$twig_development_mode) {
$this->assertSession()
->pageTextNotContains('Twig development mode');
}
else {
$this->assertSession()
->pageTextContains('Twig development mode');
$this->assertSession()
->linkExists('development settings page');
}
$refreshed_container = $this->initKernel(Request::create('/'));
$twig_config = $refreshed_container->getParameter('twig.config');
self::assertEquals($twig_debug, $twig_config['debug']);
self::assertNull($twig_config['auto_reload']);
self::assertEquals(!$twig_cache_disable, $twig_config['cache']);
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.