function RouteCompilerTest::testCompilationDefaultValue

Same name in other branches
  1. 9 core/tests/Drupal/Tests/Core/Routing/RouteCompilerTest.php \Drupal\Tests\Core\Routing\RouteCompilerTest::testCompilationDefaultValue()
  2. 8.9.x core/tests/Drupal/Tests/Core/Routing/RouteCompilerTest.php \Drupal\Tests\Core\Routing\RouteCompilerTest::testCompilationDefaultValue()
  3. 11.x core/tests/Drupal/Tests/Core/Routing/RouteCompilerTest.php \Drupal\Tests\Core\Routing\RouteCompilerTest::testCompilationDefaultValue()

Confirms that a compiled route with default values has the correct outline.

File

core/tests/Drupal/Tests/Core/Routing/RouteCompilerTest.php, line 69

Class

RouteCompilerTest
@coversDefaultClass \Drupal\Core\Routing\RouteCompiler @group Routing

Namespace

Drupal\Tests\Core\Routing

Code

public function testCompilationDefaultValue() : void {
    // Because "here" has a default value, it should not factor into the outline
    // or the fitness.
    $route = new Route('/test/{something}/more/{here}', [
        'here' => 'there',
    ]);
    $route->setOption('compiler_class', RouteCompiler::class);
    $compiled = $route->compile();
    $this->assertEquals(5, $compiled->getFit(), 'The fit was not correct.');
    $this->assertEquals('/test/%/more', $compiled->getPatternOutline(), 'The pattern outline was not correct.');
}

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