diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/source/DrupalSqlBase.php b/core/modules/migrate_drupal/src/Plugin/migrate/source/DrupalSqlBase.php index c8b44f894e46951134b318beaa135c513b981064..15acb0213fb60130ed275cd451df9042314f9385 100644 --- a/core/modules/migrate_drupal/src/Plugin/migrate/source/DrupalSqlBase.php +++ b/core/modules/migrate_drupal/src/Plugin/migrate/source/DrupalSqlBase.php @@ -102,6 +102,7 @@ public static function create(ContainerInterface $container, array $configuratio * {@inheritdoc} */ public function checkRequirements() { + parent::checkRequirements(); if ($this->pluginDefinition['requirements_met'] === TRUE) { if (isset($this->pluginDefinition['source_module'])) { if ($this->moduleExists($this->pluginDefinition['source_module'])) { @@ -114,7 +115,6 @@ public function checkRequirements() { } } } - parent::checkRequirements(); } /** diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php index ebd9334a2d4fe1feb062da020b7a3750246ff258..fdaf4b10af7ca99ea67c8be49abcb425e5725108 100644 --- a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php +++ b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php @@ -63,6 +63,22 @@ public function testSourceProviderNotActive() { } } + /** + * @covers ::checkRequirements + */ + public function testSourceDatabaseError() { + $plugin_definition['requirements_met'] = TRUE; + $plugin_definition['source_module'] = 'module1'; + /** @var \Drupal\Core\State\StateInterface $state */ + $state = $this->getMock('Drupal\Core\State\StateInterface'); + /** @var \Drupal\Core\Entity\EntityManagerInterface $entity_manager */ + $entity_manager = $this->getMock('Drupal\Core\Entity\EntityManagerInterface'); + $plugin = new TestDrupalSqlBase([], 'test', $plugin_definition, $this->getMigration(), $state, $entity_manager); + $system_data = $plugin->getSystemData(); + $this->setExpectedException(RequirementsException::class, 'No database connection configured for source plugin test'); + $plugin->checkRequirements(); + } + } namespace Drupal\Tests\migrate_drupal\Unit\source;