MetadataBagTest.php

Same filename and directory in other branches
  1. 10 core/tests/Drupal/Tests/Core/Session/MetadataBagTest.php
  2. 11.x core/tests/Drupal/Tests/Core/Session/MetadataBagTest.php

Namespace

Drupal\Tests\Core\Session

File

core/tests/Drupal/Tests/Core/Session/MetadataBagTest.php

View source
<?php

namespace Drupal\Tests\Core\Session;

use Drupal\Core\Session\MetadataBag;
use Drupal\Core\Site\Settings;
use Drupal\Tests\UnitTestCase;

/**
 * @coversDefaultClass \Drupal\Core\Session\MetadataBag
 * @group Session
 */
class MetadataBagTest extends UnitTestCase {
    
    /**
     * @covers ::stampNew
     */
    public function testStampNew() {
        $metadata = new MetadataBag(new Settings([]));
        $metadata->setCsrfTokenSeed('a_cryptographically_secure_long_random_string_should_used_here');
        $metadata->stampNew();
        $this->assertNotEquals('a_cryptographically_secure_long_random_string_should_used_here', $metadata->getCsrfTokenSeed());
    }
    
    /**
     * @covers ::clearCsrfTokenSeed
     * @group legacy
     */
    public function testDeprecatedClearCsrfTokenSeed() {
        $this->expectDeprecation('Calling Drupal\\Core\\Session\\MetadataBag::clearCsrfTokenSeed() is deprecated in drupal:9.2.0 and will be removed in drupal:10.0.0. Use \\Drupal\\Core\\Session\\MetadataBag::stampNew() instead. See https://www.drupal.org/node/3187914');
        $metadata = new MetadataBag(new Settings([]));
        $metadata->clearCsrfTokenSeed();
    }

}

Classes

Title Deprecated Summary
MetadataBagTest @coversDefaultClass \Drupal\Core\Session\MetadataBag @group Session

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