ConfigMapperTest.php

Same filename and directory in other branches
  1. 9 core/modules/config_translation/tests/src/Kernel/ConfigMapperTest.php
  2. 8.9.x core/modules/config_translation/tests/src/Kernel/ConfigMapperTest.php
  3. 10 core/modules/config_translation/tests/src/Kernel/ConfigMapperTest.php

Namespace

Drupal\Tests\config_translation\Kernel

File

core/modules/config_translation/tests/src/Kernel/ConfigMapperTest.php

View source
<?php

declare (strict_types=1);
namespace Drupal\Tests\config_translation\Kernel;

use Drupal\Core\Routing\RouteMatch;
use Drupal\KernelTests\KernelTestBase;
use Symfony\Component\Routing\Route;

/**
 * Tests config mapper.
 *
 * @group config_translation
 */
class ConfigMapperTest extends KernelTestBase {
    
    /**
     * {@inheritdoc}
     */
    protected static $modules = [
        'config_translation',
        'config_translation_test',
        'language',
        'locale',
        'system',
    ];
    
    /**
     * Tests adding config names to mapper.
     */
    public function testAddingConfigNames() : void {
        // Get a config names mapper.
        $mappers = \Drupal::service('plugin.manager.config_translation.mapper')->getMappers();
        $mapper = $mappers['system.site_information_settings'];
        // Test that it doesn't contain a config name from config_translation_test.
        $config_names = $mapper->getConfigNames();
        $this->assertNotContains('config_translation_test.content', $config_names);
        // Call populateFromRouteMatch() to dispatch the "config mapper populate"
        // event.
        $mapper->populateFromRouteMatch(new RouteMatch('test', new Route('/')));
        // Test that it contains the new config name from config_translation_test.
        $config_names = $mapper->getConfigNames();
        $this->assertContains('config_translation_test.content', $config_names);
    }

}

Classes

Title Deprecated Summary
ConfigMapperTest Tests config mapper.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.