Heads Up! You're viewing the docs for v0.8, an old version of Karma. v1.0 is the newest.

Preprocessors

Preprocessors in Karma allow you to do some work with your files before they get served to the browser. The configuration of these happens in this block in the config file.

preprocessors = {
  '**/*.coffee': 'coffee',
  '**/*.html': 'html2js'
};

Available Preprocessors

Minimatching

The keys of the preprocessors config object are used to filter the files specified in the files configuration.

  • First the file paths are expanded to an absolute path, based on the basePath config and the directory of the configuration file. See files for more information on that.
  • Second this expanded path is matched using minimatch against the specified key.

So for example the path /my/absolute/path/to/test/unit/file.coffee matched against the key **/*.coffee would return true, but matched against just *.coffee it would return false and the preprocessor would not be executed on the CoffeeScript files.