SessionTest.php

Same filename in this branch
  1. 11.x core/modules/system/tests/src/Functional/Session/SessionTest.php
Same filename and directory in other branches
  1. 9 core/modules/system/tests/src/Functional/Session/SessionTest.php
  2. 9 core/tests/Drupal/FunctionalJavascriptTests/Core/Session/SessionTest.php
  3. 8.9.x core/modules/system/tests/src/Functional/Session/SessionTest.php
  4. 8.9.x core/tests/Drupal/FunctionalJavascriptTests/Core/Session/SessionTest.php
  5. 10 core/modules/system/tests/src/Functional/Session/SessionTest.php
  6. 10 core/tests/Drupal/FunctionalJavascriptTests/Core/Session/SessionTest.php

Namespace

Drupal\FunctionalJavascriptTests\Core\Session

File

core/tests/Drupal/FunctionalJavascriptTests/Core/Session/SessionTest.php

View source
<?php

declare (strict_types=1);
namespace Drupal\FunctionalJavascriptTests\Core\Session;

use Drupal\FunctionalJavascriptTests\WebDriverTestBase;
use Drupal\menu_link_content\Entity\MenuLinkContent;

/**
 * Tests that sessions don't expire.
 *
 * @group session
 */
class SessionTest extends WebDriverTestBase {
    
    /**
     * {@inheritdoc}
     */
    protected static $modules = [
        'menu_link_content',
        'block',
    ];
    
    /**
     * {@inheritdoc}
     */
    protected $defaultTheme = 'stark';
    
    /**
     * {@inheritdoc}
     */
    protected function setUp() : void {
        parent::setUp();
        $account = $this->drupalCreateUser();
        $this->drupalLogin($account);
        $menu_link_content = MenuLinkContent::create([
            'title' => 'Link to front page',
            'menu_name' => 'tools',
            'link' => [
                'uri' => 'route:<front>',
            ],
        ]);
        $menu_link_content->save();
        $this->drupalPlaceBlock('system_menu_block:tools');
    }
    
    /**
     * Tests that the session doesn't expire.
     *
     * Makes sure that drupal_valid_test_ua() works for multiple requests
     * performed by the Mink browser. The SIMPLETEST_USER_AGENT cookie must always
     * be valid.
     */
    public function testSessionExpiration() : void {
        // Visit the front page and click the link back to the front page a large
        // number of times.
        $this->drupalGet('<front>');
        $page = $this->getSession()
            ->getPage();
        for ($i = 0; $i < 25; $i++) {
            $page->clickLink('Link to front page');
        }
    }

}

Classes

Title Deprecated Summary
SessionTest Tests that sessions don't expire.

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