X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;f=web%2Fcore%2Ftests%2FDrupal%2FKernelTests%2FCore%2FEntity%2FEntityLoadedRevisionTest.php;fp=web%2Fcore%2Ftests%2FDrupal%2FKernelTests%2FCore%2FEntity%2FEntityLoadedRevisionTest.php;h=0000000000000000000000000000000000000000;hb=af6d1fb995500ae68849458ee10d66abbdcfb252;hp=a3b99fe0c95e836dc8262cc72bfeeb977a3d190e;hpb=680c79a86e3ed402f263faeac92e89fb6d9edcc0;p=yaffs-website diff --git a/web/core/tests/Drupal/KernelTests/Core/Entity/EntityLoadedRevisionTest.php b/web/core/tests/Drupal/KernelTests/Core/Entity/EntityLoadedRevisionTest.php deleted file mode 100644 index a3b99fe0c..000000000 --- a/web/core/tests/Drupal/KernelTests/Core/Entity/EntityLoadedRevisionTest.php +++ /dev/null @@ -1,170 +0,0 @@ -installEntitySchema('entity_test_mulrev'); - } - - /** - * Test getLoadedRevisionId() returns the correct ID throughout the process. - */ - public function testLoadedRevisionId() { - // Create a basic EntityTestMulRev entity and save it. - $entity = EntityTestMulRev::create(); - $entity->save(); - - // Load the created entity and create a new revision. - $loaded = EntityTestMulRev::load($entity->id()); - $loaded->setNewRevision(TRUE); - - // Before saving, the loaded Revision ID should be the same as the created - // entity, not the same as the loaded entity (which does not have a revision - // ID yet). - $this->assertEquals($entity->getRevisionId(), $loaded->getLoadedRevisionId()); - $this->assertNotEquals($loaded->getRevisionId(), $loaded->getLoadedRevisionId()); - $this->assertSame(NULL, $loaded->getRevisionId()); - - // After updating the loaded Revision ID the result should be the same. - $loaded->updateLoadedRevisionId(); - $this->assertEquals($entity->getRevisionId(), $loaded->getLoadedRevisionId()); - $this->assertNotEquals($loaded->getRevisionId(), $loaded->getLoadedRevisionId()); - $this->assertSame(NULL, $loaded->getRevisionId()); - - $loaded->save(); - - // In entity_test_entity_update() the loaded Revision ID was stored in - // state. This should be the same as we had before calling $loaded->save(). - /** @var \Drupal\Core\Entity\ContentEntityInterface $loaded_original */ - $loadedRevisionId = \Drupal::state()->get('entity_test.loadedRevisionId'); - $this->assertEquals($entity->getRevisionId(), $loadedRevisionId); - $this->assertNotEquals($loaded->getRevisionId(), $loadedRevisionId); - - // The revision ID and loaded Revision ID should be different for the two - // versions of the entity, but the same for a saved entity. - $this->assertNotEquals($loaded->getRevisionId(), $entity->getRevisionId()); - $this->assertNotEquals($loaded->getLoadedRevisionId(), $entity->getLoadedRevisionId()); - $this->assertEquals($entity->getRevisionId(), $entity->getLoadedRevisionId()); - $this->assertEquals($loaded->getRevisionId(), $loaded->getLoadedRevisionId()); - } - - /** - * Tests the loaded revision ID after an entity re-save, clone and duplicate. - */ - public function testLoadedRevisionIdWithNoNewRevision() { - // Create a basic EntityTestMulRev entity and save it. - $entity = EntityTestMulRev::create(); - $entity->save(); - - // Load the created entity and create a new revision. - $loaded = EntityTestMulRev::load($entity->id()); - $loaded->setNewRevision(TRUE); - $loaded->save(); - - // Make a change to the loaded entity. - $loaded->set('name', 'dublin'); - - // The revision id and loaded Revision id should still be the same. - $this->assertEquals($loaded->getRevisionId(), $loaded->getLoadedRevisionId()); - - $loaded->save(); - - // After saving, the loaded Revision id set in entity_test_entity_update() - // and returned from the entity should be the same as the entity's revision - // id because a new revision wasn't created, the existing revision was - // updated. - $loadedRevisionId = \Drupal::state()->get('entity_test.loadedRevisionId'); - $this->assertEquals($loaded->getRevisionId(), $loadedRevisionId); - $this->assertEquals($loaded->getRevisionId(), $loaded->getLoadedRevisionId()); - - // Creating a clone should keep the loaded Revision ID. - $clone = clone $loaded; - $this->assertSame($loaded->getLoadedRevisionId(), $clone->getLoadedRevisionId()); - - // Creating a duplicate should set a NULL loaded Revision ID. - $duplicate = $loaded->createDuplicate(); - $this->assertSame(NULL, $duplicate->getLoadedRevisionId()); - } - - /** - * Tests the loaded revision ID for translatable entities. - */ - public function testTranslatedLoadedRevisionId() { - ConfigurableLanguage::createFromLangcode('fr')->save(); - - // Create a basic EntityTestMulRev entity and save it. - $entity = EntityTestMulRev::create(); - $entity->save(); - - // Load the created entity and create a new revision. - $loaded = EntityTestMulRev::load($entity->id()); - $loaded->setNewRevision(TRUE); - $loaded->save(); - - // Check it all works with translations. - $french = $loaded->addTranslation('fr'); - // Adding a revision should return the same for each language. - $this->assertEquals($french->getRevisionId(), $french->getLoadedRevisionId()); - $this->assertEquals($loaded->getRevisionId(), $french->getLoadedRevisionId()); - $this->assertEquals($loaded->getLoadedRevisionId(), $french->getLoadedRevisionId()); - $french->save(); - // After saving nothing should change. - $this->assertEquals($french->getRevisionId(), $french->getLoadedRevisionId()); - $this->assertEquals($loaded->getRevisionId(), $french->getLoadedRevisionId()); - $this->assertEquals($loaded->getLoadedRevisionId(), $french->getLoadedRevisionId()); - $first_revision_id = $french->getRevisionId(); - $french->setNewRevision(); - // Setting a new revision will reset the loaded Revision ID. - $this->assertEquals($first_revision_id, $french->getLoadedRevisionId()); - $this->assertEquals($first_revision_id, $loaded->getLoadedRevisionId()); - $this->assertNotEquals($french->getRevisionId(), $french->getLoadedRevisionId()); - $this->assertGreaterThan($french->getRevisionId(), $french->getLoadedRevisionId()); - $this->assertNotEquals($loaded->getRevisionId(), $loaded->getLoadedRevisionId()); - $this->assertGreaterThan($loaded->getRevisionId(), $loaded->getLoadedRevisionId()); - $french->save(); - // Saving the new revision will reset the origin revision ID again. - $this->assertEquals($french->getRevisionId(), $french->getLoadedRevisionId()); - $this->assertEquals($loaded->getRevisionId(), $loaded->getLoadedRevisionId()); - } - - /** - * Tests re-saving the entity in entity_test_entity_insert(). - */ - public function testSaveInHookEntityInsert() { - // Create an entity which will be saved again in entity_test_entity_insert(). - $entity = EntityTestMulRev::create(['name' => 'EntityLoadedRevisionTest']); - $entity->save(); - $loadedRevisionId = \Drupal::state()->get('entity_test.loadedRevisionId'); - $this->assertEquals($entity->getLoadedRevisionId(), $loadedRevisionId); - $this->assertEquals($entity->getRevisionId(), $entity->getLoadedRevisionId()); - - } - -}