jasmine-test-cases
Version:
Parametrized test cases for Jasmine
28 lines (27 loc) • 1.19 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.parametrify = void 0;
var check_1 = require("./check");
var expectify_1 = require("./expectify");
var colorify_1 = require("./colorify");
var parametrify = function (getArgs, original) {
check_1.Check.isFunction(getArgs);
check_1.Check.isFunction(original);
return function (expectation, assertion, timeout) {
var run = function (args) {
var message = expectation + ' ' + (0, colorify_1.colorify)((0, expectify_1.expectify)(args));
if (typeof assertion !== 'function') {
return original(message, assertion, timeout);
}
else if (assertion.length > args.length) {
return original(message, function (doneFn) { return assertion.apply(this, args.concat([doneFn])); }, timeout);
}
else {
return original(message, function () { return assertion.apply(this, args); }, timeout);
}
};
var runnables = check_1.Check.isArray(getArgs()).map(run);
return runnables[0];
};
};
exports.parametrify = parametrify;
;