X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=web%2Fcore%2Ftests%2FDrupal%2FTests%2FCore%2FMenu%2FLocalTaskDefaultTest.php;h=2f59ee1acb8b31b41db2d47356302f1d31a0af9b;hp=84b91afe97d7322432d4c64d84bc0e54c8e094aa;hb=0bf8d09d2542548982e81a441b1f16e75873a04f;hpb=74df008bdbb3a11eeea356744f39b802369bda3c diff --git a/web/core/tests/Drupal/Tests/Core/Menu/LocalTaskDefaultTest.php b/web/core/tests/Drupal/Tests/Core/Menu/LocalTaskDefaultTest.php index 84b91afe9..2f59ee1ac 100644 --- a/web/core/tests/Drupal/Tests/Core/Menu/LocalTaskDefaultTest.php +++ b/web/core/tests/Drupal/Tests/Core/Menu/LocalTaskDefaultTest.php @@ -85,7 +85,7 @@ class LocalTaskDefaultTest extends UnitTestCase { */ public function testGetRouteParametersForStaticRoute() { $this->pluginDefinition = [ - 'route_name' => 'test_route' + 'route_name' => 'test_route', ]; $this->routeProvider->expects($this->once()) @@ -105,7 +105,7 @@ class LocalTaskDefaultTest extends UnitTestCase { public function testGetRouteParametersInPluginDefinitions() { $this->pluginDefinition = [ 'route_name' => 'test_route', - 'route_parameters' => ['parameter' => 'example'] + 'route_parameters' => ['parameter' => 'example'], ]; $this->routeProvider->expects($this->once()) @@ -124,7 +124,7 @@ class LocalTaskDefaultTest extends UnitTestCase { */ public function testGetRouteParametersForDynamicRouteWithNonUpcastedParameters() { $this->pluginDefinition = [ - 'route_name' => 'test_route' + 'route_name' => 'test_route', ]; $route = new Route('/test-route/{parameter}'); @@ -147,7 +147,7 @@ class LocalTaskDefaultTest extends UnitTestCase { */ public function testGetRouteParametersForDynamicRouteWithUpcastedParameters() { $this->pluginDefinition = [ - 'route_name' => 'test_route' + 'route_name' => 'test_route', ]; $route = new Route('/test-route/{parameter}'); @@ -162,6 +162,28 @@ class LocalTaskDefaultTest extends UnitTestCase { $this->assertEquals(['parameter' => 'example'], $this->localTaskBase->getRouteParameters($route_match)); } + /** + * Tests the getRouteParameters method for a route with upcasted parameters. + * + * @covers ::getRouteParameters + */ + public function testGetRouteParametersForDynamicRouteWithUpcastedParametersEmptyRawParameters() { + $this->pluginDefinition = [ + 'route_name' => 'test_route', + ]; + + $route = new Route('/test-route/{parameter}'); + $this->routeProvider->expects($this->once()) + ->method('getRouteByName') + ->with('test_route') + ->will($this->returnValue($route)); + + $this->setupLocalTaskDefault(); + + $route_match = new RouteMatch('', $route, ['parameter' => (object) 'example2']); + $this->assertEquals(['parameter' => (object) 'example2'], $this->localTaskBase->getRouteParameters($route_match)); + } + /** * Defines a data provider for testGetWeight(). * @@ -177,17 +199,17 @@ class LocalTaskDefaultTest extends UnitTestCase { [ 'base_route' => 'local_task_default', 'route_name' => 'local_task_default', - 'id' => 'local_task_default' + 'id' => 'local_task_default', ], 'local_task_default', - -10 + -10, ], // If the base route is different from the route of the tab, ignore it. [ [ 'base_route' => 'local_task_example', 'route_name' => 'local_task_other', - 'id' => 'local_task_default' + 'id' => 'local_task_default', ], 'local_task_default', 0, @@ -291,9 +313,9 @@ class LocalTaskDefaultTest extends UnitTestCase { 'attributes' => [ 'class' => [ 'example', - 'is-active' - ] - ] + 'is-active', + ], + ], ], $this->localTaskBase->getOptions($route_match)); } @@ -317,6 +339,7 @@ class LocalTaskDefaultTest extends UnitTestCase { } class TestLocalTaskDefault extends LocalTaskDefault { + public function setRouteProvider(RouteProviderInterface $route_provider) { $this->routeProvider = $route_provider; return $this;