annotate core/tests/Drupal/FunctionalJavascriptTests/DrupalSelenium2Driver.php @ 14:1fec387a4317

Update Drupal core to 8.5.2 via Composer
author Chris Cannam
date Mon, 23 Apr 2018 09:46:53 +0100
parents
children 129ea1e6d783
rev   line source
Chris@14 1 <?php
Chris@14 2
Chris@14 3 namespace Drupal\FunctionalJavascriptTests;
Chris@14 4
Chris@14 5 use Behat\Mink\Driver\Selenium2Driver;
Chris@14 6
Chris@14 7 /**
Chris@14 8 * Provides a driver for Selenium testing.
Chris@14 9 */
Chris@14 10 class DrupalSelenium2Driver extends Selenium2Driver {
Chris@14 11
Chris@14 12 /**
Chris@14 13 * {@inheritdoc}
Chris@14 14 */
Chris@14 15 public function setCookie($name, $value = NULL) {
Chris@14 16 if ($value === NULL) {
Chris@14 17 $this->getWebDriverSession()->deleteCookie($name);
Chris@14 18 return;
Chris@14 19 }
Chris@14 20
Chris@14 21 $cookieArray = [
Chris@14 22 'name' => $name,
Chris@14 23 'value' => urlencode($value),
Chris@14 24 'secure' => FALSE,
Chris@14 25 // Unlike \Behat\Mink\Driver\Selenium2Driver::setCookie we set a domain
Chris@14 26 // and an expire date, as otherwise cookies leak from one test site into
Chris@14 27 // another.
Chris@14 28 'domain' => parse_url($this->getWebDriverSession()->url(), PHP_URL_HOST),
Chris@14 29 'expires' => time() + 80000,
Chris@14 30 ];
Chris@14 31
Chris@14 32 $this->getWebDriverSession()->setCookie($cookieArray);
Chris@14 33 }
Chris@14 34
Chris@14 35 }