From 1843188aea1e595d2545421cbb053e92fcc7648c Mon Sep 17 00:00:00 2001 From: Christophe Coevoet Date: Sat, 26 Apr 2014 23:03:50 +0200 Subject: [PATCH] Added a way to specify custom capabilities for Selenium2 This allows configuring capabilities which are specific to other drivers or custom implementations. Fixes #129 Fixes #125 Refs #135 --- .../ServiceContainer/Driver/Selenium2Factory.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Behat/MinkExtension/ServiceContainer/Driver/Selenium2Factory.php b/src/Behat/MinkExtension/ServiceContainer/Driver/Selenium2Factory.php index b7a3e80..74be082 100644 --- a/src/Behat/MinkExtension/ServiceContainer/Driver/Selenium2Factory.php +++ b/src/Behat/MinkExtension/ServiceContainer/Driver/Selenium2Factory.php @@ -57,9 +57,12 @@ class Selenium2Factory implements DriverFactory )); } + $extraCapabilities = $config['capabilities']['extra_capabilities']; + unset($config['capabilities']['extra_capabilities']); + return new Definition('Behat\Mink\Driver\Selenium2Driver', array( $config['browser'], - $config['capabilities'], + array_replace($extraCapabilities, $config['capabilities']), $config['wd_host'], )); } @@ -125,6 +128,12 @@ class Selenium2Factory implements DriverFactory ->arrayNode('extensions')->prototype('scalar')->end()->end() ->end() ->end() + ->arrayNode('extra_capabilities') + ->info('Custom capabilities merged with the known ones') + ->normalizeKeys(false) + ->useAttributeAsKey('name') + ->prototype('variable')->end() + ->end() ->end(); return $node;