jonnybarnes.uk/tests/DuskTestCase.php
Jonny Barnes a3cce90c10 Clean code to take advantage of new L5.5 features, bring back some dusk
tests now we can use headless chrome.

Squashed commit of the following:

commit d32d6e9dca7eb26303435c738f7c547e5009b86b
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Wed Sep 6 14:43:52 2017 +0100

    Add dusk tests, cleanup other parts of travis.yml

commit 7633b407ee222a3f4a222f889f23acf4b5549c22
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Wed Sep 6 14:38:39 2017 +0100

    I think dusk works locally with headless chrome now, just struggling on my slow laptop

commit fcbc83bb0a53ac046c1af09e8caf296799a940ef
Author: Jonny Barnes <jonny@jonnybarnes.uk>
Date:   Tue Sep 5 15:47:39 2017 +0100

    Get latest package versions and remove un-needed service provider entries
2017-09-06 14:54:02 +01:00

46 lines
1 KiB
PHP

<?php
namespace Tests;
use Laravel\Dusk\TestCase as BaseTestCase;
use Facebook\WebDriver\Chrome\ChromeOptions;
use Facebook\WebDriver\Remote\RemoteWebDriver;
use Facebook\WebDriver\Remote\DesiredCapabilities;
abstract class DuskTestCase extends BaseTestCase
{
use CreatesApplication;
/**
* Prepare for Dusk test execution.
*
* @beforeClass
* @return void
*/
public static function prepare()
{
static::startChromeDriver();
}
/**
* Create the RemoteWebDriver instance.
*
* @return \Facebook\WebDriver\Remote\RemoteWebDriver
*/
protected function driver()
{
$desiredCapabilities = DesiredCapabilities::chrome();
$options = new ChromeOptions();
$options->addArguments([
'headless',
'disable-gpu'
]);
$desiredCapabilities->setCapability(ChromeOptions::CAPABILITY, $options);
return RemoteWebDriver::create(
'http://localhost:9515', $desiredCapabilities
);
}
}