dart-sdk/pkg/dev_compiler/karma.conf.js
Vijay Menon 9732138317 Testing support for FF and Safari
Also travis support for testing FF.  See:

https://travis-ci.org/dart-lang/sdk/builds/159331789

On FF 48, 1965 out of 1979 tests are passing.  Run locally:
DDC_BROWSERS=Firefox npm test

On Safari 10 (tech preview), it fails immediately due to a static method named "caller".  We disallow it as a field, but not a method right now.  If I hack that out, 1972 out of 1979 tests appear to pass.

Run locally by installing tech preview and running:
DDC_BROWSERS=Safari SAFARI_BIN=/Applications/Safari\ Technology\ Preview.app/Contents/MacOS/Safari\ Technology\ Preview npm test
R=jmesserly@google.com, rnystrom@google.com

Review URL: https://codereview.chromium.org/2334763002 .
2016-09-14 08:41:43 -07:00

98 lines
2.8 KiB
JavaScript

// Karma configuration
// Generated on Mon Apr 20 2015 06:33:20 GMT-0700 (PDT)
module.exports = function(config) {
var configuration = {
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '',
// frameworks to use
// available frameworks: https://npmjs.org/browse/keyword/karma-adapter
frameworks: ['mocha', 'requirejs', 'chai'],
// list of files / patterns to load in the browser
files: [
{pattern: 'lib/js/amd/dart_sdk.js', included: false},
{pattern: 'gen/codegen_output/pkg/*.js', included: false},
{pattern: 'gen/codegen_output/language/**/*.js', included: false},
{pattern: 'gen/codegen_output/corelib/**/*.js', included: false},
{pattern: 'gen/codegen_output/lib/**/*.js', included: false},
{pattern: 'test/browser/*.js', included: false},
'test-main.js',
],
// list of files to exclude
exclude: [],
// preprocess matching files before serving them to the browser
// available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor
preprocessors: {
},
client: {
captureConsole: false,
mocha: {
ui: 'tdd',
timeout : 6000
},
},
// test results reporter to use
// possible values: 'dots', 'progress'
// available reporters: https://npmjs.org/browse/keyword/karma-reporter
reporters: ['progress'],
// web server port
port: 9876,
// enable / disable colors in the output (reporters and logs)
colors: true,
// level of logging
// possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG
logLevel: config.LOG_INFO,
// enable / disable watching file and executing tests whenever any file changes
autoWatch: true,
browserNoActivityTimeout: 60000,
browserDisconnectTolerance: 5,
// start these browsers
// available browser launchers: https://npmjs.org/browse/keyword/karma-launcher
customLaunchers: {
chrome_travis: {
base: 'Chrome',
flags: [ '--no-sandbox' ]
},
chrome_canary_travis: {
base: 'ChromeCanary',
flags: [ '--no-sandbox' ]
},
},
browsers: ['Chrome'],
// Continuous Integration mode
// if true, Karma captures browsers, runs the tests and exits
singleRun: false,
};
if (process.env.TRAVIS) {
configuration.browsers = ['chrome_canary_travis'];
configuration.autoWatch = false;
// Enable this for more logging on Travis. It is too much for Travis to
// automatically display, but still results in a downloadable raw log.
// configuration.logLevel = config.LOG_DEBUG;
configuration.client.captureConsole = true;
}
if (process.env.DDC_BROWSERS) {
configuration.browsers = process.env.DDC_BROWSERS.split(':');
}
config.set(configuration);
};