NavigationContentTopTest.php

Namespace

Drupal\Tests\navigation\Functional

File

core/modules/navigation/tests/src/Functional/NavigationContentTopTest.php

View source
<?php

declare (strict_types=1);
namespace Drupal\Tests\navigation\Functional;

use Drupal\Core\Cache\Cache;
use Drupal\Core\Url;
use Drupal\Tests\BrowserTestBase;
// cspell:ignore foobarbaz baznew

/**
 * Tests for navigation content_top section.
 *
 * @group navigation
 */
class NavigationContentTopTest extends BrowserTestBase {
    
    /**
     * {@inheritdoc}
     */
    protected static $modules = [
        'navigation',
        'navigation_test',
        'test_page_test',
    ];
    
    /**
     * {@inheritdoc}
     */
    protected $defaultTheme = 'stark';
    
    /**
     * {@inheritdoc}
     */
    protected function setUp() : void {
        parent::setUp();
        $this->drupalLogin($this->createUser([
            'access navigation',
        ]));
    }
    
    /**
     * Tests behavior of content_top section hooks.
     */
    public function testNavigationContentTop() : void {
        $test_page_url = Url::fromRoute('test_page_test.test_page');
        $this->drupalGet($test_page_url);
        $this->assertSession()
            ->elementNotExists('css', '.admin-toolbar__content-top');
        \Drupal::keyValue('navigation_test')->set('content_top', 1);
        Cache::invalidateTags([
            'navigation_test',
        ]);
        $this->drupalGet($test_page_url);
        $this->assertSession()
            ->elementTextContains('css', '.admin-toolbar__content-top', 'foobarbaz');
        \Drupal::keyValue('navigation_test')->set('content_top_alter', 1);
        Cache::invalidateTags([
            'navigation_test',
        ]);
        $this->drupalGet($test_page_url);
        $this->assertSession()
            ->elementTextContains('css', '.admin-toolbar__content-top', 'baznew bar');
    }

}

Classes

Title Deprecated Summary
NavigationContentTopTest Tests for navigation content_top section.

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