PHP WebShell

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

Просмотр файла: derive.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 descriptor_1 = require("../../src/testutil/descriptor");
const derive_1 = require("../../src/descriptor/derive");
describe('derive', function () {
    const derivable = (0, descriptor_1.getDescriptor)('Wsh2Of3');
    const definite = derivable.atDerivationIndex(0);
    it('getDescriptorAtIndex', function () {
        (0, assert_1.default)(derivable.hasWildcard());
        (0, assert_1.default)(!definite.hasWildcard());
        assert_1.default.strictEqual((0, derive_1.getDescriptorAtIndex)(derivable, 0).toString(), definite.toString());
        assert_1.default.strictEqual((0, derive_1.getDescriptorAtIndex)(definite, undefined).toString(), definite.toString());
        assert_1.default.throws(() => (0, derive_1.getDescriptorAtIndex)(derivable, undefined), /Derivable descriptor requires an index/);
        assert_1.default.throws(() => (0, derive_1.getDescriptorAtIndex)(definite, 0), /Definite descriptor cannot be derived with index/);
    });
    it('getDescriptorAtIndexCheckScript', function () {
        const script0 = Buffer.from(derivable.atDerivationIndex(0).scriptPubkey());
        const script1 = Buffer.from(derivable.atDerivationIndex(1).scriptPubkey());
        assert_1.default.strictEqual((0, derive_1.getDescriptorAtIndexCheckScript)(derivable, 0, script0).toString(), definite.toString());
        assert_1.default.throws(() => (0, derive_1.getDescriptorAtIndexCheckScript)(derivable, 0, script1), /Script mismatch/);
    });
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVyaXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC9kZXNjcmlwdG9yL2Rlcml2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG9EQUE0QjtBQUU1Qiw4REFBOEQ7QUFDOUQsd0RBQW9HO0FBRXBHLFFBQVEsQ0FBQyxRQUFRLEVBQUU7SUFDakIsTUFBTSxTQUFTLEdBQUcsSUFBQSwwQkFBYSxFQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzNDLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVoRCxFQUFFLENBQUMsc0JBQXNCLEVBQUU7UUFDekIsSUFBQSxnQkFBTSxFQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLElBQUEsZ0JBQU0sRUFBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLGdCQUFNLENBQUMsV0FBVyxDQUFDLElBQUEsNkJBQW9CLEVBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZGLGdCQUFNLENBQUMsV0FBVyxDQUFDLElBQUEsNkJBQW9CLEVBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQzlGLGdCQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUEsNkJBQW9CLEVBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxFQUFFLHdDQUF3QyxDQUFDLENBQUM7UUFDMUcsZ0JBQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBQSw2QkFBb0IsRUFBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsa0RBQWtELENBQUMsQ0FBQztJQUM3RyxDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxpQ0FBaUMsRUFBRTtRQUNwQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDM0UsZ0JBQU0sQ0FBQyxXQUFXLENBQUMsSUFBQSx3Q0FBK0IsRUFBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQzNHLGdCQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUEsd0NBQStCLEVBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQ2pHLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCB7IGdldERlc2NyaXB0b3IgfSBmcm9tICcuLi8uLi9zcmMvdGVzdHV0aWwvZGVzY3JpcHRvcic7XG5pbXBvcnQgeyBnZXREZXNjcmlwdG9yQXRJbmRleCwgZ2V0RGVzY3JpcHRvckF0SW5kZXhDaGVja1NjcmlwdCB9IGZyb20gJy4uLy4uL3NyYy9kZXNjcmlwdG9yL2Rlcml2ZSc7XG5cbmRlc2NyaWJlKCdkZXJpdmUnLCBmdW5jdGlvbiAoKSB7XG4gIGNvbnN0IGRlcml2YWJsZSA9IGdldERlc2NyaXB0b3IoJ1dzaDJPZjMnKTtcbiAgY29uc3QgZGVmaW5pdGUgPSBkZXJpdmFibGUuYXREZXJpdmF0aW9uSW5kZXgoMCk7XG5cbiAgaXQoJ2dldERlc2NyaXB0b3JBdEluZGV4JywgZnVuY3Rpb24gKCkge1xuICAgIGFzc2VydChkZXJpdmFibGUuaGFzV2lsZGNhcmQoKSk7XG4gICAgYXNzZXJ0KCFkZWZpbml0ZS5oYXNXaWxkY2FyZCgpKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZ2V0RGVzY3JpcHRvckF0SW5kZXgoZGVyaXZhYmxlLCAwKS50b1N0cmluZygpLCBkZWZpbml0ZS50b1N0cmluZygpKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoZ2V0RGVzY3JpcHRvckF0SW5kZXgoZGVmaW5pdGUsIHVuZGVmaW5lZCkudG9TdHJpbmcoKSwgZGVmaW5pdGUudG9TdHJpbmcoKSk7XG4gICAgYXNzZXJ0LnRocm93cygoKSA9PiBnZXREZXNjcmlwdG9yQXRJbmRleChkZXJpdmFibGUsIHVuZGVmaW5lZCksIC9EZXJpdmFibGUgZGVzY3JpcHRvciByZXF1aXJlcyBhbiBpbmRleC8pO1xuICAgIGFzc2VydC50aHJvd3MoKCkgPT4gZ2V0RGVzY3JpcHRvckF0SW5kZXgoZGVmaW5pdGUsIDApLCAvRGVmaW5pdGUgZGVzY3JpcHRvciBjYW5ub3QgYmUgZGVyaXZlZCB3aXRoIGluZGV4Lyk7XG4gIH0pO1xuXG4gIGl0KCdnZXREZXNjcmlwdG9yQXRJbmRleENoZWNrU2NyaXB0JywgZnVuY3Rpb24gKCkge1xuICAgIGNvbnN0IHNjcmlwdDAgPSBCdWZmZXIuZnJvbShkZXJpdmFibGUuYXREZXJpdmF0aW9uSW5kZXgoMCkuc2NyaXB0UHVia2V5KCkpO1xuICAgIGNvbnN0IHNjcmlwdDEgPSBCdWZmZXIuZnJvbShkZXJpdmFibGUuYXREZXJpdmF0aW9uSW5kZXgoMSkuc2NyaXB0UHVia2V5KCkpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChnZXREZXNjcmlwdG9yQXRJbmRleENoZWNrU2NyaXB0KGRlcml2YWJsZSwgMCwgc2NyaXB0MCkudG9TdHJpbmcoKSwgZGVmaW5pdGUudG9TdHJpbmcoKSk7XG4gICAgYXNzZXJ0LnRocm93cygoKSA9PiBnZXREZXNjcmlwdG9yQXRJbmRleENoZWNrU2NyaXB0KGRlcml2YWJsZSwgMCwgc2NyaXB0MSksIC9TY3JpcHQgbWlzbWF0Y2gvKTtcbiAgfSk7XG59KTtcbiJdfQ==

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


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