UNPKG

faastjs

Version:

Serverless batch computing made simple.

34 lines 4.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const index_1 = require("../index"); const ava_1 = tslib_1.__importDefault(require("ava")); const shared_1 = require("../src/shared"); (0, ava_1.default)(`FunctionStats clone`, t => { const stats = new index_1.FunctionStats(); stats.executionTime.update(100); stats.estimatedBilledTime.update(101); stats.localStartLatency.update(102); stats.remoteStartLatency.update(103); stats.returnLatency.update(104); stats.sendResponseLatency.update(105); stats.completed = 10; stats.errors = 1; stats.invocations = 11; stats.retries = 2; const cloned = stats.clone(); t.deepEqual(cloned, stats); for (const key of (0, shared_1.keysOf)(cloned)) { if (typeof cloned[key] !== "number") { t.true(cloned[key] !== stats[key]); } } t.is(cloned.toString(), stats.toString()); cloned.executionTime.update(0); t.notDeepEqual(cloned, stats); t.notDeepEqual(cloned.executionTime, stats.executionTime); t.true(cloned.toString() !== stats.toString()); cloned.completed++; t.true(cloned.completed !== stats.completed); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pdC1wcm92aWRlci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC91bml0LXByb3ZpZGVyLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsb0NBQXlDO0FBQ3pDLHNEQUF1QjtBQUN2QiwwQ0FBdUM7QUFFdkMsSUFBQSxhQUFJLEVBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLEVBQUU7SUFDNUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxxQkFBYSxFQUFFLENBQUM7SUFFbEMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDckMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0QyxLQUFLLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUNyQixLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNqQixLQUFLLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUN2QixLQUFLLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztJQUVsQixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDN0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0IsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFBLGVBQU0sRUFBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQy9CLElBQUksT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDdkMsQ0FBQztJQUNMLENBQUM7SUFDRCxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUUxQyxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvQixDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzFELENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxLQUFLLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ2pELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRnVuY3Rpb25TdGF0cyB9IGZyb20gXCIuLi9pbmRleFwiO1xuaW1wb3J0IHRlc3QgZnJvbSBcImF2YVwiO1xuaW1wb3J0IHsga2V5c09mIH0gZnJvbSBcIi4uL3NyYy9zaGFyZWRcIjtcblxudGVzdChgRnVuY3Rpb25TdGF0cyBjbG9uZWAsIHQgPT4ge1xuICAgIGNvbnN0IHN0YXRzID0gbmV3IEZ1bmN0aW9uU3RhdHMoKTtcblxuICAgIHN0YXRzLmV4ZWN1dGlvblRpbWUudXBkYXRlKDEwMCk7XG4gICAgc3RhdHMuZXN0aW1hdGVkQmlsbGVkVGltZS51cGRhdGUoMTAxKTtcbiAgICBzdGF0cy5sb2NhbFN0YXJ0TGF0ZW5jeS51cGRhdGUoMTAyKTtcbiAgICBzdGF0cy5yZW1vdGVTdGFydExhdGVuY3kudXBkYXRlKDEwMyk7XG4gICAgc3RhdHMucmV0dXJuTGF0ZW5jeS51cGRhdGUoMTA0KTtcbiAgICBzdGF0cy5zZW5kUmVzcG9uc2VMYXRlbmN5LnVwZGF0ZSgxMDUpO1xuICAgIHN0YXRzLmNvbXBsZXRlZCA9IDEwO1xuICAgIHN0YXRzLmVycm9ycyA9IDE7XG4gICAgc3RhdHMuaW52b2NhdGlvbnMgPSAxMTtcbiAgICBzdGF0cy5yZXRyaWVzID0gMjtcblxuICAgIGNvbnN0IGNsb25lZCA9IHN0YXRzLmNsb25lKCk7XG4gICAgdC5kZWVwRXF1YWwoY2xvbmVkLCBzdGF0cyk7XG4gICAgZm9yIChjb25zdCBrZXkgb2Yga2V5c09mKGNsb25lZCkpIHtcbiAgICAgICAgaWYgKHR5cGVvZiBjbG9uZWRba2V5XSAhPT0gXCJudW1iZXJcIikge1xuICAgICAgICAgICAgdC50cnVlKGNsb25lZFtrZXldICE9PSBzdGF0c1trZXldKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICB0LmlzKGNsb25lZC50b1N0cmluZygpLCBzdGF0cy50b1N0cmluZygpKTtcblxuICAgIGNsb25lZC5leGVjdXRpb25UaW1lLnVwZGF0ZSgwKTtcbiAgICB0Lm5vdERlZXBFcXVhbChjbG9uZWQsIHN0YXRzKTtcbiAgICB0Lm5vdERlZXBFcXVhbChjbG9uZWQuZXhlY3V0aW9uVGltZSwgc3RhdHMuZXhlY3V0aW9uVGltZSk7XG4gICAgdC50cnVlKGNsb25lZC50b1N0cmluZygpICE9PSBzdGF0cy50b1N0cmluZygpKTtcbiAgICBjbG9uZWQuY29tcGxldGVkKys7XG4gICAgdC50cnVlKGNsb25lZC5jb21wbGV0ZWQgIT09IHN0YXRzLmNvbXBsZXRlZCk7XG59KTtcbiJdfQ==