You are here

abstract class AbstractConfig in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/behat/mink/driver-testsuite/tests/AbstractConfig.php \Behat\Mink\Tests\Driver\AbstractConfig

Hierarchy

Expanded class hierarchy of AbstractConfig

File

vendor/behat/mink/driver-testsuite/tests/AbstractConfig.php, line 7

Namespace

Behat\Mink\Tests\Driver
View source
abstract class AbstractConfig {

  /**
   * Creates driver instance.
   *
   * @return DriverInterface
   */
  public abstract function createDriver();

  /**
   * Map remote file path.
   *
   * @param string $file File path.
   *
   * @return string
   */
  public function mapRemoteFilePath($file) {
    if (!isset($_SERVER['TEST_MACHINE_BASE_PATH']) || !isset($_SERVER['DRIVER_MACHINE_BASE_PATH'])) {
      return $file;
    }
    $pattern = '/^' . preg_quote($_SERVER['TEST_MACHINE_BASE_PATH'], '/') . '/';
    $basePath = $_SERVER['DRIVER_MACHINE_BASE_PATH'];
    return preg_replace($pattern, $basePath, $file, 1);
  }

  /**
   * Gets the base url to the fixture folder.
   *
   * @return string
   */
  public function getWebFixturesUrl() {
    return $_SERVER['WEB_FIXTURES_HOST'];
  }

  /**
   * @param string $testCase The name of the TestCase class
   * @param string $test     The name of the test method
   *
   * @return string|null A message explaining why the test should be skipped, or null to run the test.
   */
  public function skipMessage($testCase, $test) {
    if (!$this
      ->supportsCss() && 0 === strpos($testCase, 'Behat\\Mink\\Tests\\Driver\\Css\\')) {
      return 'This driver does not support CSS.';
    }
    if (!$this
      ->supportsJs() && 0 === strpos($testCase, 'Behat\\Mink\\Tests\\Driver\\Js\\')) {
      return 'This driver does not support JavaScript.';
    }
    return null;
  }

  /**
   * Whether the JS tests should run or no.
   *
   * @return bool
   */
  protected function supportsJs() {
    return true;
  }

  /**
   * Whether the CSS tests should run or no.
   *
   * @return bool
   */
  protected function supportsCss() {
    return false;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
AbstractConfig::createDriver abstract public function Creates driver instance. 2
AbstractConfig::getWebFixturesUrl public function Gets the base url to the fixture folder. 1
AbstractConfig::mapRemoteFilePath public function Map remote file path.
AbstractConfig::skipMessage public function
AbstractConfig::supportsCss protected function Whether the CSS tests should run or no.
AbstractConfig::supportsJs protected function Whether the JS tests should run or no. 2