3 namespace Drupal\KernelTests\Core\Entity;
5 use Drupal\entity_test\Entity\EntityTestWithRevisionLog;
6 use Drupal\KernelTests\KernelTestBase;
7 use Drupal\user\Entity\User;
10 * @coversDefaultClass \Drupal\Core\Entity\RevisionableContentEntityBase
13 class RevisionableContentEntityBaseTest extends KernelTestBase {
18 public static $modules = ['entity_test', 'system', 'user'];
23 protected function setUp() {
26 $this->installEntitySchema('entity_test_revlog');
27 $this->installEntitySchema('user');
28 $this->installSchema('system', 'sequences');
31 public function testRevisionableContentEntity() {
32 $user = User::create(['name' => 'test name']);
34 /** @var \Drupal\entity_test\Entity\EntityTestWithRevisionLog $entity */
35 $entity = EntityTestWithRevisionLog::create([
36 'type' => 'entity_test_revlog',
40 $entity->setNewRevision(TRUE);
41 $random_timestamp = rand(1e8, 2e8);
42 $entity->setRevisionCreationTime($random_timestamp);
43 $entity->setRevisionUserId($user->id());
44 $entity->setRevisionLogMessage('This is my log message');
47 $revision_id = $entity->getRevisionId();
49 $entity = \Drupal::entityTypeManager()->getStorage('entity_test_revlog')->loadRevision($revision_id);
50 $this->assertEquals($random_timestamp, $entity->getRevisionCreationTime());
51 $this->assertEquals($user->id(), $entity->getRevisionUserId());
52 $this->assertEquals($user->id(), $entity->getRevisionUser()->id());
53 $this->assertEquals('This is my log message', $entity->getRevisionLogMessage());