function SectionRenderTest::testToRenderArrayAccessDenied

Same name in other branches
  1. 9 core/modules/layout_builder/tests/src/Unit/SectionRenderTest.php \Drupal\Tests\layout_builder\Unit\SectionRenderTest::testToRenderArrayAccessDenied()
  2. 8.9.x core/modules/layout_builder/tests/src/Unit/SectionRenderTest.php \Drupal\Tests\layout_builder\Unit\SectionRenderTest::testToRenderArrayAccessDenied()
  3. 10 core/modules/layout_builder/tests/src/Unit/SectionRenderTest.php \Drupal\Tests\layout_builder\Unit\SectionRenderTest::testToRenderArrayAccessDenied()

@covers ::toRenderArray

File

core/modules/layout_builder/tests/src/Unit/SectionRenderTest.php, line 153

Class

SectionRenderTest
@coversDefaultClass \Drupal\layout_builder\Section @group layout_builder

Namespace

Drupal\Tests\layout_builder\Unit

Code

public function testToRenderArrayAccessDenied() : void {
    $block = $this->prophesize(BlockPluginInterface::class);
    $this->blockManager
        ->createInstance('block_plugin_id', [
        'id' => 'block_plugin_id',
    ])
        ->willReturn($block->reveal());
    $access_result = AccessResult::forbidden();
    $block->access($this->account
        ->reveal(), TRUE)
        ->willReturn($access_result);
    $block->build()
        ->shouldNotBeCalled();
    $block->getCacheContexts()
        ->willReturn([]);
    $block->getCacheTags()
        ->willReturn([]);
    $block->getCacheMaxAge()
        ->willReturn(Cache::PERMANENT);
    $section = [
        new SectionComponent('some_uuid', 'content', [
            'id' => 'block_plugin_id',
        ]),
    ];
    $expected = [
        'content' => [
            'some_uuid' => [
                '#cache' => [
                    'contexts' => [],
                    'tags' => [],
                    'max-age' => -1,
                ],
            ],
        ],
    ];
    $result = (new Section('layout_onecol', [], $section))->toRenderArray();
    $this->assertEquals($expected, $result);
}

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