UNPKG

oral-ts

Version:

a testing framework for typescript

47 lines 1.66 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Equal = void 0; var chalk_1 = __importDefault(require("chalk")); function resolver(found, given, key) { if (found !== given) { if (typeof found === "object" && JSON.stringify(found) === JSON.stringify(given)) { this.emit("pass", key, "Equal"); } else { this.emit("fail", key, "Equal"); console.log(chalk_1.default.green("given :- " + given + " \n") + chalk_1.default.red("found :- " + found)); } } else { this.emit("pass", key, "Equal"); } } function Equal(given) { 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, [given, found, key]); }); } else resolver.apply(this, [given, found, key]); } return found; }; return descriptor; }; } exports.Equal = Equal; //# sourceMappingURL=equal.js.map