You are here

protected function ProductVariationResourceTest::getRelationshipFieldNames in Commerce Core 8.2

@todo remove after https://www.drupal.org/project/drupal/issues/3163590

Overrides ResourceTestBase::getRelationshipFieldNames

1 call to ProductVariationResourceTest::getRelationshipFieldNames()
ProductVariationResourceTest::getNestedIncludePaths in modules/product/tests/src/Functional/Jsonapi/ProductVariationResourceTest.php
@todo remove after https://www.drupal.org/project/drupal/issues/3163590

File

modules/product/tests/src/Functional/Jsonapi/ProductVariationResourceTest.php, line 369

Class

ProductVariationResourceTest
JSON:API resource test for variations.

Namespace

Drupal\Tests\commerce_product\Functional\Jsonapi

Code

protected function getRelationshipFieldNames(EntityInterface $entity = NULL, ResourceType $resource_type = NULL) {
  $entity = $entity ?: $this->entity;
  $resource_type = $resource_type ?: $this->resourceType;

  // Only content entity types can have relationships.
  $fields = $entity instanceof ContentEntityInterface ? iterator_to_array($entity) : [];
  return array_reduce($fields, function ($field_names, $field) use ($resource_type) {

    /** @var \Drupal\Core\Field\FieldItemListInterface $field */
    if (static::isReferenceFieldDefinition($field
      ->getFieldDefinition())) {
      $field_names[] = $resource_type
        ->getPublicName($field
        ->getName());
    }
    return $field_names;
  }, []);
}