'default', 'label' => 'Default', ])->save(); $this->placeBlock('local_tasks_block'); $this->placeBlock('system_breadcrumb_block'); $this->account = $this->drupalCreateUser([ 'administer entity_test_enhanced', 'view all entity_test_enhanced revisions', ]); $this->drupalLogin($this->account); } /** * Test enhanced entity revision routes access. */ public function testRevisionRouteAccess() { $entity = EnhancedEntity::create([ 'name' => 'rev 1', 'type' => 'default', ]); $entity->save(); $revision = clone $entity; $revision->name->value = 'rev 2'; $revision->setNewRevision(TRUE); $revision->isDefaultRevision(FALSE); $revision->save(); $this->drupalGet('/entity_test_enhanced/1/revisions'); $this->assertSession()->statusCodeEquals(200); $this->assertSession()->responseContains('Revisions'); $collection_link = $this->getSession()->getPage()->findLink('Entity test with enhancements'); $collection_link->click(); $this->assertSession()->addressEquals('/entity_test_enhanced'); $this->assertSession()->responseContains('Edit'); $edit_link = $this->getSession()->getPage()->findLink('Edit'); $edit_link->click(); $this->assertSession()->addressEquals('/entity_test_enhanced/1/edit'); // Check if we have revision tab link on edit page. $this->getSession()->getPage()->findLink('Revisions')->click(); $this->assertSession()->addressEquals('/entity_test_enhanced/1/revisions'); $this->drupalGet('/entity_test_enhanced/1/revisions/2/view'); $this->assertSession()->statusCodeEquals(200); $this->assertSession()->responseContains('rev 2'); $revisions_link = $this->getSession()->getPage()->findLink('Revisions'); $revisions_link->click(); $this->assertSession()->addressEquals('/entity_test_enhanced/1/revisions'); $this->assertSession()->statusCodeEquals(200); } }