You are here

public function UrlTest::testFromUserInput in Drupal 8

Tests the fromUserInput method with valid paths.

@covers ::fromUserInput @dataProvider providerFromValidInternalUri

File

core/tests/Drupal/Tests/Core/UrlTest.php, line 188
Contains \Drupal\Tests\Core\UrlTest.

Class

UrlTest
@coversDefaultClass \Drupal\Core\Url @group UrlTest

Namespace

Drupal\Tests\Core

Code

public function testFromUserInput($path) {
  $url = Url::fromUserInput($path);
  $uri = $url
    ->getUri();
  $this
    ->assertInstanceOf('Drupal\\Core\\Url', $url);
  $this
    ->assertFalse($url
    ->isRouted());
  $this
    ->assertStringStartsWith('base:', $uri);
  $parts = UrlHelper::parse($path);
  $options = $url
    ->getOptions();
  if (!empty($parts['fragment'])) {
    $this
      ->assertSame($parts['fragment'], $options['fragment']);
  }
  else {
    $this
      ->assertArrayNotHasKey('fragment', $options);
  }
  if (!empty($parts['query'])) {
    $this
      ->assertEquals($parts['query'], $options['query']);
  }
  else {
    $this
      ->assertArrayNotHasKey('query', $options);
  }
}