function FormCacheTest::testLoadCachedFormStateWithFiles

Same name in other branches
  1. 9 core/tests/Drupal/Tests/Core/Form/FormCacheTest.php \Drupal\Tests\Core\Form\FormCacheTest::testLoadCachedFormStateWithFiles()
  2. 8.9.x core/tests/Drupal/Tests/Core/Form/FormCacheTest.php \Drupal\Tests\Core\Form\FormCacheTest::testLoadCachedFormStateWithFiles()
  3. 11.x core/tests/Drupal/Tests/Core/Form/FormCacheTest.php \Drupal\Tests\Core\Form\FormCacheTest::testLoadCachedFormStateWithFiles()

@covers ::loadCachedFormState

File

core/tests/Drupal/Tests/Core/Form/FormCacheTest.php, line 291

Class

FormCacheTest
@coversDefaultClass \Drupal\Core\Form\FormCache @group Form

Namespace

Drupal\Tests\Core\Form

Code

public function testLoadCachedFormStateWithFiles() : void {
    $form_build_id = 'the_form_build_id';
    $form_state = new FormState();
    $cached_form = [
        '#cache_token' => NULL,
    ];
    $this->formCacheStore
        ->expects($this->once())
        ->method('get')
        ->with($form_build_id)
        ->willReturn($cached_form);
    $this->account
        ->expects($this->once())
        ->method('isAnonymous')
        ->willReturn(TRUE);
    $cached_form_state = [
        'build_info' => [
            'files' => [
                [
                    'module' => 'a_module',
                    'type' => 'the_type',
                    'name' => 'some_name',
                ],
                [
                    'module' => 'another_module',
                ],
            ],
        ],
    ];
    $this->moduleHandler
        ->loadInclude('a_module', 'the_type', 'some_name')
        ->shouldBeCalledOnce();
    $this->moduleHandler
        ->loadInclude('another_module', 'inc', 'another_module')
        ->shouldBeCalledOnce();
    $this->formStateCacheStore
        ->expects($this->once())
        ->method('get')
        ->with($form_build_id)
        ->willReturn($cached_form_state);
    $this->formCache
        ->getCache($form_build_id, $form_state);
}

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