public function SecureLoginTest::testHttpSecureLogin in Secure Login 8
Ensure a request over HTTP gets 301 redirected to HTTPS.
File
- tests/
src/ Functional/ SecureLoginTest.php, line 15
Class
- SecureLoginTest
- Basic tests for Secure login module.
Namespace
Drupal\Tests\securelogin\FunctionalCode
public function testHttpSecureLogin() {
global $base_url;
// Disable redirect following.
$maximumMetaRefreshCount = $this->maximumMetaRefreshCount;
$this->maximumMetaRefreshCount = 0;
if (method_exists($this
->getSession()
->getDriver(), 'getClient')) {
$this
->getSession()
->getDriver()
->getClient()
->followRedirects(FALSE);
}
$this
->drupalGet($this
->httpUrl('user/login'));
$this
->assertSession()
->statusCodeEquals(301);
$this
->assertSame(0, strpos($this
->getSession()
->getResponseHeader('Location'), str_replace('http://', 'https://', $base_url)), 'Location header uses the secure base URL.');
if (method_exists($this
->getSession()
->getDriver(), 'getClient')) {
$this
->getSession()
->getDriver()
->getClient()
->followRedirects(TRUE);
}
$this->maximumMetaRefreshCount = $maximumMetaRefreshCount;
}