function ContentModerationStateTest::doTestContentModerationStateTranslationDataRemoval

Same name and namespace in other branches
  1. 11.x core/modules/content_moderation/tests/src/Kernel/ContentModerationStateTest.php \Drupal\Tests\content_moderation\Kernel\ContentModerationStateTest::doTestContentModerationStateTranslationDataRemoval()

Tests removal of content moderation state translations.

1 call to ContentModerationStateTest::doTestContentModerationStateTranslationDataRemoval()
ContentModerationStateTest::testContentModerationStateTranslationDataRemoval in core/modules/content_moderation/tests/src/Kernel/ContentModerationStateTest.php
Tests removal of content moderation state translations.

File

core/modules/content_moderation/tests/src/Kernel/ContentModerationStateTest.php, line 342

Class

ContentModerationStateTest
Tests links between a content entity and a content_moderation_state entity.

Namespace

Drupal\Tests\content_moderation\Kernel

Code

public function doTestContentModerationStateTranslationDataRemoval($entity_type_id) : void {
  // Test content moderation state translation deletion.
  if ($this->entityTypeManager
    ->getDefinition($entity_type_id)
    ->isTranslatable()) {
    /** @var \Drupal\Core\Entity\ContentEntityInterface $entity */
    $entity = $this->createEntity($entity_type_id, 'published');
    $langcode = 'fr';
    $translation = $entity->addTranslation($langcode, [
      $entity->getEntityType()
        ->getKey('label') => 'French title test',
    ]);
    // Make sure we add values for all of the required fields.
    if ($entity_type_id == 'block_content') {
      $translation->info = $this->randomString();
    }
    $translation->save();
    $content_moderation_state = ContentModerationState::loadFromModeratedEntity($entity);
    $this->assertTrue($content_moderation_state->hasTranslation($langcode));
    $entity->removeTranslation($langcode);
    $entity->save();
    $content_moderation_state = ContentModerationState::loadFromModeratedEntity($entity);
    $this->assertFalse($content_moderation_state->hasTranslation($langcode));
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.