mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
This commit updates the necessary config files to run the angular.io and docs tooling unit tests in random order (and fixes the tests that were failing due to their dependence on the previous ordered execution). Besides being a good idea anyway, running tests in random order is the new [default behavior in [email protected]][1], so this commit is in preparation of upgrading jasmine to the latest version. [1]: https://github.com/jasmine/jasmine/blob/v3.0.0/release_notes/3.0.md#breaking-changes PR Close #31527
50 lines
1.5 KiB
JavaScript
50 lines
1.5 KiB
JavaScript
// Karma configuration file, see link for more information
|
|
// https://karma-runner.github.io/1.0/config/configuration-file.html
|
|
|
|
module.exports = function (config) {
|
|
config.set({
|
|
basePath: '',
|
|
frameworks: ['jasmine', '@angular-devkit/build-angular'],
|
|
plugins: [
|
|
require('karma-jasmine'),
|
|
require('karma-chrome-launcher'),
|
|
require('karma-jasmine-html-reporter'),
|
|
require('karma-coverage-istanbul-reporter'),
|
|
require('@angular-devkit/build-angular/plugins/karma'),
|
|
{'reporter:jasmine-seed': ['type', JasmineSeedReporter]},
|
|
],
|
|
client: {
|
|
clearContext: false, // leave Jasmine Spec Runner output visible in browser
|
|
jasmine: {
|
|
random: true,
|
|
seed: '',
|
|
},
|
|
},
|
|
coverageIstanbulReporter: {
|
|
dir: require('path').join(__dirname, './coverage/site'),
|
|
reports: ['html', 'lcovonly', 'text-summary'],
|
|
fixWebpackSourcePaths: true,
|
|
},
|
|
reporters: ['progress', 'kjhtml', 'jasmine-seed'],
|
|
port: 9876,
|
|
colors: true,
|
|
logLevel: config.LOG_INFO,
|
|
autoWatch: true,
|
|
browsers: ['Chrome'],
|
|
browserNoActivityTimeout: 60000,
|
|
singleRun: false,
|
|
restartOnFileChange: true,
|
|
});
|
|
};
|
|
|
|
// Helpers
|
|
function JasmineSeedReporter(baseReporterDecorator) {
|
|
baseReporterDecorator(this);
|
|
|
|
this.onBrowserComplete = (browser, result) => {
|
|
const seed = result.order && result.order.random && result.order.seed;
|
|
if (seed) this.write(`${browser}: Randomized with seed ${seed}.\n`);
|
|
};
|
|
|
|
this.onRunComplete = () => undefined;
|
|
}
|