You are here

public function RevisionBasicUITest::testRevisionRevert in Entity API 8.0

Same name and namespace in other branches
  1. 8 tests/src/Kernel/RevisionBasicUITest.php \Drupal\Tests\entity\Kernel\RevisionBasicUITest::testRevisionRevert()

File

tests/src/Kernel/RevisionBasicUITest.php, line 125
Contains \Drupal\Tests\entity\Kernel\RevisionBasicUITest.

Class

RevisionBasicUITest
@group entity

Namespace

Drupal\Tests\entity\Kernel

Code

public function testRevisionRevert() {
  $entity = EnhancedEntity::create([
    'name' => 'rev 1',
    'type' => 'entity_test_enhance',
  ]);
  $entity
    ->save();
  $entity->name->value = 'rev 2';
  $entity
    ->setNewRevision(TRUE);
  $entity
    ->isDefaultRevision(TRUE);
  $entity
    ->save();
  $role = Role::create([
    'id' => 'test_role',
  ]);
  $role
    ->grantPermission('administer entity_test_enhanced');
  $role
    ->grantPermission('revert all entity_test_enhanced revisions');
  $role
    ->save();
  $user = User::create([
    'name' => 'Test user',
  ]);
  $user
    ->addRole($role
    ->id());
  \Drupal::service('account_switcher')
    ->switchTo($user);

  /** @var \Symfony\Component\HttpKernel\HttpKernelInterface $http_kernel */
  $http_kernel = \Drupal::service('http_kernel');
  $request = Request::create($entity
    ->url('revision-revert-form'));
  $response = $http_kernel
    ->handle($request);
  $this
    ->assertEquals(200, $response
    ->getStatusCode());
}