Loading core/modules/path/src/PathAliasListBuilder.php +3 −1 Original line number Diff line number Diff line Loading @@ -171,10 +171,12 @@ public function buildRow(EntityInterface $entity) { '#url' => $url, ]; // Create a new URL for linking to the unaliased system path. $system_url = Url::fromUri("base:{$path}"); $row['data']['path']['data'] = [ '#type' => 'link', '#title' => $path, '#url' => $url, '#url' => $system_url, ]; if ($this->languageManager->isMultilingual()) { Loading core/modules/path/tests/src/Functional/PathAdminTest.php +19 −3 Original line number Diff line number Diff line Loading @@ -47,25 +47,28 @@ public function testPathFiltering() { $node3 = $this->drupalCreateNode(); // Create aliases. $path1 = '/node/' . $node1->id(); $alias1 = '/' . $this->randomMachineName(8); $edit = [ 'path[0][value]' => '/node/' . $node1->id(), 'path[0][value]' => $path1, 'alias[0][value]' => $alias1, ]; $this->drupalGet('admin/config/search/path/add'); $this->submitForm($edit, 'Save'); $path2 = '/node/' . $node2->id(); $alias2 = '/' . $this->randomMachineName(8); $edit = [ 'path[0][value]' => '/node/' . $node2->id(), 'path[0][value]' => $path2, 'alias[0][value]' => $alias2, ]; $this->drupalGet('admin/config/search/path/add'); $this->submitForm($edit, 'Save'); $path3 = '/node/' . $node3->id(); $alias3 = '/' . $this->randomMachineName(4) . '/' . $this->randomMachineName(4); $edit = [ 'path[0][value]' => '/node/' . $node3->id(), 'path[0][value]' => $path3, 'alias[0][value]' => $alias3, ]; $this->drupalGet('admin/config/search/path/add'); Loading @@ -79,6 +82,9 @@ public function testPathFiltering() { $this->assertSession()->linkByHrefExists($alias1); $this->assertSession()->linkByHrefNotExists($alias2); $this->assertSession()->linkByHrefNotExists($alias3); $this->assertSession()->linkByHrefExists($path1); $this->assertSession()->linkByHrefNotExists($path2); $this->assertSession()->linkByHrefNotExists($path3); // Filter by the second alias. $edit = [ Loading @@ -88,6 +94,9 @@ public function testPathFiltering() { $this->assertSession()->linkByHrefNotExists($alias1); $this->assertSession()->linkByHrefExists($alias2); $this->assertSession()->linkByHrefNotExists($alias3); $this->assertSession()->linkByHrefNotExists($path1); $this->assertSession()->linkByHrefExists($path2); $this->assertSession()->linkByHrefNotExists($path3); // Filter by the third alias which has a slash. $edit = [ Loading @@ -97,6 +106,9 @@ public function testPathFiltering() { $this->assertSession()->linkByHrefNotExists($alias1); $this->assertSession()->linkByHrefNotExists($alias2); $this->assertSession()->linkByHrefExists($alias3); $this->assertSession()->linkByHrefNotExists($path1); $this->assertSession()->linkByHrefNotExists($path2); $this->assertSession()->linkByHrefExists($path3); // Filter by a random string with a different length. $edit = [ Loading @@ -105,12 +117,16 @@ public function testPathFiltering() { $this->submitForm($edit, 'Filter'); $this->assertSession()->linkByHrefNotExists($alias1); $this->assertSession()->linkByHrefNotExists($alias2); $this->assertSession()->linkByHrefNotExists($path1); $this->assertSession()->linkByHrefNotExists($path2); // Reset the filter. $edit = []; $this->submitForm($edit, 'Reset'); $this->assertSession()->linkByHrefExists($alias1); $this->assertSession()->linkByHrefExists($alias2); $this->assertSession()->linkByHrefExists($path1); $this->assertSession()->linkByHrefExists($path2); } } Loading
core/modules/path/src/PathAliasListBuilder.php +3 −1 Original line number Diff line number Diff line Loading @@ -171,10 +171,12 @@ public function buildRow(EntityInterface $entity) { '#url' => $url, ]; // Create a new URL for linking to the unaliased system path. $system_url = Url::fromUri("base:{$path}"); $row['data']['path']['data'] = [ '#type' => 'link', '#title' => $path, '#url' => $url, '#url' => $system_url, ]; if ($this->languageManager->isMultilingual()) { Loading
core/modules/path/tests/src/Functional/PathAdminTest.php +19 −3 Original line number Diff line number Diff line Loading @@ -47,25 +47,28 @@ public function testPathFiltering() { $node3 = $this->drupalCreateNode(); // Create aliases. $path1 = '/node/' . $node1->id(); $alias1 = '/' . $this->randomMachineName(8); $edit = [ 'path[0][value]' => '/node/' . $node1->id(), 'path[0][value]' => $path1, 'alias[0][value]' => $alias1, ]; $this->drupalGet('admin/config/search/path/add'); $this->submitForm($edit, 'Save'); $path2 = '/node/' . $node2->id(); $alias2 = '/' . $this->randomMachineName(8); $edit = [ 'path[0][value]' => '/node/' . $node2->id(), 'path[0][value]' => $path2, 'alias[0][value]' => $alias2, ]; $this->drupalGet('admin/config/search/path/add'); $this->submitForm($edit, 'Save'); $path3 = '/node/' . $node3->id(); $alias3 = '/' . $this->randomMachineName(4) . '/' . $this->randomMachineName(4); $edit = [ 'path[0][value]' => '/node/' . $node3->id(), 'path[0][value]' => $path3, 'alias[0][value]' => $alias3, ]; $this->drupalGet('admin/config/search/path/add'); Loading @@ -79,6 +82,9 @@ public function testPathFiltering() { $this->assertSession()->linkByHrefExists($alias1); $this->assertSession()->linkByHrefNotExists($alias2); $this->assertSession()->linkByHrefNotExists($alias3); $this->assertSession()->linkByHrefExists($path1); $this->assertSession()->linkByHrefNotExists($path2); $this->assertSession()->linkByHrefNotExists($path3); // Filter by the second alias. $edit = [ Loading @@ -88,6 +94,9 @@ public function testPathFiltering() { $this->assertSession()->linkByHrefNotExists($alias1); $this->assertSession()->linkByHrefExists($alias2); $this->assertSession()->linkByHrefNotExists($alias3); $this->assertSession()->linkByHrefNotExists($path1); $this->assertSession()->linkByHrefExists($path2); $this->assertSession()->linkByHrefNotExists($path3); // Filter by the third alias which has a slash. $edit = [ Loading @@ -97,6 +106,9 @@ public function testPathFiltering() { $this->assertSession()->linkByHrefNotExists($alias1); $this->assertSession()->linkByHrefNotExists($alias2); $this->assertSession()->linkByHrefExists($alias3); $this->assertSession()->linkByHrefNotExists($path1); $this->assertSession()->linkByHrefNotExists($path2); $this->assertSession()->linkByHrefExists($path3); // Filter by a random string with a different length. $edit = [ Loading @@ -105,12 +117,16 @@ public function testPathFiltering() { $this->submitForm($edit, 'Filter'); $this->assertSession()->linkByHrefNotExists($alias1); $this->assertSession()->linkByHrefNotExists($alias2); $this->assertSession()->linkByHrefNotExists($path1); $this->assertSession()->linkByHrefNotExists($path2); // Reset the filter. $edit = []; $this->submitForm($edit, 'Reset'); $this->assertSession()->linkByHrefExists($alias1); $this->assertSession()->linkByHrefExists($alias2); $this->assertSession()->linkByHrefExists($path1); $this->assertSession()->linkByHrefExists($path2); } }