function NoJavaScriptAnonymousTest::assertNoJavaScriptExceptHtml5Shiv

Passes if no JavaScript is found on the page except the HTML5 shiv.

The HTML5 shiv is necessary for e.g. the <article> tag which Drupal 8 uses to work in older browsers like Internet Explorer 8.

1 call to NoJavaScriptAnonymousTest::assertNoJavaScriptExceptHtml5Shiv()
NoJavaScriptAnonymousTest::testNoJavaScript in core/modules/system/tests/src/Functional/Common/NoJavaScriptAnonymousTest.php
Tests that anonymous users are not served any JavaScript.

File

core/modules/system/tests/src/Functional/Common/NoJavaScriptAnonymousTest.php, line 54

Class

NoJavaScriptAnonymousTest
Tests that anonymous users are not served any JavaScript in the Standard installation profile.

Namespace

Drupal\Tests\system\Functional\Common

Code

protected function assertNoJavaScriptExceptHtml5Shiv() {
    // Ensure drupalSettings is not set.
    $settings = $this->getDrupalSettings();
    $this->assertTrue(empty($settings), 'drupalSettings is not set.');
    // Ensure the HTML5 shiv exists.
    $this->assertRaw('html5shiv/html5shiv.min.js', 'HTML5 shiv JavaScript exists.');
    // Ensure no other JavaScript file exists on the page, while ignoring the
    // HTML5 shiv.
    $this->assertSession()
        ->responseNotMatches('/(?<!html5shiv\\.min)\\.js/');
}

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