function BlockFormInBlockTest::testCachePerPage

Same name in other branches
  1. 9 core/modules/block/tests/src/Functional/BlockFormInBlockTest.php \Drupal\Tests\block\Functional\BlockFormInBlockTest::testCachePerPage()
  2. 10 core/modules/block/tests/src/Functional/BlockFormInBlockTest.php \Drupal\Tests\block\Functional\BlockFormInBlockTest::testCachePerPage()
  3. 11.x core/modules/block/tests/src/Functional/BlockFormInBlockTest.php \Drupal\Tests\block\Functional\BlockFormInBlockTest::testCachePerPage()

Test to see if form in block's redirect isn't cached.

File

core/modules/block/tests/src/Functional/BlockFormInBlockTest.php, line 40

Class

BlockFormInBlockTest
Tests form in block caching.

Namespace

Drupal\Tests\block\Functional

Code

public function testCachePerPage() {
    $form_values = [
        'email' => 'test@example.com',
    ];
    // Go to "test-page" and test if the block is enabled.
    $this->drupalGet('test-page');
    $this->assertSession()
        ->statusCodeEquals(200);
    $this->assertText('Your .com email address.', 'form found');
    // Make sure that we're currently still on /test-page after submitting the
    // form.
    $this->drupalPostForm(NULL, $form_values, t('Submit'));
    $this->assertUrl('test-page');
    $this->assertText(t('Your email address is @email', [
        '@email' => 'test@example.com',
    ]));
    // Go to a different page and see if the block is enabled there as well.
    $this->drupalGet('test-render-title');
    $this->assertSession()
        ->statusCodeEquals(200);
    $this->assertText('Your .com email address.', 'form found');
    // Make sure that submitting the form didn't redirect us to the first page
    // we submitted the form from after submitting the form from
    // /test-render-title.
    $this->drupalPostForm(NULL, $form_values, t('Submit'));
    $this->assertUrl('test-render-title');
    $this->assertText(t('Your email address is @email', [
        '@email' => 'test@example.com',
    ]));
}

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