diff --git a/core/includes/install.core.inc b/core/includes/install.core.inc index 40dbc761b1..6bd028f4ea 100644 --- a/core/includes/install.core.inc +++ b/core/includes/install.core.inc @@ -6,6 +6,7 @@ */ use Drupal\Component\Utility\UrlHelper; +use Drupal\Core\Batch\BatchBuilder; use Drupal\Core\Config\ConfigImporter; use Drupal\Core\Config\ConfigImporterException; use Drupal\Core\Config\StorageComparer; @@ -2338,20 +2339,18 @@ function install_config_import_batch() { try { $sync_steps = $config_importer->initialize(); - $batch = [ - 'operations' => [], - 'finished' => 'install_config_import_batch_finish', - 'title' => t('Synchronizing configuration'), - 'init_message' => t('Starting configuration synchronization.'), - 'progress_message' => t('Completed @current step of @total.'), - 'error_message' => t('Configuration synchronization has encountered an error.'), - 'file' => drupal_get_path('module', 'config') . '/config.admin.inc', - ]; + $batch_builder = new BatchBuilder(); + $batch_builder + ->setFinishCallback('install_config_import_batch_finish') + ->setTitle(t('Importing configuration')) + ->setInitMessage(t('Starting configuration import.')) + ->setErrorMessage(t('Configuration import has encountered an error.')); + foreach ($sync_steps as $sync_step) { - $batch['operations'][] = ['install_config_import_batch_process', [$config_importer, $sync_step]]; + $batch_builder->addOperation('install_config_import_batch_process', [$config_importer, $sync_step]); } - return $batch; + return $batch_builder->toArray(); } catch (ConfigImporterException $e) { global $install_state; diff --git a/core/modules/system/src/Tests/Installer/InstallerExistingConfigMultilingualTest.php b/core/tests/Drupal/FunctionalTests/Installer/InstallerExistingConfigMultilingualTest.php similarity index 74% rename from core/modules/system/src/Tests/Installer/InstallerExistingConfigMultilingualTest.php rename to core/tests/Drupal/FunctionalTests/Installer/InstallerExistingConfigMultilingualTest.php index 60cac03df3..9c57ef512a 100644 --- a/core/modules/system/src/Tests/Installer/InstallerExistingConfigMultilingualTest.php +++ b/core/tests/Drupal/FunctionalTests/Installer/InstallerExistingConfigMultilingualTest.php @@ -1,6 +1,6 @@ getConfigTarball(), 'gz'); if ($this->profile === NULL) { @@ -35,6 +35,7 @@ protected function setUp() { ]; // File API functions are not available yet. $path = $this->siteDirectory . '/profiles/' . $this->profile; + mkdir($path, 0777, TRUE); file_put_contents("$path/{$this->profile}.info.yml", Yaml::encode($info)); @@ -50,8 +51,6 @@ protected function setUp() { } $archiver->extractList($files, $config_sync_directory); } - - parent::setUp(); } /** diff --git a/core/modules/system/tests/fixtures/config_install/multilingual.tar.gz b/core/tests/fixtures/config_install/multilingual.tar.gz similarity index 100% rename from core/modules/system/tests/fixtures/config_install/multilingual.tar.gz rename to core/tests/fixtures/config_install/multilingual.tar.gz diff --git a/core/modules/system/tests/fixtures/config_install/testing_config_install.tar.gz b/core/tests/fixtures/config_install/testing_config_install.tar.gz similarity index 100% rename from core/modules/system/tests/fixtures/config_install/testing_config_install.tar.gz rename to core/tests/fixtures/config_install/testing_config_install.tar.gz diff --git a/core/modules/system/tests/fixtures/config_install/testing_config_install_no_config.tar.gz b/core/tests/fixtures/config_install/testing_config_install_no_config.tar.gz similarity index 100% rename from core/modules/system/tests/fixtures/config_install/testing_config_install_no_config.tar.gz rename to core/tests/fixtures/config_install/testing_config_install_no_config.tar.gz