
| Current Path : /var/www/html_old/abc/web/core/tests/Drupal/Tests/Core/Enhancer/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/html_old/abc/web/core/tests/Drupal/Tests/Core/Enhancer/EntityRevisionRouteEnhancerTest.php |
<?php
namespace Drupal\Tests\Core\Enhancer;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Routing\Enhancer\EntityRevisionRouteEnhancer;
use Drupal\Tests\UnitTestCase;
use Symfony\Cmf\Component\Routing\RouteObjectInterface;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Route;
/**
* @coversDefaultClass \Drupal\Core\Routing\Enhancer\EntityRevisionRouteEnhancer
* @group Entity
*/
class EntityRevisionRouteEnhancerTest extends UnitTestCase {
/**
* @var \Drupal\Core\Routing\RouteEnhancer\EntityRevisionRouteEnhancer
*/
protected $routeEnhancer;
/**
* {@inheritdoc}
*/
protected function setUp() {
parent::setUp();
$this->routeEnhancer = new EntityRevisionRouteEnhancer();
}
/**
* @covers ::enhance
*/
public function testEnhanceWithoutParameter() {
$route = new Route('/test-path/{entity_test}');
$request = Request::create('/test-path');
$defaults = [];
$defaults[RouteObjectInterface::ROUTE_OBJECT] = $route;
$this->assertEquals($defaults, $this->routeEnhancer->enhance($defaults, $request));
}
/**
* @covers ::enhance
*/
public function testEnhanceWithoutEntityRevision() {
$route = new Route('/test-path/{entity_test}', [], [], ['parameters' => ['entity_test' => ['type' => 'entity:entity_test']]]);
$request = Request::create('/test-path/123');
$entity = $this->prophesize(EntityInterface::class);
$defaults = [];
$defaults['entity_test'] = $entity->reveal();
$defaults[RouteObjectInterface::ROUTE_OBJECT] = $route;
$this->assertEquals($defaults, $this->routeEnhancer->enhance($defaults, $request));
}
/**
* @covers ::enhance
*/
public function testEnhanceWithEntityRevision() {
$route = new Route('/test-path/{entity_test_revision}', [], [], ['parameters' => ['entity_test_revision' => ['type' => 'entity_revision:entity_test']]]);
$request = Request::create('/test-path/123');
$entity = $this->prophesize(EntityInterface::class);
$defaults = [];
$defaults['entity_test_revision'] = $entity->reveal();
$defaults[RouteObjectInterface::ROUTE_OBJECT] = $route;
$expected = $defaults;
$expected['_entity_revision'] = $defaults['entity_test_revision'];
$this->assertEquals($expected, $this->routeEnhancer->enhance($defaults, $request));
}
}