module.exports = function(config) { if (!process.env.SAUCE_USERNAME || !process.env.SAUCE_ACCESS_KEY) { console.error('Make sure the SAUCE_USERNAME and SAUCE_ACCESS_KEY environment variables are set.'); process.exit(1); } // Check out https://saucelabs.com/platforms for all browser/platform combos var customLaunchers = { slChrome: { base: 'SauceLabs', browserName: 'chrome', version: 'latest' }, slChromeBeta: { base: 'SauceLabs', browserName: 'chrome', version: 'beta' }, slFirefox: { base: 'SauceLabs', browserName: 'firefox', version: 'latest' }, slFirefoxBeta: { base: 'SauceLabs', browserName: 'firefox', version: 'beta' }, slSafari: { base: 'SauceLabs', browserName: 'safari', platform: 'OS X 10.14', version: 'latest' }, slEdge: { base: 'SauceLabs', browserName: 'microsoftedge', platform: 'Windows 10', version: 'latest' }, slIE11: { base: 'SauceLabs', browserName: 'internet explorer', platform: 'Windows 8.1', version: '11' }, slIE10: { base: 'SauceLabs', browserName: 'internet explorer', platform: 'Windows 7', version: '10' }, slIE9: { base: 'SauceLabs', browserName: 'internet explorer', platform: 'Windows 7', version: '10', 'x-ua-compatible': 'IE=EmulateIE9' }, slIE8: { base: 'SauceLabs', browserName: 'internet explorer', platform: 'Windows 7', version: '10', 'x-ua-compatible': 'IE=EmulateIE8' } }; config.set({ basePath: '', frameworks: ['jasmine'], files: [ 'node_modules/stackframe/dist/stackframe.js', 'stack-generator.js', 'spec/spec-helper.js', 'spec/*-spec.js', { pattern: 'spec/fixtures/**', included: false } ], exclude: [], port: 9876, colors: true, logLevel: config.LOG_INFO, autoWatch: true, browserDisconnectTimeout: 10000, browserDisconnectTolerance: 1, browserNoActivityTimeout: 240000, captureTimeout: 240000, sauceLabs: { testName: 'stack-generator unit tests', recordScreenshots: false, connectOptions: { port: 5757, logfile: 'sauce_connect.log' } }, customLaunchers: customLaunchers, browsers: Object.keys(customLaunchers), reporters: ['dots', 'saucelabs', 'coverage', 'coveralls'], preprocessors: { 'stack-generator.js': 'coverage' }, coverageReporter: { type: 'lcov', dir: 'coverage' }, singleRun: true }); };