diff --git a/CHANGELOG.md b/CHANGELOG.md index 0fe7858..d6d1cc9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ # CHANGELOG ## [Unreleased] + +### Added +- `channel` launch option (#9) diff --git a/README.md b/README.md index 4c92b0c..70f9ccd 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,19 @@ $driver = new PlaywrightDriver( ); ``` +`launchOptions` supports `slowMo`, `args` and `channel`. A channel picks a +browser build or an installed branded browser, such as full Chromium instead +of the headless shell Playwright uses for headless runs by default: + +```php +$driver = new PlaywrightDriver( + browserType: 'chromium', + launchOptions: [ + 'channel' => 'chromium', + ], +); +``` + ## Documentation See [Driver support](docs/driver-support.md) for the tested Mink surface and diff --git a/src/Driver/PlaywrightDriver.php b/src/Driver/PlaywrightDriver.php index 0f2f0b6..d890016 100644 --- a/src/Driver/PlaywrightDriver.php +++ b/src/Driver/PlaywrightDriver.php @@ -103,6 +103,10 @@ public function start(): void $builder = $builder->withArgs($args); } + if (isset($this->launchOptions['channel']) && is_string($this->launchOptions['channel'])) { + $builder = $builder->withChannel($this->launchOptions['channel']); + } + $this->browser = $builder->launch(); $contextOptions = $this->contextOptions;