all files / es6/ module-wrapper.js

90.91% Statements 10/11
75% Branches 3/4
100% Functions 5/5
90% Lines 9/10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 620× 469×                 469× 572×       469× 3283×   469×    
function emptyFun() {}
function identity(i) { return i; }
module.exports = function (module) {
	const defaults = {
		set: emptyFun,
		parse: emptyFun,
		render: emptyFun,
		getTraits: emptyFun,
		optionsTransformer: identity,
		getRenderedMap: identity,
		postparse: identity,
	};
	Iif (Object.keys(defaults).every(function (key) {
		return !module[key];
	})) {
		throw new Error("This module cannot be wrapped, because it doesn't define any of the necessary functions");
	}
	Object.keys(defaults).forEach(function (key) {
		module[key] = module[key] || defaults[key];
	});
	return module;
};