PHP WebShell

Текущая директория: /opt/BitGoJS/modules/utxo-core/dist/test/descriptor

Просмотр файла: Output.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 Output_1 = require("../../src/descriptor/Output");
const descriptor_1 = require("../../src/testutil/descriptor");
const descriptor_2 = require("../../src/descriptor");
describe('decscriptor.Output', function () {
    const descriptor = (0, descriptor_1.getDescriptor)('Wsh2Of3');
    it('isInternalOutput correctly identifies internal outputs', function () {
        const internalOutput = { value: 1n, descriptor };
        const externalOutput = { value: 1n };
        assert_1.default.strictEqual((0, Output_1.isInternalOutput)(internalOutput), true);
        assert_1.default.strictEqual((0, Output_1.isInternalOutput)(externalOutput), false);
    });
    it('isExternalOutput correctly identifies external outputs', function () {
        const internalOutput = { value: 1n, descriptor };
        const externalOutput = { value: 1n };
        assert_1.default.strictEqual((0, Output_1.isExternalOutput)(internalOutput), false);
        assert_1.default.strictEqual((0, Output_1.isExternalOutput)(externalOutput), true);
    });
    it('toDerivedDescriptorWalletOutput returns expected values', function () {
        const derivable = descriptor;
        const definite = derivable.atDerivationIndex(0);
        for (const descriptor of [derivable, definite]) {
            const descriptorIndex = descriptor === derivable ? 0 : undefined;
            const descriptorMap = new Map([['desc', descriptor]]);
            const descriptorWalletOutput = {
                hash: Buffer.alloc(32).toString('hex'),
                index: 0,
                witnessUtxo: {
                    script: (0, descriptor_2.createScriptPubKeyFromDescriptor)(descriptor, descriptorIndex),
                    value: 1n,
                },
                descriptorName: 'desc',
                descriptorIndex,
            };
            assert_1.default.strictEqual((0, Output_1.toDerivedDescriptorWalletOutput)(descriptorWalletOutput, descriptorMap).descriptor.toString(), definite.toString());
        }
    });
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3V0cHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC9kZXNjcmlwdG9yL091dHB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9EQUE0QjtBQUU1Qix3REFBa0g7QUFDbEgsOERBQThEO0FBQzlELHFEQUF3RTtBQUV4RSxRQUFRLENBQUMsb0JBQW9CLEVBQUU7SUFDN0IsTUFBTSxVQUFVLEdBQUcsSUFBQSwwQkFBYSxFQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRTVDLEVBQUUsQ0FBQyx3REFBd0QsRUFBRTtRQUMzRCxNQUFNLGNBQWMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLENBQUM7UUFDakQsTUFBTSxjQUFjLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFFckMsZ0JBQU0sQ0FBQyxXQUFXLENBQUMsSUFBQSx5QkFBZ0IsRUFBQyxjQUFjLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzRCxnQkFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFBLHlCQUFnQixFQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLHdEQUF3RCxFQUFFO1FBQzNELE1BQU0sY0FBYyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUNqRCxNQUFNLGNBQWMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUVyQyxnQkFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFBLHlCQUFnQixFQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVELGdCQUFNLENBQUMsV0FBVyxDQUFDLElBQUEseUJBQWdCLEVBQUMsY0FBYyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMseURBQXlELEVBQUU7UUFDNUQsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDO1FBQzdCLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRCxLQUFLLE1BQU0sVUFBVSxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDL0MsTUFBTSxlQUFlLEdBQUcsVUFBVSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDakUsTUFBTSxhQUFhLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEQsTUFBTSxzQkFBc0IsR0FBRztnQkFDN0IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztnQkFDdEMsS0FBSyxFQUFFLENBQUM7Z0JBQ1IsV0FBVyxFQUFFO29CQUNYLE1BQU0sRUFBRSxJQUFBLDZDQUFnQyxFQUFDLFVBQVUsRUFBRSxlQUFlLENBQUM7b0JBQ3JFLEtBQUssRUFBRSxFQUFFO2lCQUNWO2dCQUNELGNBQWMsRUFBRSxNQUFNO2dCQUN0QixlQUFlO2FBQ2hCLENBQUM7WUFDRixnQkFBTSxDQUFDLFdBQVcsQ0FDaEIsSUFBQSx3Q0FBK0IsRUFBQyxzQkFBc0IsRUFBRSxhQUFhLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLEVBQzVGLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FDcEIsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG5pbXBvcnQgeyBpc0V4dGVybmFsT3V0cHV0LCBpc0ludGVybmFsT3V0cHV0LCB0b0Rlcml2ZWREZXNjcmlwdG9yV2FsbGV0T3V0cHV0IH0gZnJvbSAnLi4vLi4vc3JjL2Rlc2NyaXB0b3IvT3V0cHV0JztcbmltcG9ydCB7IGdldERlc2NyaXB0b3IgfSBmcm9tICcuLi8uLi9zcmMvdGVzdHV0aWwvZGVzY3JpcHRvcic7XG5pbXBvcnQgeyBjcmVhdGVTY3JpcHRQdWJLZXlGcm9tRGVzY3JpcHRvciB9IGZyb20gJy4uLy4uL3NyYy9kZXNjcmlwdG9yJztcblxuZGVzY3JpYmUoJ2RlY3NjcmlwdG9yLk91dHB1dCcsIGZ1bmN0aW9uICgpIHtcbiAgY29uc3QgZGVzY3JpcHRvciA9IGdldERlc2NyaXB0b3IoJ1dzaDJPZjMnKTtcblxuICBpdCgnaXNJbnRlcm5hbE91dHB1dCBjb3JyZWN0bHkgaWRlbnRpZmllcyBpbnRlcm5hbCBvdXRwdXRzJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IGludGVybmFsT3V0cHV0ID0geyB2YWx1ZTogMW4sIGRlc2NyaXB0b3IgfTtcbiAgICBjb25zdCBleHRlcm5hbE91dHB1dCA9IHsgdmFsdWU6IDFuIH07XG5cbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoaXNJbnRlcm5hbE91dHB1dChpbnRlcm5hbE91dHB1dCksIHRydWUpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChpc0ludGVybmFsT3V0cHV0KGV4dGVybmFsT3V0cHV0KSwgZmFsc2UpO1xuICB9KTtcblxuICBpdCgnaXNFeHRlcm5hbE91dHB1dCBjb3JyZWN0bHkgaWRlbnRpZmllcyBleHRlcm5hbCBvdXRwdXRzJywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IGludGVybmFsT3V0cHV0ID0geyB2YWx1ZTogMW4sIGRlc2NyaXB0b3IgfTtcbiAgICBjb25zdCBleHRlcm5hbE91dHB1dCA9IHsgdmFsdWU6IDFuIH07XG5cbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoaXNFeHRlcm5hbE91dHB1dChpbnRlcm5hbE91dHB1dCksIGZhbHNlKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoaXNFeHRlcm5hbE91dHB1dChleHRlcm5hbE91dHB1dCksIHRydWUpO1xuICB9KTtcblxuICBpdCgndG9EZXJpdmVkRGVzY3JpcHRvcldhbGxldE91dHB1dCByZXR1cm5zIGV4cGVjdGVkIHZhbHVlcycsIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBkZXJpdmFibGUgPSBkZXNjcmlwdG9yO1xuICAgIGNvbnN0IGRlZmluaXRlID0gZGVyaXZhYmxlLmF0RGVyaXZhdGlvbkluZGV4KDApO1xuICAgIGZvciAoY29uc3QgZGVzY3JpcHRvciBvZiBbZGVyaXZhYmxlLCBkZWZpbml0ZV0pIHtcbiAgICAgIGNvbnN0IGRlc2NyaXB0b3JJbmRleCA9IGRlc2NyaXB0b3IgPT09IGRlcml2YWJsZSA/IDAgOiB1bmRlZmluZWQ7XG4gICAgICBjb25zdCBkZXNjcmlwdG9yTWFwID0gbmV3IE1hcChbWydkZXNjJywgZGVzY3JpcHRvcl1dKTtcbiAgICAgIGNvbnN0IGRlc2NyaXB0b3JXYWxsZXRPdXRwdXQgPSB7XG4gICAgICAgIGhhc2g6IEJ1ZmZlci5hbGxvYygzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICBpbmRleDogMCxcbiAgICAgICAgd2l0bmVzc1V0eG86IHtcbiAgICAgICAgICBzY3JpcHQ6IGNyZWF0ZVNjcmlwdFB1YktleUZyb21EZXNjcmlwdG9yKGRlc2NyaXB0b3IsIGRlc2NyaXB0b3JJbmRleCksXG4gICAgICAgICAgdmFsdWU6IDFuLFxuICAgICAgICB9LFxuICAgICAgICBkZXNjcmlwdG9yTmFtZTogJ2Rlc2MnLFxuICAgICAgICBkZXNjcmlwdG9ySW5kZXgsXG4gICAgICB9O1xuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICB0b0Rlcml2ZWREZXNjcmlwdG9yV2FsbGV0T3V0cHV0KGRlc2NyaXB0b3JXYWxsZXRPdXRwdXQsIGRlc2NyaXB0b3JNYXApLmRlc2NyaXB0b3IudG9TdHJpbmcoKSxcbiAgICAgICAgZGVmaW5pdGUudG9TdHJpbmcoKVxuICAgICAgKTtcbiAgICB9XG4gIH0pO1xufSk7XG4iXX0=

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


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