Skip to content
Snippets Groups Projects
Commit c4fad467 authored by catch's avatar catch
Browse files

Issue #3295735 by nod_, alexpott, lauriii: Fix ConfigImportUITest with olivero

(cherry picked from commit b52b3f4c)
parent 6ff70421
Branches
Tags
24 merge requests!8506Draft: Issue #3456536 by ibrahim tameme,!5646Issue #3350972 by nod_: [random test failure]...,!5600Issue #3350972 by nod_: [random test failure]...,!5343Issue #3305066 by quietone, Rename RedirectLeadingSlashesSubscriber,!4350Issue #3307718: Implement xxHash for non-cryptographic use-cases,!3603#ISSUE 3346218 Add a different message on edit comment,!3555Issue #2473873: Views entity operations lack cacheability support, resulting in incorrect dropbuttons,!3494Issue #3327018 by Spokje, longwave, xjm, mondrake: Update PHPStan to 1.9.3 and...,!3410Issue #3340128: UserLoginForm::submitForm has some dead code,!3389Issue #3325184 by Spokje, andypost, xjm, smustgrave: $this->configFactory is...,!3381Issue #3332363: Refactor Claro's menus-and-lists stylesheet,!3307Issue #3326193: CKEditor 5 can grow past the viewport when there is a lot of content,!3236Issue #3332419: Refactor Claro's messages stylesheet,!3231Draft: Issue #3049525 by longwave, fougere, larowlan, kim.pepper, AaronBauman, Wim...,!3212Issue #3294003: Refactor Claro's entity-meta stylesheet,!3194Issue #3330981: Fix PHPStan L1 error "Relying on entity queries to check access by default is deprecated...",!3143Issue #3313342: [PHP 8.1] Deprecated function: strpos(): Passing null to parameter #1 LayoutBuilderUiCacheContext.php on line 28,!3024Issue #3307509: Empty option for views bulk form,!2972Issue #1845004: Replace custom password hashing library with PHP 5.5 password_hash(),!2719Issue #3110137: Remove Classy from core.,!2688Issue #3261452: [PP-1] Remove tracker module from core,!2437Issue #3238257 by hooroomoo, Wim Leers: Fragment link pointing to <textarea>...,!2296Issue #3100732: Allow specifying `meta` data on JSON:API objects,!1626Issue #3256642: Make life better for database drivers that extend another database driver
......@@ -3,6 +3,7 @@
namespace Drupal\Tests\config\Functional;
use Drupal\Core\Config\InstallStorage;
use Drupal\Core\Serialization\Yaml;
use Drupal\Tests\BrowserTestBase;
/**
......@@ -88,18 +89,18 @@ public function testImport() {
$core_extension['module']['automated_cron'] = 0;
$core_extension['module']['ban'] = 0;
$core_extension['module'] = module_config_sort($core_extension['module']);
// Bartik is a subtheme of Stable so Stable must be enabled.
$core_extension['theme']['stable'] = 0;
$core_extension['theme']['bartik'] = 0;
$core_extension['theme']['olivero'] = 0;
$sync->write('core.extension', $core_extension);
// Olivero ships with configuration.
$sync->write('olivero.settings', Yaml::decode(file_get_contents('core/themes/olivero/config/install/olivero.settings.yml')));
// Use the install storage so that we can read configuration from modules
// and themes that are not installed.
$install_storage = new InstallStorage();
// Set the Bartik theme as default.
// Set the Olivero theme as default.
$system_theme = $this->config('system.theme')->get();
$system_theme['default'] = 'bartik';
$system_theme['default'] = 'olivero';
$sync->write('system.theme', $system_theme);
// Read the automated_cron config from module default config folder.
......@@ -155,7 +156,7 @@ public function testImport() {
$this->assertTrue(\Drupal::moduleHandler()->moduleExists('automated_cron'), 'Automated Cron module installed during import.');
$this->assertTrue(\Drupal::moduleHandler()->moduleExists('options'), 'Options module installed during import.');
$this->assertTrue(\Drupal::moduleHandler()->moduleExists('text'), 'Text module installed during import.');
$this->assertTrue(\Drupal::service('theme_handler')->themeExists('bartik'), 'Bartik theme installed during import.');
$this->assertTrue(\Drupal::service('theme_handler')->themeExists('olivero'), 'Olivero theme installed during import.');
// Ensure installations and uninstallation occur as expected.
$installed = \Drupal::state()->get('ConfigImportUITest.core.extension.modules_installed', []);
......@@ -177,10 +178,11 @@ public function testImport() {
unset($core_extension['module']['ban']);
unset($core_extension['module']['options']);
unset($core_extension['module']['text']);
unset($core_extension['theme']['bartik']);
unset($core_extension['theme']['olivero']);
$sync->write('core.extension', $core_extension);
$sync->delete('automated_cron.settings');
$sync->delete('text.settings');
$sync->delete('olivero.settings');
$system_theme = $this->config('system.theme')->get();
$system_theme = [
......@@ -221,7 +223,7 @@ public function testImport() {
$this->assertEmpty($installed, 'No modules installed during import');
$theme_info = \Drupal::service('theme_handler')->listInfo();
$this->assertFalse(isset($theme_info['bartik']), 'Bartik theme uninstalled during import.');
$this->assertFalse(isset($theme_info['olivero']), 'Olivero theme uninstalled during import.');
// Verify that the automated_cron.settings configuration object was only
// deleted once during the import process.
......@@ -511,7 +513,6 @@ public function testExtensionValidation() {
unset($core['module']['text']);
$module_data = $this->container->get('extension.list.module')->getList();
$this->assertTrue(isset($module_data['node']->requires['text']), 'The Node module depends on the Text module.');
// Bartik depends on Stable.
unset($core['theme']['test_basetheme']);
$theme_data = \Drupal::service('theme_handler')->rebuildThemeData();
$this->assertTrue(isset($theme_data['test_subtheme']->requires['test_basetheme']), 'The Test Subtheme theme depends on the Test Basetheme theme.');
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment