3 namespace Drupal\KernelTests\Core\Render;
5 use Drupal\KernelTests\KernelTestBase;
8 * Tests the element info.
12 class ElementInfoIntegrationTest extends KernelTestBase {
17 protected function setUp() {
20 $this->container->get('theme_handler')->install(['test_theme', 'classy']);
24 * Ensures that the element info can be altered by themes.
26 public function testElementInfoByTheme() {
27 /** @var \Drupal\Core\Theme\ThemeInitializationInterface $theme_initializer */
28 $theme_initializer = $this->container->get('theme.initialization');
30 /** @var \Drupal\Core\Theme\ThemeManagerInterface $theme_manager */
31 $theme_manager = $this->container->get('theme.manager');
33 /** @var \Drupal\Core\Render\ElementInfoManagerInterface $element_info */
34 $element_info = $this->container->get('plugin.manager.element_info');
36 $theme_manager->setActiveTheme($theme_initializer->getActiveThemeByName('classy'));
37 $this->assertEqual(60, $element_info->getInfo('textfield')['#size']);
39 $theme_manager->setActiveTheme($theme_initializer->getActiveThemeByName('test_theme'));
40 $this->assertEqual(40, $element_info->getInfo('textfield')['#size']);