Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / instaclick / php-webdriver / test / Test / WebDriver / WebDriverTest.php
diff --git a/vendor/instaclick/php-webdriver/test/Test/WebDriver/WebDriverTest.php b/vendor/instaclick/php-webdriver/test/Test/WebDriver/WebDriverTest.php
deleted file mode 100644 (file)
index 056b8e7..0000000
+++ /dev/null
@@ -1,267 +0,0 @@
-<?php
-/**
- * Copyright 2014-2017 Anthon Pang. All Rights Reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * @package WebDriver
- *
- * @author Anthon Pang <apang@softwaredevelopment.ca>
- * @author Damian Mooyman <damian@silverstripe.com>
- */
-
-namespace Test\WebDriver;
-
-use WebDriver\ServiceFactory;
-use WebDriver\WebDriver;
-
-/**
- * Test WebDriver\WebDriver class
- *
- * @package WebDriver
- *
- * @group Functional
- */
-class WebDriverTest extends \PHPUnit_Framework_TestCase
-{
-    private $driver;
-    private $session;
-    private $testDocumentRootUrl = 'http://localhost';
-    private $testSeleniumRootUrl = 'http://localhost:4444/wd/hub';
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function setUp()
-    {
-        ServiceFactory::getInstance()->setServiceClass('service.curl', '\\WebDriver\\Service\\CurlService');
-
-        if ($url = getenv('ROOT_URL')) {
-            $this->testDocumentRootUrl = $url;
-        }
-
-        if ($url = getenv('SELENIUM_URL')) {
-            $this->testSeleniumRootUrl = $url;
-        }
-
-        $this->driver  = new WebDriver($this->getTestSeleniumRootUrl());
-        $this->session = null;
-    }
-
-    /**
-     * {@inheritdoc}
-     */
-    protected function tearDown()
-    {
-        if ($this->session) {
-            $this->session->close();
-        }
-    }
-
-    /**
-     * Returns the full url to the test site (corresponding to the root dir of the library).
-     * You can set this via env var ROOT_URL
-     *
-     * @return string
-     */
-    protected function getTestDocumentRootUrl()
-    {
-        return $this->testDocumentRootUrl;
-    }
-
-    /**
-     * Returns the full url to the Selenium server used for functional tests
-     *
-     * @return string
-     *
-     * @todo make this configurable via env var
-     */
-    protected function getTestSeleniumRootUrl()
-    {
-        return $this->testSeleniumRootUrl;
-    }
-
-    /**
-     * Is Selenium down?
-     *
-     * @param \Exception $exception
-     *
-     * @return boolean
-     */
-    protected function isSeleniumDown($exception)
-    {
-        return preg_match('/Failed to connect to .* Connection refused/', $exception->getMessage()) != false
-            || strpos($exception->getMessage(), 'couldn\'t connect to host') !== false
-            || strpos($exception->getMessage(), 'Unable to connect to host') !== false;
-    }
-
-    /**
-     * Test driver sessions
-     */
-    public function testSessions()
-    {
-        try {
-            $this->assertCount(0, $this->driver->sessions());
-
-            $this->session = $this->driver->session();
-        } catch (\Exception $e) {
-            if ($this->isSeleniumDown($e)) {
-                $this->markTestSkipped('selenium server not running');
-
-                return;
-            }
-
-            throw $e;
-        }
-
-        $this->assertCount(1, $this->driver->sessions());
-        $this->assertEquals($this->getTestSeleniumRootUrl(), $this->driver->getUrl());
-    }
-
-    /**
-     * Test driver status
-     */
-    public function testStatus()
-    {
-        try {
-            $status = $this->driver->status();
-        } catch (\Exception $e) {
-            if ($this->isSeleniumDown($e)) {
-                $this->markTestSkipped('selenium server not running');
-
-                return;
-            }
-
-            throw $e;
-        }
-
-        $this->assertCount(3, $status);
-        $this->assertTrue(isset($status['java']));
-        $this->assertTrue(isset($status['os']));
-        $this->assertTrue(isset($status['build']));
-    }
-
-    /**
-     * Checks that an error connecting to Selenium gives back the expected exception
-     */
-    public function testSeleniumError()
-    {
-        try {
-            $this->driver = new WebDriver($this->getTestSeleniumRootUrl() . '/../invalidurl');
-
-            $status = $this->driver->status();
-
-            $this->fail('Exception not thrown while connecting to invalid Selenium url');
-        } catch (\Exception $e) {
-            if ($this->isSeleniumDown($e)) {
-                $this->markTestSkipped('selenium server not running');
-
-                return;
-            }
-
-            $this->assertEquals('WebDriver\Exception\CurlExec', get_class($e));
-        }
-    }
-
-    /**
-     * Checks that a successful command to Selenium which returns an http error response gives back the expected exception
-     */
-    public function testSeleniumErrorResponse()
-    {
-        try {
-            $status = $this->driver->status();
-        } catch (\Exception $e) {
-            if ($this->isSeleniumDown($e)) {
-                $this->markTestSkipped('selenium server not running');
-
-                return;
-            }
-
-            throw $e;
-        }
-
-        try {
-            $this->session = $this->driver->session();
-            $this->session->open($this->getTestDocumentRootUrl().'/test/Assets/index.html');
-
-            $element = $this->session->element('id', 'a-quite-unlikely-html-element-id');
-
-            $this->fail('Exception not thrown while looking for missing element in page');
-        } catch (\Exception $e) {
-            $this->assertEquals('WebDriver\Exception\NoSuchElement', get_class($e));
-        }
-    }
-
-    /**
-     * Checks that a successful command to Selenium which returns 'nothing' according to spec does not raise an error
-     */
-    public function testSeleniumNoResponse()
-    {
-        try {
-            $status = $this->driver->status();
-        } catch (\Exception $e) {
-            if ($this->isSeleniumDown($e)) {
-                $this->markTestSkipped('selenium server not running');
-
-                return;
-            }
-
-            throw $e;
-        }
-
-        $this->session = $this->driver->session();
-        $timeouts = $this->session->timeouts();
-        $out = $timeouts->async_script(array('type' => 'implicit', 'ms' => 1000));
-
-        $this->assertEquals(null, $out);
-    }
-
-    /**
-     * Assert that empty response does not trigger exception, but invalid JSON does
-     */
-    public function testNonJsonResponse()
-    {
-        $mockCurlService = $this->createMock('WebDriver\Service\CurlService');
-        $mockCurlService->expects($this->once())
-            ->method('execute')
-            ->will($this->returnCallback(function ($requestMethod, $url) {
-                $info = array(
-                    'url' => $url,
-                    'request_method' => $requestMethod,
-                    'http_code' => 200,
-                );
-
-                $result = preg_match('#.*session$#', $url)
-                    ? $result = 'some invalid json'
-                    : $result = '';
-
-                return array($result, $info);
-            }));
-
-        ServiceFactory::getInstance()->setService('service.curl', $mockCurlService);
-
-        $result = $this->driver->status();
-
-        $this->assertNull($result);
-
-        // Test /session should error
-        $this->setExpectedException(
-            'WebDriver\Exception\CurlExec',
-            'Payload received from webdriver is not valid json: some invalid json'
-        );
-
-        $result = $this->driver->session();
-
-        $this->assertNull($result);
-    }
-}