class RollbackFieldTest
Same name and namespace in other branches
- 11.x core/modules/field/tests/src/Kernel/Migrate/d7/RollbackFieldTest.php \Drupal\Tests\field\Kernel\Migrate\d7\RollbackFieldTest
- 10 core/modules/field/tests/src/Kernel/Migrate/d7/RollbackFieldTest.php \Drupal\Tests\field\Kernel\Migrate\d7\RollbackFieldTest
- 8.9.x core/modules/field/tests/src/Kernel/Migrate/d7/RollbackFieldTest.php \Drupal\Tests\field\Kernel\Migrate\d7\RollbackFieldTest
Migrates and rolls back Drupal 7 fields.
@group field
Hierarchy
- class \Drupal\KernelTests\KernelTestBase implements \Drupal\Core\DependencyInjection\ServiceProviderInterface uses \Drupal\KernelTests\AssertLegacyTrait, \Drupal\KernelTests\AssertContentTrait, \Drupal\Tests\RandomGeneratorTrait, \Drupal\Tests\ConfigTestTrait, \Drupal\Tests\ExtensionListTestTrait, \Drupal\Tests\TestRequirementsTrait, \Drupal\Tests\Traits\PhpUnitWarnings, \Drupal\Tests\PhpUnitCompatibilityTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait extends \PHPUnit\Framework\TestCase
- class \Drupal\Tests\migrate\Kernel\MigrateTestBase implements \Drupal\migrate\MigrateMessageInterface extends \Drupal\KernelTests\KernelTestBase
- class \Drupal\Tests\migrate_drupal\Kernel\MigrateDrupalTestBase extends \Drupal\Tests\migrate\Kernel\MigrateTestBase
- class \Drupal\Tests\migrate_drupal\Kernel\d7\MigrateDrupal7TestBase uses \Drupal\Tests\migrate_drupal\Traits\NodeMigrateTypeTestTrait extends \Drupal\Tests\migrate_drupal\Kernel\MigrateDrupalTestBase
- class \Drupal\Tests\field\Kernel\Migrate\d7\MigrateFieldTest extends \Drupal\Tests\migrate_drupal\Kernel\d7\MigrateDrupal7TestBase
- class \Drupal\Tests\field\Kernel\Migrate\d7\RollbackFieldTest extends \Drupal\Tests\field\Kernel\Migrate\d7\MigrateFieldTest
- class \Drupal\Tests\field\Kernel\Migrate\d7\MigrateFieldTest extends \Drupal\Tests\migrate_drupal\Kernel\d7\MigrateDrupal7TestBase
- class \Drupal\Tests\migrate_drupal\Kernel\d7\MigrateDrupal7TestBase uses \Drupal\Tests\migrate_drupal\Traits\NodeMigrateTypeTestTrait extends \Drupal\Tests\migrate_drupal\Kernel\MigrateDrupalTestBase
- class \Drupal\Tests\migrate_drupal\Kernel\MigrateDrupalTestBase extends \Drupal\Tests\migrate\Kernel\MigrateTestBase
- class \Drupal\Tests\migrate\Kernel\MigrateTestBase implements \Drupal\migrate\MigrateMessageInterface extends \Drupal\KernelTests\KernelTestBase
Expanded class hierarchy of RollbackFieldTest
File
-
core/
modules/ field/ tests/ src/ Kernel/ Migrate/ d7/ RollbackFieldTest.php, line 13
Namespace
Drupal\Tests\field\Kernel\Migrate\d7View source
class RollbackFieldTest extends MigrateFieldTest {
/**
* Tests migrating D7 fields to field_storage_config entities, then rolling back.
*/
public function testFields() {
// Test that the fields have migrated (prior to rollback).
parent::testFields();
$this->executeRollback('d7_field');
// Check that fields have been rolled back.
$rolled_back_field_ids = [
'comment.field_integer',
'node.taxonomy_forums',
'node.field_integer',
'node.field_tags',
'node.field_term_reference',
'node.field_text_list',
'node.field_text',
'node.field_phone',
'node.field_file',
'node.field_images',
'node.field_image',
'node.field_long_text',
'node.field_date_with_end_time',
'node.field_integer_list',
'node.field_date',
'node.field_link',
'node.field_float',
'node.field_boolean',
'node.field_email',
'user.field_file',
];
foreach ($rolled_back_field_ids as $field_id) {
$this->assertNull(FieldStorageConfig::load($field_id));
}
// Check that fields that should persist have not been rolled back.
$non_rolled_back_field_ids = [
'node.body',
'comment.comment_body',
];
foreach ($non_rolled_back_field_ids as $field_id) {
$this->assertNotNull(FieldStorageConfig::load($field_id));
}
}
/**
* Executes a single rollback.
*
* @param string|\Drupal\migrate\Plugin\MigrationInterface $migration
* The migration to rollback, or its ID.
*/
protected function executeRollback($migration) {
if (is_string($migration)) {
$this->migration = $this->getMigration($migration);
}
else {
$this->migration = $migration;
}
(new MigrateExecutable($this->migration, $this))
->rollback();
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.