function ContextualUnitTest::_contextual_links_id_testcases

Provides testcases for testContextualLinksToId() and

2 calls to ContextualUnitTest::_contextual_links_id_testcases()

File

drupal/core/modules/contextual/lib/Drupal/contextual/Tests/ContextualUnitTest.php, line 27
Contains \Drupal\contextual\Tests\ContextualUnitTest.

Class

ContextualUnitTest
Tests _contextual_links_to_id() & _contextual_id_to_links().

Namespace

Drupal\contextual\Tests

Code

function _contextual_links_id_testcases() {

  // Test branch conditions:
  // - one module.
  // - one dynamic path argument.
  // - no metadata.
  $tests[] = array(
    'links' => array(
      'node' => array(
        'node',
        array(
          '14031991',
        ),
        array(),
      ),
    ),
    'id' => 'node:node:14031991:',
  );

  // Test branch conditions:
  // - one module.
  // - multiple dynamic path arguments.
  // - no metadata.
  $tests[] = array(
    'links' => array(
      'foo' => array(
        'baz/in/ga',
        array(
          'bar',
          'baz',
          'qux',
        ),
        array(),
      ),
    ),
    'id' => 'foo:baz/in/ga:bar/baz/qux:',
  );

  // Test branch conditions:
  // - one module.
  // - one dynamic path argument.
  // - metadata.
  $tests[] = array(
    'links' => array(
      'views_ui' => array(
        'admin/structure/views/view',
        array(
          'frontpage',
        ),
        array(
          'location' => 'page',
          'display' => 'page_1',
        ),
      ),
    ),
    'id' => 'views_ui:admin/structure/views/view:frontpage:location=page&display=page_1',
  );

  // Test branch conditions:
  // - multiple modules.
  // - multiple dynamic path arguments.
  $tests[] = array(
    'links' => array(
      'node' => array(
        'node',
        array(
          '14031991',
        ),
        array(),
      ),
      'foo' => array(
        'baz/in/ga',
        array(
          'bar',
          'baz',
          'qux',
        ),
        array(),
      ),
      'edge' => array(
        'edge',
        array(
          '20011988',
        ),
        array(),
      ),
    ),
    'id' => 'node:node:14031991:|foo:baz/in/ga:bar/baz/qux:|edge:edge:20011988:',
  );
  return $tests;
}