mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-18 03:00:58 +08:00
99 lines
3.2 KiB
TypeScript
99 lines
3.2 KiB
TypeScript
// This file is named differently than its JS bootstrapper to avoid the ts compiler to overwrite it.
|
|
|
|
import path = require('path');
|
|
import { customLaunchers } from './browser-providers.ts';
|
|
|
|
|
|
export function config(config) {
|
|
config.set({
|
|
basePath: path.join(__dirname, '../..'),
|
|
frameworks: ['jasmine'],
|
|
plugins: [
|
|
require('karma-jasmine'),
|
|
require('karma-coverage'),
|
|
require('karma-sourcemap-loader'),
|
|
require('karma-chrome-launcher'),
|
|
require('karma-spec-reporter')
|
|
],
|
|
files: [
|
|
{pattern: 'dist/vendor/core-js/client/core.js', included: true, watched: false},
|
|
{pattern: 'dist/vendor/systemjs/dist/system-polyfills.js', included: true, watched: false},
|
|
{pattern: 'dist/vendor/systemjs/dist/system.src.js', included: true, watched: false},
|
|
{pattern: 'dist/vendor/zone.js/dist/zone.js', included: true, watched: false},
|
|
{pattern: 'dist/vendor/zone.js/dist/proxy.js', included: true, watched: false},
|
|
{pattern: 'dist/vendor/zone.js/dist/async-test.js', included: true, watched: false},
|
|
{pattern: 'dist/vendor/zone.js/dist/fake-async-test.js', included: true, watched: false},
|
|
|
|
{pattern: 'scripts/karma/system.config.js', included: true, watched: false},
|
|
|
|
// paths loaded via module imports
|
|
{pattern: 'dist/**/*.js', included: false, watched: true},
|
|
|
|
// paths to support debugging with source maps in dev tools
|
|
{pattern: 'dist/**/*.ts', included: false, watched: false},
|
|
{pattern: 'dist/**/*.js.map', included: false, watched: false}
|
|
],
|
|
proxies: {},
|
|
|
|
customLaunchers: customLaunchers,
|
|
|
|
exclude: [
|
|
'dist/e2e/**/*'
|
|
],
|
|
// Source files that you wanna generate coverage for.
|
|
// Do not include tests or libraries (these files will be instrumented by Istanbul)
|
|
preprocessors: {
|
|
'dist/ionic-angular/umd/**/!(*spec).js': ['coverage'],
|
|
'dist/ionic-angular/**/*.js': ['sourcemap']
|
|
},
|
|
reporters: ['dots', 'coverage', 'spec'],
|
|
specReporter: {
|
|
maxLogLines: 5, // limit number of lines logged per test
|
|
suppressErrorSummary: true, // do not print error summary
|
|
suppressFailed: false, // do not print information about failed tests
|
|
suppressPassed: false, // do not print information about passed tests
|
|
suppressSkipped: true, // do not print information about skipped tests
|
|
showSpecTiming: false // print the time elapsed for each spec
|
|
},
|
|
port: 9876,
|
|
colors: true,
|
|
logLevel: config.LOG_INFO,
|
|
autoWatch: true,
|
|
|
|
sauceLabs: {
|
|
testName: 'ionic',
|
|
startConnect: false,
|
|
recordVideo: false,
|
|
recordScreenshots: false,
|
|
options: {
|
|
'selenium-version': '2.48.2',
|
|
'command-timeout': 600,
|
|
'idle-timeout': 600,
|
|
'max-duration': 5400
|
|
}
|
|
},
|
|
|
|
browserStack: {
|
|
project: 'ionic',
|
|
startTunnel: false,
|
|
retryLimit: 1,
|
|
timeout: 600,
|
|
pollingTimeout: 20000
|
|
},
|
|
|
|
browserDisconnectTimeout: 20000,
|
|
browserNoActivityTimeout: 240000,
|
|
captureTimeout: 120000,
|
|
browsers: ['Chrome_1024x768'],
|
|
|
|
coverageReporter: {
|
|
reporters: [
|
|
{type: 'json', subdir: '.', file: 'coverage-final.json'}
|
|
]
|
|
},
|
|
|
|
singleRun: true
|
|
});
|
|
|
|
};
|