public function InfoAlterTest::testSystemInfoAlter in Drupal 9
Same name and namespace in other branches
- 8 core/modules/system/tests/src/Kernel/System/InfoAlterTest.php \Drupal\Tests\system\Kernel\System\InfoAlterTest::testSystemInfoAlter()
- 10 core/modules/system/tests/src/Kernel/System/InfoAlterTest.php \Drupal\Tests\system\Kernel\System\InfoAlterTest::testSystemInfoAlter()
Tests that theme .info.yml data is rebuild after enabling a module.
Tests that info data is rebuilt after a module that implements hook_system_info_alter() is enabled. Also tests if core *_list() functions return freshly altered info.
File
- core/
modules/ system/ tests/ src/ Kernel/ System/ InfoAlterTest.php, line 23
Class
- InfoAlterTest
- Tests the effectiveness of hook_system_info_alter().
Namespace
Drupal\Tests\system\Kernel\SystemCode
public function testSystemInfoAlter() {
\Drupal::state()
->set('module_required_test.hook_system_info_alter', TRUE);
$info = \Drupal::service('extension.list.module')
->getList();
$this
->assertFalse(isset($info['node']->info['required']), 'Before the module_required_test is installed the node module is not required.');
// Enable the test module.
\Drupal::service('module_installer')
->install([
'module_required_test',
], FALSE);
$this
->assertTrue(\Drupal::moduleHandler()
->moduleExists('module_required_test'), 'Test required module is enabled.');
$info = \Drupal::service('extension.list.module')
->getList();
$this
->assertTrue($info['node']->info['required'], 'After the module_required_test is installed the node module is required.');
}