public function ConfigTest::testLanguageImport in Drupal 9
Same name and namespace in other branches
- 8 core/modules/migrate/tests/src/Unit/destination/ConfigTest.php \Drupal\Tests\migrate\Unit\destination\ConfigTest::testLanguageImport()
Tests the import method.
File
- core/
modules/ migrate/ tests/ src/ Unit/ destination/ ConfigTest.php, line 65
Class
- ConfigTest
- @coversDefaultClass \Drupal\migrate\Plugin\migrate\destination\Config @group migrate
Namespace
Drupal\Tests\migrate\Unit\destinationCode
public function testLanguageImport() {
$source = [
'langcode' => 'mi',
];
$migration = $this
->getMockBuilder(MigrationInterface::class)
->disableOriginalConstructor()
->getMock();
$config = $this
->getMockBuilder('Drupal\\Core\\Config\\Config')
->disableOriginalConstructor()
->getMock();
foreach ($source as $key => $val) {
$config
->expects($this
->once())
->method('set')
->with($this
->equalTo($key), $this
->equalTo($val))
->will($this
->returnValue($config));
}
$config
->expects($this
->once())
->method('save');
$config
->expects($this
->any())
->method('getName')
->willReturn('d8_config');
$config_factory = $this
->createMock('Drupal\\Core\\Config\\ConfigFactoryInterface');
$config_factory
->expects($this
->once())
->method('getEditable')
->with('d8_config')
->will($this
->returnValue($config));
$row = $this
->getMockBuilder('Drupal\\migrate\\Row')
->disableOriginalConstructor()
->getMock();
$row
->expects($this
->any())
->method('getRawDestination')
->will($this
->returnValue($source));
$row
->expects($this
->any())
->method('getDestinationProperty')
->will($this
->returnValue($source['langcode']));
$language_manager = $this
->getMockBuilder('Drupal\\language\\ConfigurableLanguageManagerInterface')
->disableOriginalConstructor()
->getMock();
$language_manager
->expects($this
->any())
->method('getLanguageConfigOverride')
->with('mi', 'd8_config')
->will($this
->returnValue($config));
$destination = new Config([
'config_name' => 'd8_config',
'translations' => 'true',
], 'd8_config', [
'pluginId' => 'd8_config',
], $migration, $config_factory, $language_manager);
$destination_id = $destination
->import($row);
$this
->assertEquals([
'd8_config',
'mi',
], $destination_id);
}