MediaLibraryUpdateViewLangcodeFiltersTest.php in Drupal 8
File
core/modules/media_library/tests/src/Functional/Update/MediaLibraryUpdateViewLangcodeFiltersTest.php
View source
<?php
namespace Drupal\Tests\media_library\Functional\Update;
use Drupal\FunctionalTests\Update\UpdatePathTestBase;
class MediaLibraryUpdateViewLangcodeFiltersTest extends UpdatePathTestBase {
protected function setDatabaseDumpFiles() {
$this->databaseDumpFiles = [
__DIR__ . '/../../../../../system/tests/fixtures/update/drupal-8.4.0.bare.standard.php.gz',
__DIR__ . '/../../../../../media/tests/fixtures/update/drupal-8.4.0-media_installed.php',
__DIR__ . '/../../../fixtures/update/drupal-8.7.2-media_library_installed.php',
];
}
public function testMediaLibraryViewStatusExtraFilter() {
$config = $this
->config('views.view.media_library');
$this
->assertNull($config
->get('display.default.display_options.filters.langcode'));
$this
->assertNull($config
->get('display.default.display_options.filters.default_langcode'));
$this
->assertNull($config
->get('display.widget.display_options.filters.langcode'));
$this
->assertNull($config
->get('display.widget.display_options.filters.default_langcode'));
$this
->assertNull($config
->get('display.widget_table.display_options.filters.langcode'));
$this
->assertNull($config
->get('display.widget_table.display_options.filters.default_langcode'));
$this
->assertNull($config
->get('display.default.display_options.rendering_language'));
$this
->assertNull($config
->get('display.widget.display_options.rendering_language'));
$this
->assertNull($config
->get('display.widget_table.display_options.rendering_language'));
$this
->runUpdates();
$config = $this
->config('views.view.media_library');
$this
->assertNull($config
->get('display.widget.display_options.filters.langcode'));
$this
->assertNull($config
->get('display.widget_table.display_options.filters.langcode'));
$default_langcode_filter = $config
->get('display.default.display_options.filters.langcode');
$this
->assertInternalType('array', $default_langcode_filter);
$this
->assertSame('langcode', $default_langcode_filter['field']);
$this
->assertSame('media', $default_langcode_filter['entity_type']);
$this
->assertSame('language', $default_langcode_filter['plugin_id']);
$this
->assertSame('langcode', $default_langcode_filter['id']);
$this
->assertTrue($default_langcode_filter['exposed']);
$this
->assertNull($config
->get('display.default.display_options.filters.default_langcode'));
foreach ([
'widget',
'widget_table',
] as $display_id) {
$filter = $config
->get('display.' . $display_id . '.display_options.filters.default_langcode');
$this
->assertInternalType('array', $filter);
$this
->assertSame('default_langcode', $filter['field']);
$this
->assertSame('media', $filter['entity_type']);
$this
->assertSame('boolean', $filter['plugin_id']);
$this
->assertSame('default_langcode', $filter['id']);
$this
->assertFalse($filter['exposed']);
}
$this
->assertNull($config
->get('display.default.display_options.rendering_language'));
$this
->assertSame('***LANGUAGE_language_interface***', $config
->get('display.widget.display_options.rendering_language'));
$this
->assertSame('***LANGUAGE_language_interface***', $config
->get('display.widget_table.display_options.rendering_language'));
}
}