You are here

public function LdapSsoBrowserTest::testExclusions in LDAP Single Sign On 8.4

Test logout no redirection.

File

tests/src/Functional/LdapSsoBrowserTest.php, line 116

Class

LdapSsoBrowserTest
Test redirection behaviour with SSO enabled.

Namespace

Drupal\Tests\ldap_sso\Functional

Code

public function testExclusions() : void {

  // Do not redirect on excluded path.
  $url = $this
    ->buildUrl(Url::fromRoute('user.login'), [
    'absolute' => TRUE,
  ]);
  $session = $this
    ->getWithoutRedirect($url);
  self::assertEquals($url, $session
    ->getCurrentUrl());
  self::assertNull($session
    ->getResponseHeader('Location'));
  self::assertEquals(200, $session
    ->getStatusCode());

  // Do not redirect when we have just logged out.
  $url = $this
    ->buildUrl(Url::fromRoute('<front>'), [
    'absolute' => TRUE,
  ]);
  $session = $this
    ->getSession();
  $session
    ->getDriver()
    ->getClient()
    ->followRedirects(FALSE);
  $session
    ->setCookie('sso_stop', 'sso_stop');
  $this
    ->prepareRequest();
  $session
    ->visit($url);
  self::assertEquals($url, $session
    ->getCurrentUrl());
  self::assertEquals('', (string) $session
    ->getResponseHeader('Location'));
  self::assertEquals(200, $session
    ->getStatusCode());
}