PHP WebShell

Текущая директория: /opt/BitGoJS/modules/sdk-api/dist/test/unit

Просмотр файла: utils.js

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const assert_1 = __importDefault(require("assert"));
const src_1 = require("../../src");
/**
 * These tests are based on the Bluebird try.js tests:
 * https://github.com/petkaantonov/bluebird/blob/master/test/mocha/try.js
 *
 * They have been adapted to TypeScript and modified to assert tryPromise
 * perserves the same behavior as Bluebird.try.
 */
const error = new Error();
const thrower = function () {
    throw error;
};
describe('tryPromise', function () {
    it('should reject when the function throws', function () {
        let async = false;
        const ret = (0, src_1.tryPromise)(thrower).then(() => assert_1.default.fail('Should not fulfill'), (e) => {
            (0, assert_1.default)(async);
            (0, assert_1.default)(e === error);
        });
        async = true;
        return ret;
    });
    it('should reject when the function is not a function', function () {
        let async = false;
        const ret = (0, src_1.tryPromise)(null).then(() => assert_1.default.fail('Should not fulfill'), (e) => {
            (0, assert_1.default)(async);
            (0, assert_1.default)(e instanceof TypeError);
        });
        async = true;
        return ret;
    });
    it('should unwrap returned promise', function () {
        let resolve;
        const promise = new Promise((r) => {
            resolve = r;
        });
        const ret = (0, src_1.tryPromise)(() => {
            return promise;
        }).then((v) => {
            assert_1.default.strictEqual(v, 3);
        });
        setTimeout(() => {
            resolve(3);
        }, 1);
        return ret;
    });
    it('should unwrap returned thenable', function () {
        return (0, src_1.tryPromise)(() => {
            return {
                then: function (f) {
                    f(3);
                },
            };
        }).then((v) => {
            assert_1.default.strictEqual(v, 3);
        });
    });
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90ZXN0L3VuaXQvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsbUNBQXVDO0FBRXZDOzs7Ozs7R0FNRztBQUVILE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7QUFDMUIsTUFBTSxPQUFPLEdBQUc7SUFDZCxNQUFNLEtBQUssQ0FBQztBQUNkLENBQUMsQ0FBQztBQUVGLFFBQVEsQ0FBQyxZQUFZLEVBQUU7SUFDckIsRUFBRSxDQUFDLHdDQUF3QyxFQUFFO1FBQzNDLElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNsQixNQUFNLEdBQUcsR0FBRyxJQUFBLGdCQUFVLEVBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUNsQyxHQUFHLEVBQUUsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUN2QyxDQUFDLENBQVEsRUFBRSxFQUFFO1lBQ1gsSUFBQSxnQkFBTSxFQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2QsSUFBQSxnQkFBTSxFQUFDLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQztRQUN0QixDQUFDLENBQ0YsQ0FBQztRQUNGLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDYixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLG1EQUFtRCxFQUFFO1FBQ3RELElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNsQixNQUFNLEdBQUcsR0FBRyxJQUFBLGdCQUFVLEVBQUMsSUFBVyxDQUFDLENBQUMsSUFBSSxDQUN0QyxHQUFHLEVBQUUsQ0FBQyxnQkFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUN2QyxDQUFDLENBQVEsRUFBRSxFQUFFO1lBQ1gsSUFBQSxnQkFBTSxFQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2QsSUFBQSxnQkFBTSxFQUFDLENBQUMsWUFBWSxTQUFTLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQ0YsQ0FBQztRQUNGLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDYixPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLGdDQUFnQyxFQUFFO1FBQ25DLElBQUksT0FBZ0MsQ0FBQztRQUNyQyxNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3hDLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sR0FBRyxHQUFHLElBQUEsZ0JBQVUsRUFBQyxHQUFHLEVBQUU7WUFDMUIsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDWixnQkFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsT0FBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2QsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRU4sT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxpQ0FBaUMsRUFBRTtRQUNwQyxPQUFPLElBQUEsZ0JBQVUsRUFBQyxHQUFHLEVBQUU7WUFDckIsT0FBTztnQkFDTCxJQUFJLEVBQUUsVUFBVSxDQUEwQjtvQkFDeEMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNQLENBQUM7YUFDaUIsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNaLGdCQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyB0cnlQcm9taXNlIH0gZnJvbSAnLi4vLi4vc3JjJztcblxuLyoqXG4gKiBUaGVzZSB0ZXN0cyBhcmUgYmFzZWQgb24gdGhlIEJsdWViaXJkIHRyeS5qcyB0ZXN0czpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9wZXRrYWFudG9ub3YvYmx1ZWJpcmQvYmxvYi9tYXN0ZXIvdGVzdC9tb2NoYS90cnkuanNcbiAqXG4gKiBUaGV5IGhhdmUgYmVlbiBhZGFwdGVkIHRvIFR5cGVTY3JpcHQgYW5kIG1vZGlmaWVkIHRvIGFzc2VydCB0cnlQcm9taXNlXG4gKiBwZXJzZXJ2ZXMgdGhlIHNhbWUgYmVoYXZpb3IgYXMgQmx1ZWJpcmQudHJ5LlxuICovXG5cbmNvbnN0IGVycm9yID0gbmV3IEVycm9yKCk7XG5jb25zdCB0aHJvd2VyID0gZnVuY3Rpb24gKCk6IG5ldmVyIHtcbiAgdGhyb3cgZXJyb3I7XG59O1xuXG5kZXNjcmliZSgndHJ5UHJvbWlzZScsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJ3Nob3VsZCByZWplY3Qgd2hlbiB0aGUgZnVuY3Rpb24gdGhyb3dzJywgZnVuY3Rpb24gKCkge1xuICAgIGxldCBhc3luYyA9IGZhbHNlO1xuICAgIGNvbnN0IHJldCA9IHRyeVByb21pc2UodGhyb3dlcikudGhlbihcbiAgICAgICgpID0+IGFzc2VydC5mYWlsKCdTaG91bGQgbm90IGZ1bGZpbGwnKSxcbiAgICAgIChlOiBFcnJvcikgPT4ge1xuICAgICAgICBhc3NlcnQoYXN5bmMpO1xuICAgICAgICBhc3NlcnQoZSA9PT0gZXJyb3IpO1xuICAgICAgfVxuICAgICk7XG4gICAgYXN5bmMgPSB0cnVlO1xuICAgIHJldHVybiByZXQ7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmVqZWN0IHdoZW4gdGhlIGZ1bmN0aW9uIGlzIG5vdCBhIGZ1bmN0aW9uJywgZnVuY3Rpb24gKCkge1xuICAgIGxldCBhc3luYyA9IGZhbHNlO1xuICAgIGNvbnN0IHJldCA9IHRyeVByb21pc2UobnVsbCBhcyBhbnkpLnRoZW4oXG4gICAgICAoKSA9PiBhc3NlcnQuZmFpbCgnU2hvdWxkIG5vdCBmdWxmaWxsJyksXG4gICAgICAoZTogRXJyb3IpID0+IHtcbiAgICAgICAgYXNzZXJ0KGFzeW5jKTtcbiAgICAgICAgYXNzZXJ0KGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpO1xuICAgICAgfVxuICAgICk7XG4gICAgYXN5bmMgPSB0cnVlO1xuICAgIHJldHVybiByZXQ7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgdW53cmFwIHJldHVybmVkIHByb21pc2UnLCBmdW5jdGlvbiAoKSB7XG4gICAgbGV0IHJlc29sdmU6ICh2YWx1ZTogbnVtYmVyKSA9PiB2b2lkO1xuICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZTxudW1iZXI+KChyKSA9PiB7XG4gICAgICByZXNvbHZlID0gcjtcbiAgICB9KTtcblxuICAgIGNvbnN0IHJldCA9IHRyeVByb21pc2UoKCkgPT4ge1xuICAgICAgcmV0dXJuIHByb21pc2U7XG4gICAgfSkudGhlbigodikgPT4ge1xuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHYsIDMpO1xuICAgIH0pO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICByZXNvbHZlISgzKTtcbiAgICB9LCAxKTtcblxuICAgIHJldHVybiByZXQ7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgdW53cmFwIHJldHVybmVkIHRoZW5hYmxlJywgZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0cnlQcm9taXNlKCgpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRoZW46IGZ1bmN0aW9uIChmOiAodmFsdWU6IG51bWJlcikgPT4gdm9pZCkge1xuICAgICAgICAgIGYoMyk7XG4gICAgICAgIH0sXG4gICAgICB9IGFzIFByb21pc2U8bnVtYmVyPjtcbiAgICB9KS50aGVuKCh2KSA9PiB7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodiwgMyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=

Выполнить команду


Для локальной разработки. Не используйте в интернете!