You are here

protected function ParagraphsLastEntityQueryTrait::getLastEntityOfType in Paragraphs 8

Gets the latest entity created of a given type.

Will fail the test if there is no entity of that type.

Parameters

string $entity_type_id: The storage name of the entity.

bool $load: (optional) Whether or not the return thould be the loaded entity. Defaults to FALSE.

Return value

mixed The ID of the latest created entity of that type. If $load is TRUE, will use ::loadUnchanged() to get a fresh version of the entity object and return it.

4 calls to ParagraphsLastEntityQueryTrait::getLastEntityOfType()
ParagraphsClientsideButtonsTest::testAddParagraphAboveButton in tests/src/FunctionalJavascript/ParagraphsClientsideButtonsTest.php
Tests the "Add above" button.
ParagraphsContentModerationTranslationsTest::testTranslatableContentEntities in tests/src/Functional/WidgetStable/ParagraphsContentModerationTranslationsTest.php
Tests content moderation with translatable content entities.
ParagraphsLegacyContentModerationTranslationsTest::testTranslatableContentEntities in tests/src/Functional/WidgetLegacy/ParagraphsLegacyContentModerationTranslationsTest.php
Tests content moderation with translatable content entities.
ParagraphsTranslationsTest::testUntranslatableAutoCollapse in tests/src/Functional/WidgetStable/ParagraphsTranslationsTest.php
Tests auto collapse when paragraphs do not have translatable fields.

File

tests/src/Traits/ParagraphsLastEntityQueryTrait.php, line 26

Class

ParagraphsLastEntityQueryTrait
Test trait providing helpers to query latest entities created.

Namespace

Drupal\Tests\paragraphs\Traits

Code

protected function getLastEntityOfType($entity_type_id, $load = FALSE) {
  $query_result = \Drupal::entityQuery($entity_type_id)
    ->sort('created', 'DESC')
    ->range(0, 1)
    ->execute();
  $entity_id = reset($query_result);
  if (empty($entity_id)) {
    $this
      ->fail('Could not find latest entity of type: ' . $entity_type_id);
  }
  if ($load) {
    return \Drupal::entityTypeManager()
      ->getStorage($entity_type_id)
      ->loadUnchanged($entity_id);
  }
  else {
    return $entity_id;
  }
}