function StackSessionHandlerIntegrationTest::testRequest

Same name and namespace in other branches
  1. 9 core/modules/system/tests/src/Functional/Session/StackSessionHandlerIntegrationTest.php \Drupal\Tests\system\Functional\Session\StackSessionHandlerIntegrationTest::testRequest()
  2. 8.9.x core/modules/system/tests/src/Functional/Session/StackSessionHandlerIntegrationTest.php \Drupal\Tests\system\Functional\Session\StackSessionHandlerIntegrationTest::testRequest()
  3. 11.x core/modules/system/tests/src/Functional/Session/StackSessionHandlerIntegrationTest.php \Drupal\Tests\system\Functional\Session\StackSessionHandlerIntegrationTest::testRequest()

Tests a request.

File

core/modules/system/tests/src/Functional/Session/StackSessionHandlerIntegrationTest.php, line 30

Class

StackSessionHandlerIntegrationTest
Tests the stacked session handler functionality.

Namespace

Drupal\Tests\system\Functional\Session

Code

public function testRequest() : void {
  $options['query'][MainContentViewSubscriber::WRAPPER_FORMAT] = 'drupal_ajax';
  $headers = [
    'X-Requested-With' => 'XMLHttpRequest',
  ];
  $actual_trace = json_decode($this->drupalGet('session-test/trace-handler', $options, $headers));
  $sessionId = $this->getSessionCookies()
    ->getCookieByName($this->getSessionName())
    ->getValue();
  $expect_trace = [
    [
      'BEGIN',
      'test_argument',
      'open',
    ],
    [
      'BEGIN',
      NULL,
      'open',
    ],
    [
      'END',
      NULL,
      'open',
    ],
    [
      'END',
      'test_argument',
      'open',
    ],
    [
      'BEGIN',
      'test_argument',
      'read',
      $sessionId,
    ],
    [
      'BEGIN',
      NULL,
      'read',
      $sessionId,
    ],
    [
      'END',
      NULL,
      'read',
      $sessionId,
    ],
    [
      'END',
      'test_argument',
      'read',
      $sessionId,
    ],
    [
      'BEGIN',
      'test_argument',
      'write',
      $sessionId,
    ],
    [
      'BEGIN',
      NULL,
      'write',
      $sessionId,
    ],
    [
      'END',
      NULL,
      'write',
      $sessionId,
    ],
    [
      'END',
      'test_argument',
      'write',
      $sessionId,
    ],
    [
      'BEGIN',
      'test_argument',
      'close',
    ],
    [
      'BEGIN',
      NULL,
      'close',
    ],
    [
      'END',
      NULL,
      'close',
    ],
    [
      'END',
      'test_argument',
      'close',
    ],
  ];
  $this->assertEquals($expect_trace, $actual_trace);
}

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