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
This commit is contained in:
Christophe Coevoet
2014-04-26 23:03:50 +02:00
parent c6efdf6940
commit 1843188aea

View File

@@ -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( return new Definition('Behat\Mink\Driver\Selenium2Driver', array(
$config['browser'], $config['browser'],
$config['capabilities'], array_replace($extraCapabilities, $config['capabilities']),
$config['wd_host'], $config['wd_host'],
)); ));
} }
@@ -125,6 +128,12 @@ class Selenium2Factory implements DriverFactory
->arrayNode('extensions')->prototype('scalar')->end()->end() ->arrayNode('extensions')->prototype('scalar')->end()->end()
->end() ->end()
->end() ->end()
->arrayNode('extra_capabilities')
->info('Custom capabilities merged with the known ones')
->normalizeKeys(false)
->useAttributeAsKey('name')
->prototype('variable')->end()
->end()
->end(); ->end();
return $node; return $node;