Commit fd8e8afc authored by alexpott's avatar alexpott

Issue #2705531 by Jo Fitzgerald: View mode migration rollback fails

parent 57bbb6f5
<?php
namespace Drupal\Tests\field\Kernel\Migrate\d7;
use Drupal\Core\Entity\Entity\EntityViewMode;
use Drupal\migrate\MigrateExecutable;
/**
* Migrates and rolls back Drupal 7 view modes.
*
* @group field
*/
class RollbackViewModesTest extends MigrateViewModesTest {
/**
* Tests migrating D7 view modes, then rolling back.
*/
public function testMigration() {
// Test that the view modes have migrated (prior to rollback).
parent::testMigration();
$this->executeRollback('d7_view_modes');
// Check that view modes have been rolled back.
$view_mode_ids = [
'comment.full',
'node.teaser',
'node.full',
'user.full',
];
foreach ($view_mode_ids as $view_mode_id) {
$this->assertNull(EntityViewMode::load($view_mode_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();
}
}
......@@ -20,4 +20,12 @@ public function getIds() {
return $ids;
}
/**
* {@inheritdoc}
*/
public function rollback(array $destination_identifier) {
$destination_identifier = implode('.', $destination_identifier);
parent::rollback(array($destination_identifier));
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment