3 namespace Drupal\Tests\field_ui\Unit;
5 use Drupal\Core\DependencyInjection\ContainerBuilder;
6 use Drupal\field_ui\FieldUI;
7 use Drupal\Tests\UnitTestCase;
10 * @coversDefaultClass \Drupal\field_ui\FieldUI
14 class FieldUiTest extends UnitTestCase {
19 * @var \Drupal\Core\Path\PathValidatorInterface|\PHPUnit_Framework_MockObject_MockObject
21 protected $pathValidator;
26 protected function setUp() {
29 $this->pathValidator = $this->getMock('Drupal\Core\Path\PathValidatorInterface');
30 $container = new ContainerBuilder();
31 $container->set('path.validator', $this->pathValidator);
32 \Drupal::setContainer($container);
36 * @covers ::getNextDestination
38 public function testGetNextDestination() {
39 $destinations = ['admin', 'admin/content'];
40 $expected_uri = 'base:admin';
42 'destinations' => ['admin/content'],
44 $actual = FieldUI::getNextDestination($destinations);
45 $this->assertSame($expected_uri, $actual->getUri());
46 $this->assertSame($expected_query, $actual->getOption('query'));
50 * @covers ::getNextDestination
52 public function testGetNextDestinationEmpty() {
54 $actual = FieldUI::getNextDestination($destinations);
55 $this->assertNull($actual);
59 * @covers ::getNextDestination
61 public function testGetNextDestinationRouteName() {
62 $destinations = [['route_name' => 'system.admin'], ['route_name' => 'system.admin_content']];
63 $expected_route_name = 'system.admin';
65 'destinations' => [['route_name' => 'system.admin_content']],
67 $actual = FieldUI::getNextDestination($destinations);
68 $this->assertSame($expected_route_name, $actual->getRouteName());
69 $this->assertSame($expected_query, $actual->getOption('query'));