protected function DefaultContentModerationStateRevisionUpdateTest::assertCompositeEntityMatchesDefaultRevisionId in Drupal 8
Assert for the given entity, the default revision ID matches.
Parameters
\Drupal\Core\Entity\ContentEntityInterface $entity: The entity to use for the assertion.
1 call to DefaultContentModerationStateRevisionUpdateTest::assertCompositeEntityMatchesDefaultRevisionId()
- DefaultContentModerationStateRevisionUpdateTest::testUpdateDefaultRevision in core/
modules/ content_moderation/ tests/ src/ Functional/ Update/ DefaultContentModerationStateRevisionUpdateTest.php - Test updating the default revision.
File
- core/
modules/ content_moderation/ tests/ src/ Functional/ Update/ DefaultContentModerationStateRevisionUpdateTest.php, line 67
Class
- DefaultContentModerationStateRevisionUpdateTest
- Test updating the ContentModerationState entity default revisions.
Namespace
Drupal\Tests\content_moderation\Functional\UpdateCode
protected function assertCompositeEntityMatchesDefaultRevisionId(ContentEntityInterface $entity) {
$entity_type_manager = $this->container
->get('entity_type.manager');
$entity_list = $entity_type_manager
->getStorage('content_moderation_state')
->loadByProperties([
'content_entity_type_id' => $entity
->getEntityTypeId(),
'content_entity_id' => $entity
->id(),
]);
$content_moderation_state_entity = array_shift($entity_list);
$this
->assertEquals($entity
->getLoadedRevisionId(), $content_moderation_state_entity->content_entity_revision_id->value);
// Check that the data table records were updated correctly.
/** @var \Drupal\Core\Database\Connection $database */
$database = $this->container
->get('database');
$query = 'SELECT * FROM {content_moderation_state_field_data} WHERE id = :id';
$records = $database
->query($query, [
':id' => $content_moderation_state_entity
->id(),
])
->fetchAllAssoc('langcode');
foreach ($records as $langcode => $record) {
/** @var \Drupal\Core\Entity\ContentEntityInterface $translation */
$translation = $content_moderation_state_entity
->getTranslation($langcode);
foreach ((array) $record as $field_name => $value) {
if ($translation
->hasField($field_name)) {
$items = $translation
->get($field_name)
->getValue();
$this
->assertEquals(current($items[0]), $value);
}
}
}
}