PHP WebShell
Текущая директория: /opt/BitGoJS/modules/utxo-lib/dist/test/bitgo
Просмотр файла: Unspent.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const assert = require("assert");
const bitgo_1 = require("../../src/bitgo");
function mockUnspent(value) {
return { value };
}
describe('unspentSum', function () {
const unspents = [mockUnspent(123), mockUnspent(98765)];
const bigUnspents = [mockUnspent(Number.MAX_SAFE_INTEGER)];
const unspentsBig = [mockUnspent(BigInt(123)), mockUnspent(BigInt(98765))];
it('sums number', function () {
assert.strictEqual((0, bitgo_1.unspentSum)(unspents, 'number'), 123 + 98765);
});
it('sums bigint', function () {
assert.strictEqual((0, bitgo_1.unspentSum)(unspentsBig, 'bigint'), BigInt(123 + 98765));
});
it('sums zero', function () {
assert.strictEqual((0, bitgo_1.unspentSum)([], 'number'), 0);
assert.strictEqual((0, bitgo_1.unspentSum)([], 'number'), 0);
});
it('throws on mixing number and bigint', function () {
assert.throws(() => {
(0, bitgo_1.unspentSum)(unspentsBig.concat(unspents), 'number');
});
assert.throws(() => {
(0, bitgo_1.unspentSum)(unspents.concat(unspentsBig), 'bigint');
});
});
it('throws on unsafe integer number', function () {
assert.throws(() => {
(0, bitgo_1.unspentSum)(bigUnspents.concat(unspents), 'number');
});
});
it('throws on mismatch between unspent and amountType', function () {
assert.throws(() => {
(0, bitgo_1.unspentSum)(unspents, 'bigint');
});
assert.throws(() => {
(0, bitgo_1.unspentSum)(unspentsBig, 'number');
});
});
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5zcGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Rlc3QvYml0Z28vVW5zcGVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlDQUFrQztBQUNsQywyQ0FBNkM7QUFFN0MsU0FBUyxXQUFXLENBQWtDLEtBQWM7SUFDbEUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO0FBQ25CLENBQUM7QUFDRCxRQUFRLENBQUMsWUFBWSxFQUFFO0lBQ3JCLE1BQU0sUUFBUSxHQUFHLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3hELE1BQU0sV0FBVyxHQUFHLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7SUFDM0QsTUFBTSxXQUFXLEdBQUcsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0UsRUFBRSxDQUFDLGFBQWEsRUFBRTtRQUNoQixNQUFNLENBQUMsV0FBVyxDQUFDLElBQUEsa0JBQVUsRUFBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLEVBQUUsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDO0lBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLGFBQWEsRUFBRTtRQUNoQixNQUFNLENBQUMsV0FBVyxDQUFDLElBQUEsa0JBQVUsRUFBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLEVBQUUsTUFBTSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUMsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLFdBQVcsRUFBRTtRQUNkLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBQSxrQkFBVSxFQUFDLEVBQUUsRUFBRSxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNoRCxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUEsa0JBQVUsRUFBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQyxDQUFDLENBQUM7SUFDSCxFQUFFLENBQUMsb0NBQW9DLEVBQUU7UUFDdkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBQSxrQkFBVSxFQUFFLFdBQThDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3pGLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBQSxrQkFBVSxFQUFFLFFBQTJDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3pGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDSCxFQUFFLENBQUMsaUNBQWlDLEVBQUU7UUFDcEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBQSxrQkFBVSxFQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUNILEVBQUUsQ0FBQyxtREFBbUQsRUFBRTtRQUN0RCxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNqQixJQUFBLGtCQUFVLEVBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBQSxrQkFBVSxFQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0ID0gcmVxdWlyZSgnYXNzZXJ0Jyk7XG5pbXBvcnQgeyB1bnNwZW50U3VtIH0gZnJvbSAnLi4vLi4vc3JjL2JpdGdvJztcblxuZnVuY3Rpb24gbW9ja1Vuc3BlbnQ8VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4odmFsdWU6IFROdW1iZXIpIHtcbiAgcmV0dXJuIHsgdmFsdWUgfTtcbn1cbmRlc2NyaWJlKCd1bnNwZW50U3VtJywgZnVuY3Rpb24gKCkge1xuICBjb25zdCB1bnNwZW50cyA9IFttb2NrVW5zcGVudCgxMjMpLCBtb2NrVW5zcGVudCg5ODc2NSldO1xuICBjb25zdCBiaWdVbnNwZW50cyA9IFttb2NrVW5zcGVudChOdW1iZXIuTUFYX1NBRkVfSU5URUdFUildO1xuICBjb25zdCB1bnNwZW50c0JpZyA9IFttb2NrVW5zcGVudChCaWdJbnQoMTIzKSksIG1vY2tVbnNwZW50KEJpZ0ludCg5ODc2NSkpXTtcbiAgaXQoJ3N1bXMgbnVtYmVyJywgZnVuY3Rpb24gKCkge1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh1bnNwZW50U3VtKHVuc3BlbnRzLCAnbnVtYmVyJyksIDEyMyArIDk4NzY1KTtcbiAgfSk7XG4gIGl0KCdzdW1zIGJpZ2ludCcsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodW5zcGVudFN1bSh1bnNwZW50c0JpZywgJ2JpZ2ludCcpLCBCaWdJbnQoMTIzICsgOTg3NjUpKTtcbiAgfSk7XG4gIGl0KCdzdW1zIHplcm8nLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHVuc3BlbnRTdW0oW10sICdudW1iZXInKSwgMCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHVuc3BlbnRTdW0oW10sICdudW1iZXInKSwgMCk7XG4gIH0pO1xuICBpdCgndGhyb3dzIG9uIG1peGluZyBudW1iZXIgYW5kIGJpZ2ludCcsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQudGhyb3dzKCgpID0+IHtcbiAgICAgIHVuc3BlbnRTdW0oKHVuc3BlbnRzQmlnIGFzIHVua25vd24gYXMgeyB2YWx1ZTogbnVtYmVyIH1bXSkuY29uY2F0KHVuc3BlbnRzKSwgJ251bWJlcicpO1xuICAgIH0pO1xuICAgIGFzc2VydC50aHJvd3MoKCkgPT4ge1xuICAgICAgdW5zcGVudFN1bSgodW5zcGVudHMgYXMgdW5rbm93biBhcyB7IHZhbHVlOiBiaWdpbnQgfVtdKS5jb25jYXQodW5zcGVudHNCaWcpLCAnYmlnaW50Jyk7XG4gICAgfSk7XG4gIH0pO1xuICBpdCgndGhyb3dzIG9uIHVuc2FmZSBpbnRlZ2VyIG51bWJlcicsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQudGhyb3dzKCgpID0+IHtcbiAgICAgIHVuc3BlbnRTdW0oYmlnVW5zcGVudHMuY29uY2F0KHVuc3BlbnRzKSwgJ251bWJlcicpO1xuICAgIH0pO1xuICB9KTtcbiAgaXQoJ3Rocm93cyBvbiBtaXNtYXRjaCBiZXR3ZWVuIHVuc3BlbnQgYW5kIGFtb3VudFR5cGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgYXNzZXJ0LnRocm93cygoKSA9PiB7XG4gICAgICB1bnNwZW50U3VtKHVuc3BlbnRzLCAnYmlnaW50Jyk7XG4gICAgfSk7XG4gICAgYXNzZXJ0LnRocm93cygoKSA9PiB7XG4gICAgICB1bnNwZW50U3VtKHVuc3BlbnRzQmlnLCAnbnVtYmVyJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=Выполнить команду
Для локальной разработки. Не используйте в интернете!