function PathBasedBreadcrumbBuilderTest::testBuildWithNonProcessedPath

Same name in other branches
  1. 9 core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php \Drupal\Tests\system\Unit\Breadcrumbs\PathBasedBreadcrumbBuilderTest::testBuildWithNonProcessedPath()
  2. 10 core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php \Drupal\Tests\system\Unit\Breadcrumbs\PathBasedBreadcrumbBuilderTest::testBuildWithNonProcessedPath()
  3. 11.x core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php \Drupal\Tests\system\Unit\Breadcrumbs\PathBasedBreadcrumbBuilderTest::testBuildWithNonProcessedPath()

Tests the build method with a non processed path.

@covers ::build @covers ::getRequestForPath

File

core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php, line 320

Class

PathBasedBreadcrumbBuilderTest
@coversDefaultClass \Drupal\system\PathBasedBreadcrumbBuilder @group system

Namespace

Drupal\Tests\system\Unit\Breadcrumbs

Code

public function testBuildWithNonProcessedPath() {
    $this->context
        ->expects($this->once())
        ->method('getPathInfo')
        ->will($this->returnValue('/example/bar'));
    $this->pathProcessor
        ->expects($this->once())
        ->method('processInbound')
        ->will($this->returnValue(FALSE));
    $this->requestMatcher
        ->expects($this->any())
        ->method('matchRequest')
        ->will($this->returnValue([]));
    $breadcrumb = $this->builder
        ->build($this->createMock('Drupal\\Core\\Routing\\RouteMatchInterface'));
    // No path matched, though at least the frontpage is displayed.
    $this->assertEquals([
        0 => new Link('Home', new Url('<front>')),
    ], $breadcrumb->getLinks());
    $this->assertEquals([
        'url.path.is_front',
        'url.path.parent',
    ], $breadcrumb->getCacheContexts());
    $this->assertEquals([], $breadcrumb->getCacheTags());
    $this->assertEquals(Cache::PERMANENT, $breadcrumb->getCacheMaxAge());
}

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