Skip to content

Commit

Permalink
test: connect to sauce just once
Browse files Browse the repository at this point in the history
Closes angular#25
  • Loading branch information
btford committed Dec 5, 2014
1 parent c0994cd commit 6e5b1b0
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 7 deletions.
9 changes: 4 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,12 @@ env:
- SAUCE_ACCESS_KEY=9b988f434ff8-fbca-8aa4-4ae3-35442987

install:
- mkdir -p $LOGS_DIR
- ./scripts/sauce_connect_setup.sh
- npm install
- npm install -g gulp
- npm install -g karma-cli
- ./scripts/wait_for_browser_provider.sh

script:
- gulp build
- karma start --sauce
- karma start karma.es5.conf.js --sauce

after_script:
- ./scripts/test_on_sauce.sh
3 changes: 1 addition & 2 deletions config/karma.travis.conf.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,7 @@ module.exports = function(options) {
}
options.sauceLabs.build = 'TRAVIS #' + process.env.TRAVIS_BUILD_NUMBER + ' (' + process.env.TRAVIS_BUILD_ID + ')';
options.sauceLabs.tunnelIdentifier = process.env.TRAVIS_JOB_NUMBER;

process.env.SAUCE_ACCESS_KEY = process.env.SAUCE_ACCESS_KEY.split('').reverse().join('');
options.sauceLabs.startConnect = false;

// TODO(vojta): remove once SauceLabs supports websockets.
// This speeds up the capturing a bit, as browsers don't even try to use websocket.
Expand Down
30 changes: 30 additions & 0 deletions protractor.travis.conf.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
'use strict';

var config = require('./protractor.conf').config;

config.sauceUser = process.env.SAUCE_USERNAME;
config.sauceKey = process.env.SAUCE_ACCESS_KEY;

config.multiCapabilities = [{
'browserName': 'chrome',
'platform': 'OS X 10.9',
'name': 'Angular E2E',
'tunnel-identifier': process.env.TRAVIS_JOB_NUMBER,
'build': process.env.TRAVIS_BUILD_NUMBER,
'version': '34'
}, {
'browserName': 'firefox',
'name': 'Angular E2E',
'tunnel-identifier': process.env.TRAVIS_JOB_NUMBER,
'build': process.env.TRAVIS_BUILD_NUMBER,
'version': '28'
}, {
browserName: 'safari',
'platform': 'OS X 10.9',
'version': '7',
'name': 'Angular E2E',
'tunnel-identifier': process.env.TRAVIS_JOB_NUMBER,
'build': process.env.TRAVIS_BUILD_NUMBER
}];

exports.config = config;
21 changes: 21 additions & 0 deletions scripts/test_on_sauce.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#! /bin/bash
SCRIPT_DIR=$(dirname $0)
cd $SCRIPT_DIR/..

function killServer {
kill $serverPid
}

./node_modules/.bin/gulp build
./node_modules/.bin/gulp serve &
serverPid=$!

trap killServer EXIT

SAUCE_ACCESS_KEY=`echo $SAUCE_ACCESS_KEY | rev`
gulp build

karma start --sauce &
karma start karma.es5.conf.js --sauce &
./node_modules/.bin/protractor protractor.travis.conf.js &
wait %2 %3 %4

0 comments on commit 6e5b1b0

Please sign in to comment.