Improved the guessing of capabilities on Travis

The logic is not duplicated anymore between BrowserStack and Travis, and
user-defined capabilities now win over guessed capabilities.
Refs #140
This commit is contained in:
Christophe Coevoet
2014-05-08 13:15:15 +02:00
parent b1a3659899
commit 84bccc838c
3 changed files with 15 additions and 23 deletions

View File

@@ -43,21 +43,11 @@ class SauceLabsFactory extends Selenium2Factory
*/
public function buildDriver(array $config)
{
$capabilities = $config['capabilities'];
$capabilities['tags'] = array(php_uname('n'), 'PHP '.phpversion());
if (getenv('TRAVIS_JOB_NUMBER')) {
$capabilities['tunnel-identifier'] = getenv('TRAVIS_JOB_NUMBER');
$capabilities['build'] = getenv('TRAVIS_BUILD_NUMBER');
$capabilities['tags'] = array('Travis-CI', 'PHP '.phpversion());
}
$host = 'ondemand.saucelabs.com';
if ($config['connect']) {
$host = 'localhost:4445';
}
$config['capabilities'] = $capabilities;
$config['wd_host'] = sprintf('%s:%s@%s/wd/hub', $config['username'], $config['access_key'], $host);
return parent::buildDriver($config);
@@ -75,13 +65,13 @@ class SauceLabsFactory extends Selenium2Factory
->scalarNode('max-duration')->defaultValue('300')->end()
->scalarNode('command-timeout')->end()
->scalarNode('idle-timeout')->end()
->scalarNode('build')->info('will be set automatically based on the TRAVIS_JOB_NUMBER environment variable if available')->end()
->scalarNode('build')->info('will be set automatically based on the TRAVIS_BUILD_NUMBER environment variable if available')->end()
->arrayNode('custom-data')
->useAttributeAsKey('')
->prototype('variable')->end()
->end()
->scalarNode('screen-resolution')->end()
->scalarNode('tunnel-identifier')->end()
->scalarNode('tunnel-identifier')->info('will be set automatically based on the TRAVIS_JOB_NUMBER environment variable if available')->end()
->arrayNode('prerun')
->children()
->scalarNode('executable')->isRequired()->end()