diff -r 07239de796bb -r e756a8c72c3d cms/drupal/profiles/drustack/libraries/backbone/karma.conf-sauce.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cms/drupal/profiles/drustack/libraries/backbone/karma.conf-sauce.js Fri Sep 08 12:04:06 2017 +0200 @@ -0,0 +1,90 @@ +var _ = require('underscore'); + +// Browsers to run on Sauce Labs platforms +var sauceBrowsers = _.reduce([ + ['firefox', '35'], + ['firefox', '30'], + ['firefox', '21'], + ['firefox', '11'], + ['firefox', '4'], + + ['chrome', '40'], + ['chrome', '39'], + ['chrome', '31'], + ['chrome', '26'], + + ['internet explorer', '11', 'Windows 8.1'], + ['internet explorer', '10', 'Windows 8'], + ['internet explorer', '9', 'Windows 7'], + ['internet explorer', '8'], + ['internet explorer', '7', 'Windows XP'], + // ['internet explorer', '6', 'Windows XP'], + + ['opera', '12'], + ['opera', '11'], + + ['android', '5'], + ['android', '4.4'], + ['android', '4.3'], + ['android', '4.0'], + + ['safari', '8.0', 'OS X 10.10'], + ['safari', '7'], + ['safari', '6'], + ['safari', '5'] +], function(memo, platform) { + // internet explorer -> ie + var label = platform[0].split(' '); + if (label.length > 1) { + label = _.invoke(label, 'charAt', 0) + } + label = (label.join("") + '_v' + platform[1]).replace(' ', '_').toUpperCase(); + memo[label] = _.pick({ + 'base': 'SauceLabs', + 'browserName': platform[0], + 'version': platform[1], + 'platform': platform[2] + }, Boolean); + return memo; +}, {}); + +module.exports = function(config) { + if ( !process.env.SAUCE_USERNAME || !process.env.SAUCE_ACCESS_KEY ) { + console.log('Sauce environments not set --- Skipping'); + return process.exit(0); + } + + config.set({ + basePath: '', + frameworks: ['qunit'], + singleRun: true, + + // list of files / patterns to load in the browser + files: [ + 'test/vendor/jquery.js', + 'test/vendor/json2.js', + 'test/vendor/underscore.js', + 'backbone.js', + 'test/setup/*.js', + 'test/*.js' + ], + + // test results reporter to use + reporters: ['dots', 'saucelabs'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + sauceLabs: { + build: 'TRAVIS #' + process.env.TRAVIS_BUILD_NUMBER + ' (' + process.env.TRAVIS_BUILD_ID + ')', + startConnect: true, + tunnelIdentifier: process.env.TRAVIS_JOB_NUMBER + }, + + captureTimeout: 120000, + customLaunchers: sauceBrowsers, + + // Browsers to launch, commented out to prevent karma from starting + // too many concurrent browsers and timing sauce out. + browsers: _.keys(sauceBrowsers) + }); +};