Skip to content

Commit 8de2efb

Browse files
committed
improve performance of karma
1 parent cd2bf89 commit 8de2efb

File tree

4 files changed

+22
-17
lines changed

4 files changed

+22
-17
lines changed

karma.conf.js

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,24 +9,24 @@ const webpackConfig = require("./webpack.config.js")({ production: false, karma:
99
delete webpackConfig.entry;
1010

1111
module.exports = config => {
12+
"use strict";
1213

1314
var configuration = {
1415
basePath: "",
1516
frameworks: [
1617
"mocha",
17-
"chai",
18-
"sinon",
18+
"sinon-chai",
1919
"es6-shim"
2020
],
2121
files: [
2222
{ pattern: "node_modules/reflect-metadata/Reflect.js", include: true },
2323
{ pattern: "node_modules/bluebird/js/browser/bluebird.js", include: true },
24-
{ pattern: "./test/**/**/**.test.ts", include: true },
24+
{ pattern: "./test/index.ts", include: true },
2525
{ pattern: '**/*.map', served: true, included: false, watched: true }
2626
],
2727
preprocessors: {
28-
"./**/**/**/**.ts": ["sourcemap"],
29-
"./test/**/**/**.test.ts": ["webpack"]
28+
"./test/index.ts": ["webpack"],
29+
"./**/**/**/**.ts": ["sourcemap"]
3030
},
3131
webpack: webpackConfig,
3232
webpackMiddleware: {
@@ -39,11 +39,13 @@ module.exports = config => {
3939
"karma-remap-istanbul",
4040
"karma-mocha-reporter",
4141
"karma-mocha",
42-
"karma-chai",
43-
"karma-sinon",
42+
"karma-sinon-chai",
4443
"karma-es6-shim",
4544
"karma-coverage-istanbul-reporter"
4645
],
46+
mime: {
47+
"text/x-typescript": ["ts","tsx"]
48+
},
4749
reporters: (
4850
config.singleRun ?
4951
["dots", "mocha", "coverage-istanbul"] :

package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@
7373
"@types/chai": "^4.1.7",
7474
"@types/mocha": "^5.2.5",
7575
"@types/sinon": "^5.0.6",
76+
"@types/webpack-env": "^1.13.6",
7677
"bluebird": "^3.5.3",
7778
"browserify-versionify": "^1.0.6",
7879
"chai": "^4.2.0",
@@ -83,14 +84,12 @@
8384
"istanbul": "^0.4.5",
8485
"istanbul-instrumenter-loader": "^3.0.1",
8586
"karma": "^3.1.1",
86-
"karma-chai": "^0.1.0",
8787
"karma-chrome-launcher": "^2.2.0",
8888
"karma-coverage-istanbul-reporter": "^2.0.4",
8989
"karma-es6-shim": "^1.0.0",
9090
"karma-mocha": "^1.3.0",
9191
"karma-mocha-reporter": "^2.2.5",
9292
"karma-remap-istanbul": "^0.6.0",
93-
"karma-sinon": "^1.0.5",
9493
"karma-sinon-chai": "^2.0.2",
9594
"karma-sourcemap-loader": "^0.3.7",
9695
"karma-sourcemap-writer": "^0.1.2",

test/index.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/// <reference types="webpack-env" />
2+
3+
// require all modules ending in ".test.ts" from the
4+
// current directory and all subdirectories
5+
const testsContext = require.context(".", true, /\.test\.ts$/);
6+
7+
testsContext.keys().forEach(testsContext);

yarn.lock

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,11 @@
135135
resolved "https://registry.npmjs.org/@types/sinon/-/sinon-5.0.6.tgz#2d362a14209fb6a85dd5d54a595a13c3e355f4d7"
136136
integrity sha512-qipHQv36qZsFGVXs/RMYuTUXvniBKXVCBBxiIP7WTzEBKjVYELeCXt6W4H8sNnUdd+IULItwQ/C6NmIqJrW4Kw==
137137

138+
"@types/webpack-env@^1.13.6":
139+
version "1.13.6"
140+
resolved "http://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.13.6.tgz#128d1685a7c34d31ed17010fc87d6a12c1de6976"
141+
integrity sha512-5Th3OsZ4gTRdr9Mho83BQ23cex4sRhOR4XTG+m+cJc0FhtUBK9Vn62hBJ+pnQYnSxoPOsKoAPOx6FcphxBC8ng==
142+
138143
"@webassemblyjs/[email protected]":
139144
version "1.7.11"
140145
resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.11.tgz#b988582cafbb2b095e8b556526f30c90d057cace"
@@ -3133,10 +3138,6 @@ just-extend@^3.0.0:
31333138
version "3.0.0"
31343139
resolved "https://registry.npmjs.org/just-extend/-/just-extend-3.0.0.tgz#cee004031eaabf6406da03a7b84e4fe9d78ef288"
31353140

3136-
karma-chai@^0.1.0:
3137-
version "0.1.0"
3138-
resolved "https://registry.npmjs.org/karma-chai/-/karma-chai-0.1.0.tgz#bee5ad40400517811ae34bb945f762909108b79a"
3139-
31403141
karma-chrome-launcher@^2.2.0:
31413142
version "2.2.0"
31423143
resolved "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz#cf1b9d07136cc18fe239327d24654c3dbc368acf"
@@ -3184,10 +3185,6 @@ karma-sinon-chai@^2.0.2:
31843185
version "2.0.2"
31853186
resolved "https://registry.npmjs.org/karma-sinon-chai/-/karma-sinon-chai-2.0.2.tgz#e28c109b989973abafc28a7c9f09ef24a05e07c2"
31863187

3187-
karma-sinon@^1.0.5:
3188-
version "1.0.5"
3189-
resolved "https://registry.npmjs.org/karma-sinon/-/karma-sinon-1.0.5.tgz#4e3443f2830fdecff624d3747163f1217daa2a9a"
3190-
31913188
karma-sourcemap-loader@^0.3.7:
31923189
version "0.3.7"
31933190
resolved "https://registry.npmjs.org/karma-sourcemap-loader/-/karma-sourcemap-loader-0.3.7.tgz#91322c77f8f13d46fed062b042e1009d4c4505d8"

0 commit comments

Comments
 (0)