protected function WebTestBase::checkForMetaRefresh

Check for meta refresh tag and if found call drupalGet() recursively. This function looks for the http-equiv attribute to be set to "Refresh" and is case-sensitive.

Return value

Either the new page content or FALSE.

3 calls to WebTestBase::checkForMetaRefresh()
UpgradePathTestBase::getUpdatePhp in drupal/core/modules/system/lib/Drupal/system/Tests/Upgrade/UpgradePathTestBase.php
Gets update.php without calling url().
WebTestBase::drupalGet in drupal/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php
Retrieves a Drupal path or an absolute path.
WebTestBase::drupalPost in drupal/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php
Execute a POST request on a Drupal page. It will be done as usual POST request with SimpleBrowser.

File

drupal/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php, line 1463
Definition of Drupal\simpletest\WebTestBase.

Class

WebTestBase
Test case for typical Drupal tests.

Namespace

Drupal\simpletest

Code

protected function checkForMetaRefresh() {
  if (strpos($this
    ->drupalGetContent(), '<meta ') && $this
    ->parse()) {
    $refresh = $this
      ->xpath('//meta[@http-equiv="Refresh"]');
    if (!empty($refresh)) {

      // Parse the content attribute of the meta tag for the format:
      // "[delay]: URL=[page_to_redirect_to]".
      if (preg_match('/\\d+;\\s*URL=(?P<url>.*)/i', $refresh[0]['content'], $match)) {
        return $this
          ->drupalGet($this
          ->getAbsoluteUrl(decode_entities($match['url'])));
      }
    }
  }
  return FALSE;
}