function PathBasedBreadcrumbBuilderTest::testBuildWithNonProcessedPath

Same name and namespace in other branches
  1. 9 core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php \Drupal\Tests\system\Unit\Breadcrumbs\PathBasedBreadcrumbBuilderTest::testBuildWithNonProcessedPath()
  2. 8.9.x 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 317

Class

PathBasedBreadcrumbBuilderTest
@coversDefaultClass \Drupal\system\PathBasedBreadcrumbBuilder[[api-linebreak]] @group system

Namespace

Drupal\Tests\system\Unit\Breadcrumbs

Code

public function testBuildWithNonProcessedPath() : void {
  $this->context
    ->expects($this->once())
    ->method('getPathInfo')
    ->willReturn('/example/bar');
  $this->pathProcessor
    ->expects($this->once())
    ->method('processInbound')
    ->willReturn(FALSE);
  $this->requestMatcher
    ->expects($this->any())
    ->method('matchRequest')
    ->willReturn([]);
  $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->assertEqualsCanonicalizing([
    'url.path.is_front',
    'url.path.parent',
  ], $breadcrumb->getCacheContexts());
  $this->assertEqualsCanonicalizing([], $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.