Karma Preprocessor that compiles your TypeScript files.
Add karma-tsc-preprocessor
as a devDependency
in your package.json
.
{
"devDependencies": {
"karma-tsc-preprocessor": "1.0.0"
}
}
Or just issue the following command:
npm install karma-tsc-preprocessor --save-dev
Using an existing tsconfig.json
file:
module.exports = function(config) {
config.set({
bastPath: ".",
preprocessors: {
'**/*.ts': ['tsc']
},
plugins: [
"karma-tsc-preprocessor",
],
});
};
You do not need to pass the tsc
options if you want to use your existing tsconfig.json
file that is relative to the basePath
property
Using an existing tsconfig
file with a non standard file name, for example tsconfig.tests.json
:
module.exports = function(config) {
config.set({
bastPath: ".",
preprocessors: {
'**/*.ts': ['tsc']
},
tsc: {
configFile: 'tsconfig.tests.json'
},
plugins: [
"karma-tsc-preprocessor",
],
});
};
Using a compilerOptions
object:
module.exports = function(config) {
config.set({
preprocessors: {
'**/*.ts': ['tsc']
},
tsc: {
compilerOptions: {
module: "commonjs",
target: "es5",
sourceMap: true,
}
},
plugins: [
"karma-tsc-preprocessor",
],
});
};
configFile
property takes precedence overcompilerOptions
.- Setting
sourceMap
to true emulates theinlineSourceMap
behaviour.
See integration folder for example projects.
typescript
is a peer dependency so consumers can use any supported version.
TypeScript
version>= 2.0.0
are supported.Node.js
version>= 8.16.0
are supported.
For more information on Karma see the homepage.