function GraphTest::assertReversePaths

Same name in other branches
  1. 9 core/tests/Drupal/Tests/Component/Graph/GraphTest.php \Drupal\Tests\Component\Graph\GraphTest::assertReversePaths()
  2. 8.9.x core/tests/Drupal/Tests/Component/Graph/GraphTest.php \Drupal\Tests\Component\Graph\GraphTest::assertReversePaths()
  3. 11.x core/tests/Drupal/Tests/Component/Graph/GraphTest.php \Drupal\Tests\Component\Graph\GraphTest::assertReversePaths()

Verify expected reverse paths in a graph.

@internal

Parameters

array $graph: A graph array processed by \Drupal\Component\Graph\Graph::searchAndSort()

array $expected_reverse_paths: An associative array containing vertices with their expected reverse paths.

1 call to GraphTest::assertReversePaths()
GraphTest::testDepthFirstSearch in core/tests/Drupal/Tests/Component/Graph/GraphTest.php
Tests depth-first-search features.

File

core/tests/Drupal/Tests/Component/Graph/GraphTest.php, line 135

Class

GraphTest
@coversDefaultClass \Drupal\Component\Graph\Graph @group Graph

Namespace

Drupal\Tests\Component\Graph

Code

protected function assertReversePaths(array $graph, array $expected_reverse_paths) : void {
    foreach ($expected_reverse_paths as $vertex => $paths) {
        // Build an array with keys = $paths and values = TRUE.
        $expected = array_fill_keys($paths, TRUE);
        $result = $graph[$vertex]['reverse_paths'] ?? [];
        $this->assertEquals($expected, $result, sprintf('Expected reverse paths for vertex %s: %s, got %s', $vertex, $this->displayArray($expected, TRUE), $this->displayArray($result, TRUE)));
    }
}

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