1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- <?php
- namespace Behat\Mink\Tests\Driver;
- use Behat\Mink\Driver\DriverInterface;
- abstract class AbstractConfig
- {
- /**
- * Creates driver instance.
- *
- * @return DriverInterface
- */
- abstract public 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;
- }
- }
|