Blanket.js configuration system for controlling coverage behavior, file filtering, and output options.
Central configuration method for getting and setting all Blanket.js options.
/**
* Get or set configuration options
* @param key - Option key (string) or options object
* @param value - Option value (when key is string)
* @returns Option value (when used as getter), undefined (when used as setter)
*/
function options(key, value);Usage Examples:
// Set single option
blanket.options("filter", "src/");
// Set multiple options
blanket.options({
filter: "src/",
antifilter: "test/",
debug: true
});
// Get option value
const currentFilter = blanket.options("filter");/**
* Get the coverage variable name
* @returns Coverage variable name ("window._$blanket" in browser, "_$jscoverage" in Node.js, or custom)
*/
function getCovVar();
/**
* Extend blanket object with additional properties/methods
* @param obj - Object with properties to add to blanket
*/
function extend(obj);
/**
* Return control of the blanket variable to previous owner
* @returns Previous blanket instance or current instance
*/
function noConflict();filter - Pattern to match files for instrumentation
string | string[] | RegExp | Function"src"// String pattern (substring match)
blanket.options("filter", "src/");
// Array of patterns
blanket.options("filter", ["src/", "lib/"]);
// Regular expression
blanket.options("filter", /^src\//);
// Function
blanket.options("filter", function(filename) {
return filename.indexOf("src/") >= 0;
});antifilter - Pattern to exclude files from instrumentation
string | string[] | RegExp | Functionundefinedreporter - Coverage report output handler
string | Function// Path to custom reporter
blanket.options("reporter", "./custom-reporter.js");
// Custom reporter function
blanket.options("reporter", function(coverageData) {
console.log("Coverage:", coverageData);
});reporter_options - Options passed to reporters
objectshortnames (boolean): Use short filenames in reportsrelativepath (boolean): Use relative paths from current directorybasepath (string): Base path to remove from filenamesadapter - Test framework adapter
string"mocha-blanket", "jasmine-blanket", "qunit-blanket"testReadyCallback - Callback when tests are ready to run
Functionloader - Custom file loaders for different file types
string | string[]// Single loader
blanket.options("loader", "./node-loaders/coffee-script");
// Multiple loaders
blanket.options("loader", [
"./node-loaders/coffee-script",
"./node-loaders/cjsx"
]);timeout - File loading timeout in milliseconds
number180ignoreScriptError - Continue on script instrumentation errors
booleanfalseautoStart - Automatically start test runner
booleanfalsebranchTracking - Enable branch coverage tracking
booleanfalsedebug - Enable debug logging
booleanfalseengineOnly - Instrumentation engine only mode
booleanfalsecommonJS - CommonJS module support
booleanfalseexistingRequireJS - Use existing RequireJS instance
booleanfalseignoreCors - Ignore CORS errors when loading files
booleanfalsesourceURL - Add sourceURL comments to instrumented code
booleanfalseinstrumentCache - Cache instrumented files in sessionStorage
booleanfalsecustomVariable - Custom coverage variable name
stringundefinedmodulePattern - Pattern for module grouping in reports
RegExpecmaVersion - ECMAScript version for parsing
number5Blanket.js can also be configured via package.json:
{
"config": {
"blanket": {
"pattern": "src/",
"data-cover-flags": {
"debug": false,
"branchTracking": true
},
"data-cover-reporter-options": {
"shortnames": true
}
}
}
}Configuration keys in package.json:
pattern or data-cover-only → filter optiondata-cover-never → antifilter optionloader or data-cover-loader → loader optiondata-cover-timeout → timeout optiondata-cover-customVariable → customVariable optiondata-cover-ecmaVersion → ecmaVersion optiondata-cover-flags → various boolean flagsdata-cover-reporter-options → reporter_options object