UNPKG

oral-ts

Version:

a testing framework for typescript

37 lines 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Extend = void 0; function resolver(found, func, key, name) { var res = func(found); if (res) this.emit("pass", key, name); else this.emit("fail", key, name); } function Extend(name, func) { return function (target, key, descriptor) { var original = descriptor.value; Reflect.defineMetadata("role", "assertion", target, key); descriptor.value = function () { var _this = this; var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var found = original.apply(this, args); if (found !== undefined) { if (found.constructor.name === "Promise") { found.then(function (found) { return resolver.apply(_this, [found, func, found, key, name]); }); } else resolver.apply(this, [found, func, found, key, name]); } return found; }; return descriptor; }; } exports.Extend = Extend; //# sourceMappingURL=extend.js.map