You are here

protected function EntityDisplayTest::assertDependencyHelper in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/field_ui/tests/src/Kernel/EntityDisplayTest.php \Drupal\Tests\field_ui\Kernel\EntityDisplayTest::assertDependencyHelper()

Provides a helper for dependency assertions.

Parameters

bool $assertion: Assertion: positive or negative.

string $type: The dependency type: 'config', 'content', 'module' or 'theme'.

string $key: The string to be checked.

\Drupal\Core\Entity\Display\EntityDisplayInterface $display: The entity display object to get dependencies from.

Return value

bool TRUE if the assertion succeeded.

2 calls to EntityDisplayTest::assertDependencyHelper()
EntityDisplayTest::assertDependency in core/modules/field_ui/tests/src/Kernel/EntityDisplayTest.php
Asserts that $key is a $type type dependency of $display config entity.
EntityDisplayTest::assertNoDependency in core/modules/field_ui/tests/src/Kernel/EntityDisplayTest.php
Asserts that $key is not a $type type dependency of $display config entity.

File

core/modules/field_ui/tests/src/Kernel/EntityDisplayTest.php, line 691

Class

EntityDisplayTest
Tests the entity display configuration entities.

Namespace

Drupal\Tests\field_ui\Kernel

Code

protected function assertDependencyHelper($assertion, $type, $key, EntityDisplayInterface $display) {
  $all_dependencies = $display
    ->getDependencies();
  $dependencies = !empty($all_dependencies[$type]) ? $all_dependencies[$type] : [];
  $context = $display instanceof EntityViewDisplayInterface ? 'View' : 'Form';
  $value = $assertion ? in_array($key, $dependencies) : !in_array($key, $dependencies);
  $args = [
    '@context' => $context,
    '@id' => $display
      ->id(),
    '@type' => $type,
    '@key' => $key,
  ];
  $message = $assertion ? new FormattableMarkup("@context display '@id' depends on @type '@key'.", $args) : new FormattableMarkup("@context display '@id' do not depend on @type '@key'.", $args);
  $this
    ->assertTrue($value, $message);
  return TRUE;
}