function FinderTest::testFoundDataIsInDependencyOrder

Same name and namespace in other branches
  1. 10 core/tests/Drupal/Tests/Core/DefaultContent/FinderTest.php \Drupal\Tests\Core\DefaultContent\FinderTest::testFoundDataIsInDependencyOrder()

Tests that any discovered entity data is sorted into dependency order.

File

core/tests/Drupal/Tests/Core/DefaultContent/FinderTest.php, line 20

Class

FinderTest
@covers \Drupal\Core\DefaultContent\Finder[[api-linebreak]] @group DefaultContent

Namespace

Drupal\Tests\Core\DefaultContent

Code

public function testFoundDataIsInDependencyOrder() : void {
  $finder = new Finder(__DIR__ . '/../../../../fixtures/default_content');
  $actual_order = array_keys($finder->data);
  $node_uuid = 'e1714f23-70c0-4493-8e92-af1901771921';
  // The author of the node should come before the node itself. We're using
  // named arguments here purely for clarity.
  $this->assertRelativeOrder($actual_order, earlier: '94503467-be7f-406c-9795-fc25baa22203', later: $node_uuid);
  // Same with the taxonomy term referenced by the node.
  $this->assertRelativeOrder($actual_order, earlier: '550f86ad-aa11-4047-953f-636d42889f85', later: $node_uuid);
  // The menu link to the node should come after the node.
  $this->assertRelativeOrder($actual_order, earlier: $node_uuid, later: '3434bd5a-d2cd-4f26-bf79-a7f6b951a21b');
  // A node that is in a workspace should come after the workspace itself.
  $this->assertRelativeOrder($actual_order, earlier: '384c4c10-cc41-4d7e-a1cc-85d1cdc9e87d', later: '48475954-e878-439c-9d3d-226724a44269');
}

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