class SourceProviderTest in Drupal 10
Same name and namespace in other branches
- 9 core/modules/migrate_drupal_ui/tests/src/Functional/SourceProviderTest.php \Drupal\Tests\migrate_drupal_ui\Functional\SourceProviderTest
Tests that a missing source provider error message is displayed.
@group migrate_drupal_ui
Hierarchy
- class \Drupal\Tests\BrowserTestBase extends \PHPUnit\Framework\TestCase uses \Drupal\Tests\PhpUnitCompatibilityTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait, FunctionalTestSetupTrait, TestSetupTrait, BlockCreationTrait, ConfigTestTrait, ExtensionListTestTrait, ContentTypeCreationTrait, NodeCreationTrait, RandomGeneratorTrait, TestRequirementsTrait, PhpUnitWarnings, UiHelperTrait, UserCreationTrait, XdebugRequestTrait
- class \Drupal\Tests\migrate_drupal_ui\Functional\MigrateUpgradeTestBase uses MigrationConfigurationTrait
- class \Drupal\Tests\migrate_drupal_ui\Functional\SourceProviderTest
- class \Drupal\Tests\migrate_drupal_ui\Functional\MigrateUpgradeTestBase uses MigrationConfigurationTrait
Expanded class hierarchy of SourceProviderTest
File
- core/
modules/ migrate_drupal_ui/ tests/ src/ Functional/ SourceProviderTest.php, line 10
Namespace
Drupal\Tests\migrate_drupal_ui\FunctionalView source
class SourceProviderTest extends MigrateUpgradeTestBase {
/**
* {@inheritdoc}
*/
protected static $modules = [
'migrate_drupal_ui',
// Will generate an error for a missing source module.
'migration_provider_test',
];
/**
* Test missing source provider.
*
* @dataProvider providerSourceProvider
*/
public function testSourceProvider($path_to_database) {
$this
->loadFixture($this
->getModulePath('migrate_drupal') . $path_to_database);
$session = $this
->assertSession();
// Start the upgrade process.
$this
->submitCredentialForm();
// Ensure we get errors about missing modules.
$session
->pageTextContains('Resolve all issues below to continue the upgrade.');
$session
->pageTextContains('The no_source_module plugin must define the source_module property.');
// Uninstall the module causing the missing module error messages.
$this->container
->get('module_installer')
->uninstall([
'migration_provider_test',
], TRUE);
// Restart the upgrade process and test there is no source_module error.
$this
->drupalGet('/upgrade');
$this
->submitForm([], 'Continue');
$this
->submitForm($this->edits, 'Review upgrade');
// Ensure there are no errors about missing modules from the test module.
$session
->pageTextNotContains('Source module not found for migration_provider_no_annotation.');
$session
->pageTextNotContains('Source module not found for migration_provider_test.');
// Ensure there are no errors about any other missing migration providers.
$session
->pageTextNotContains('module not found');
}
/**
* Data provider for testSourceProvider.
*/
public function providerSourceProvider() {
return [
[
'path_to_database' => '/tests/fixtures/drupal6.php',
],
[
'path_to_database' => '/tests/fixtures/drupal7.php',
],
];
}
/**
* {@inheritdoc}
*/
protected function getSourceBasePath() {
return '';
}
/**
* {@inheritdoc}
*/
protected function getAvailablePaths() {
return [];
}
/**
* {@inheritdoc}
*/
protected function getEntityCounts() {
return [];
}
/**
* {@inheritdoc}
*/
protected function getEntityCountsIncremental() {
return [];
}
/**
* {@inheritdoc}
*/
protected function getMissingPaths() {
return [];
}
}