LazyRouteProviderInstallTest.php

Same filename in other branches
  1. 9 core/tests/Drupal/FunctionalTests/Routing/LazyRouteProviderInstallTest.php
  2. 8.9.x core/tests/Drupal/FunctionalTests/Routing/LazyRouteProviderInstallTest.php
  3. 11.x core/tests/Drupal/FunctionalTests/Routing/LazyRouteProviderInstallTest.php

Namespace

Drupal\FunctionalTests\Routing

File

core/tests/Drupal/FunctionalTests/Routing/LazyRouteProviderInstallTest.php

View source
<?php

declare (strict_types=1);
namespace Drupal\FunctionalTests\Routing;

use Drupal\Tests\BrowserTestBase;

/**
 * @group routing
 */
class LazyRouteProviderInstallTest extends BrowserTestBase {
    
    /**
     * {@inheritdoc}
     */
    protected static $modules = [
        'lazy_route_provider_install_test',
    ];
    
    /**
     * {@inheritdoc}
     */
    protected $defaultTheme = 'stark';
    
    /**
     * Tests that the lazy route provider is used during a module install.
     */
    public function testInstallation() : void {
        $this->container
            ->get('module_installer')
            ->install([
            'router_test',
        ]);
        // Note that on DrupalCI the test site is installed in a sub directory so
        // we cannot use ::assertEquals().
        $this->assertStringEndsWith('/admin', \Drupal::state()->get('Drupal\\lazy_route_provider_install_test\\PluginManager'));
        $this->assertStringEndsWith('/router_test/test1', \Drupal::state()->get('router_test_install'));
        // If there is an exception thrown in rebuilding a route then the state
        // 'lazy_route_provider_install_test_menu_links_discovered_alter' will be
        // set.
        // @see lazy_route_provider_install_test_menu_links_discovered_alter().
        $this->assertEquals('success', \Drupal::state()->get('lazy_route_provider_install_test_menu_links_discovered_alter', NULL));
    }

}

Classes

Title Deprecated Summary
LazyRouteProviderInstallTest @group routing

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.