public function ModerationInformationTest::testHasPendingRevision in Drupal 8
Same name and namespace in other branches
- 9 core/modules/content_moderation/tests/src/Kernel/ModerationInformationTest.php \Drupal\Tests\content_moderation\Kernel\ModerationInformationTest::testHasPendingRevision()
@covers ::hasPendingRevision
File
- core/
modules/ content_moderation/ tests/ src/ Kernel/ ModerationInformationTest.php, line 218
Class
- ModerationInformationTest
- @coversDefaultClass \Drupal\content_moderation\ModerationInformation @group content_moderation
Namespace
Drupal\Tests\content_moderation\KernelCode
public function testHasPendingRevision() {
$entity = EntityTestMulRevPub::create([
'moderation_state' => 'published',
]);
$entity
->save();
// Add a translation as a new revision.
$translated = $entity
->addTranslation('de');
$translated->moderation_state = 'published';
$translated
->setNewRevision(TRUE);
// Test a scenario where the default revision exists with the default
// language in a published state and a non-default language in an unsaved
// state.
$this
->assertFalse($this->moderationInformation
->hasPendingRevision($translated));
// Save the translation and assert there is no pending revision.
$translated
->save();
$this
->assertFalse($this->moderationInformation
->hasPendingRevision($translated));
// Create a new draft for the translation and assert there is a pending
// revision.
$translated->moderation_state = 'draft';
$translated
->setNewRevision(TRUE);
$translated
->save();
$this
->assertTrue($this->moderationInformation
->hasPendingRevision($translated));
}