function EntityRevisionTest::testGetEntityNewRevision
Same name in other branches
- 8.9.x core/modules/migrate/tests/src/Unit/destination/EntityRevisionTest.php \Drupal\Tests\migrate\Unit\destination\EntityRevisionTest::testGetEntityNewRevision()
- 10 core/modules/migrate/tests/src/Unit/destination/EntityRevisionTest.php \Drupal\Tests\migrate\Unit\destination\EntityRevisionTest::testGetEntityNewRevision()
- 11.x core/modules/migrate/tests/src/Unit/destination/EntityRevisionTest.php \Drupal\Tests\migrate\Unit\destination\EntityRevisionTest::testGetEntityNewRevision()
Tests that new revisions are flagged to be written as new.
@covers ::getEntity
File
-
core/
modules/ migrate/ tests/ src/ Unit/ destination/ EntityRevisionTest.php, line 124
Class
- EntityRevisionTest
- Tests entity revision destination.
Namespace
Drupal\Tests\migrate\Unit\destinationCode
public function testGetEntityNewRevision() {
$destination = $this->getEntityRevisionDestination([]);
$entity = $this->prophesize('\\Drupal\\Core\\Entity\\RevisionableInterface');
$entity_type = $this->prophesize('\\Drupal\\Core\\Entity\\EntityTypeInterface');
$entity_type->getKey('id')
->willReturn('nid');
$entity_type->getKey('revision')
->willReturn('vid');
$this->storage
->getEntityType()
->willReturn($entity_type->reveal());
// Enforce is new should be disabled.
$entity->enforceIsNew(FALSE)
->shouldBeCalled();
// And toggle this as new revision but not the default revision.
$entity->setNewRevision(TRUE)
->shouldBeCalled();
$entity->isDefaultRevision(FALSE)
->shouldBeCalled();
// Assert we load the correct revision.
$this->storage
->load(1)
->shouldBeCalled()
->willReturn($entity->reveal());
$row = new Row([
'nid' => 1,
'vid' => 2,
], [
'nid' => 1,
'vid' => 2,
]);
$row->setDestinationProperty('nid', 1);
$this->assertEquals($entity->reveal(), $destination->getEntity($row, []));
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.