@bitgo-beta/abstract-eth 1.0.2-beta.210 → 1.0.2-beta.2100
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/abstractEthLikeCoin.d.ts +20 -9
- package/dist/src/abstractEthLikeCoin.d.ts.map +1 -1
- package/dist/src/abstractEthLikeCoin.js +46 -15
- package/dist/src/abstractEthLikeNewCoins.d.ts +876 -0
- package/dist/src/abstractEthLikeNewCoins.d.ts.map +1 -0
- package/dist/src/abstractEthLikeNewCoins.js +2664 -0
- package/dist/src/ethLikeToken.d.ts +38 -6
- package/dist/src/ethLikeToken.d.ts.map +1 -1
- package/dist/src/ethLikeToken.js +289 -10
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +8 -2
- package/dist/src/lib/constants.d.ts +4 -0
- package/dist/src/lib/constants.d.ts.map +1 -0
- package/dist/src/lib/constants.js +11 -0
- package/dist/src/lib/contractCall.d.ts +8 -0
- package/dist/src/lib/contractCall.d.ts.map +1 -0
- package/dist/src/lib/contractCall.js +17 -0
- package/dist/src/lib/decryptionDelegationBuilder.d.ts +90 -0
- package/dist/src/lib/decryptionDelegationBuilder.d.ts.map +1 -0
- package/dist/src/lib/decryptionDelegationBuilder.js +59 -0
- package/dist/src/lib/iface.d.ts +143 -0
- package/dist/src/lib/iface.d.ts.map +1 -0
- package/dist/src/lib/iface.js +8 -0
- package/dist/src/lib/index.d.ts +19 -0
- package/dist/src/lib/index.d.ts.map +1 -0
- package/dist/src/lib/index.js +60 -0
- package/dist/src/lib/keyPair.d.ts +26 -0
- package/dist/src/lib/keyPair.d.ts.map +1 -0
- package/dist/src/lib/keyPair.js +65 -0
- package/dist/src/lib/messages/eip191/eip191Message.d.ts +12 -0
- package/dist/src/lib/messages/eip191/eip191Message.d.ts.map +1 -0
- package/dist/src/lib/messages/eip191/eip191Message.js +25 -0
- package/dist/src/lib/messages/eip191/eip191MessageBuilder.d.ts +19 -0
- package/dist/src/lib/messages/eip191/eip191MessageBuilder.d.ts.map +1 -0
- package/dist/src/lib/messages/eip191/eip191MessageBuilder.js +27 -0
- package/dist/src/lib/messages/eip191/index.d.ts +3 -0
- package/dist/src/lib/messages/eip191/index.d.ts.map +1 -0
- package/dist/src/lib/messages/eip191/index.js +19 -0
- package/dist/src/lib/messages/eip712/eip712Message.d.ts +6 -0
- package/dist/src/lib/messages/eip712/eip712Message.d.ts.map +1 -0
- package/dist/src/lib/messages/eip712/eip712Message.js +27 -0
- package/dist/src/lib/messages/eip712/eip712MessageBuilder.d.ts +7 -0
- package/dist/src/lib/messages/eip712/eip712MessageBuilder.d.ts.map +1 -0
- package/dist/src/lib/messages/eip712/eip712MessageBuilder.js +15 -0
- package/dist/src/lib/messages/eip712/index.d.ts +3 -0
- package/dist/src/lib/messages/eip712/index.d.ts.map +1 -0
- package/dist/src/lib/messages/eip712/index.js +19 -0
- package/dist/src/lib/messages/index.d.ts +4 -0
- package/dist/src/lib/messages/index.d.ts.map +1 -0
- package/dist/src/lib/messages/index.js +20 -0
- package/dist/src/lib/messages/messageBuilderFactory.d.ts +7 -0
- package/dist/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
- package/dist/src/lib/messages/messageBuilderFactory.js +23 -0
- package/dist/src/lib/transaction.d.ts +69 -0
- package/dist/src/lib/transaction.d.ts.map +1 -0
- package/dist/src/lib/transaction.js +149 -0
- package/dist/src/lib/transactionBuilder.d.ts +313 -0
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder.js +926 -0
- package/dist/src/lib/transferBuilder.d.ts +76 -0
- package/dist/src/lib/transferBuilder.d.ts.map +1 -0
- package/dist/src/lib/transferBuilder.js +307 -0
- package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.d.ts +54 -0
- package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.d.ts.map +1 -0
- package/dist/src/lib/transferBuilders/baseNFTTransferBuilder.js +120 -0
- package/dist/src/lib/transferBuilders/index.d.ts +5 -0
- package/dist/src/lib/transferBuilders/index.d.ts.map +1 -0
- package/dist/src/lib/transferBuilders/index.js +21 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC1155.d.ts +17 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC1155.d.ts.map +1 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC1155.js +96 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC721.d.ts +21 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC721.d.ts.map +1 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC721.js +91 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC7984.d.ts +35 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC7984.d.ts.map +1 -0
- package/dist/src/lib/transferBuilders/transferBuilderERC7984.js +113 -0
- package/dist/src/lib/types.d.ts +40 -0
- package/dist/src/lib/types.d.ts.map +1 -0
- package/dist/src/lib/types.js +140 -0
- package/dist/src/lib/utils.d.ts +350 -0
- package/dist/src/lib/utils.d.ts.map +1 -0
- package/dist/src/lib/utils.js +946 -0
- package/dist/src/lib/walletUtil.d.ts +46 -0
- package/dist/src/lib/walletUtil.d.ts.map +1 -0
- package/dist/src/lib/walletUtil.js +53 -0
- package/dist/src/lib/zamaUtils.d.ts +107 -0
- package/dist/src/lib/zamaUtils.d.ts.map +1 -0
- package/dist/src/lib/zamaUtils.js +220 -0
- package/dist/src/types.d.ts +9 -0
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +3 -0
- package/dist/test/index.d.ts +2 -0
- package/dist/test/index.d.ts.map +1 -0
- package/dist/test/index.js +18 -0
- package/dist/test/unit/coin.d.ts +8 -0
- package/dist/test/unit/coin.d.ts.map +1 -0
- package/dist/test/unit/coin.js +577 -0
- package/dist/test/unit/decryptionDelegationBuilder.d.ts +2 -0
- package/dist/test/unit/decryptionDelegationBuilder.d.ts.map +1 -0
- package/dist/test/unit/decryptionDelegationBuilder.js +265 -0
- package/dist/test/unit/index.d.ts +8 -0
- package/dist/test/unit/index.d.ts.map +1 -0
- package/dist/test/unit/index.js +24 -0
- package/dist/test/unit/messages/abstractEthMessageBuilderTests.d.ts +3 -0
- package/dist/test/unit/messages/abstractEthMessageBuilderTests.d.ts.map +1 -0
- package/dist/test/unit/messages/abstractEthMessageBuilderTests.js +110 -0
- package/dist/test/unit/messages/abstractEthMessageTestTypes.d.ts +43 -0
- package/dist/test/unit/messages/abstractEthMessageTestTypes.d.ts.map +1 -0
- package/dist/test/unit/messages/abstractEthMessageTestTypes.js +3 -0
- package/dist/test/unit/messages/abstractEthMessagesTests.d.ts +3 -0
- package/dist/test/unit/messages/abstractEthMessagesTests.d.ts.map +1 -0
- package/dist/test/unit/messages/abstractEthMessagesTests.js +129 -0
- package/dist/test/unit/messages/eip191/eip191Message.d.ts +2 -0
- package/dist/test/unit/messages/eip191/eip191Message.d.ts.map +1 -0
- package/dist/test/unit/messages/eip191/eip191Message.js +15 -0
- package/dist/test/unit/messages/eip191/eip191MessageBuilder.d.ts +2 -0
- package/dist/test/unit/messages/eip191/eip191MessageBuilder.d.ts.map +1 -0
- package/dist/test/unit/messages/eip191/eip191MessageBuilder.js +16 -0
- package/dist/test/unit/messages/eip191/fixtures.d.ts +109 -0
- package/dist/test/unit/messages/eip191/fixtures.d.ts.map +1 -0
- package/dist/test/unit/messages/eip191/fixtures.js +63 -0
- package/dist/test/unit/messages/eip712/eip712Message.d.ts +2 -0
- package/dist/test/unit/messages/eip712/eip712Message.d.ts.map +1 -0
- package/dist/test/unit/messages/eip712/eip712Message.js +15 -0
- package/dist/test/unit/messages/eip712/eip712MessageBuilder.d.ts +2 -0
- package/dist/test/unit/messages/eip712/eip712MessageBuilder.d.ts.map +1 -0
- package/dist/test/unit/messages/eip712/eip712MessageBuilder.js +16 -0
- package/dist/test/unit/messages/eip712/fixtures.d.ts +76 -0
- package/dist/test/unit/messages/eip712/fixtures.d.ts.map +1 -0
- package/dist/test/unit/messages/eip712/fixtures.js +120 -0
- package/dist/test/unit/messages/index.d.ts +4 -0
- package/dist/test/unit/messages/index.d.ts.map +1 -0
- package/dist/test/unit/messages/index.js +20 -0
- package/dist/test/unit/messages/messageBuilderFactory.d.ts +2 -0
- package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +1 -0
- package/dist/test/unit/messages/messageBuilderFactory.js +52 -0
- package/dist/test/unit/token.d.ts +2 -0
- package/dist/test/unit/token.d.ts.map +1 -0
- package/dist/test/unit/token.js +37 -0
- package/dist/test/unit/transaction.d.ts +3 -0
- package/dist/test/unit/transaction.d.ts.map +1 -0
- package/dist/test/unit/transaction.js +73 -0
- package/dist/test/unit/transactionBuilder/addressInitialization.d.ts +8 -0
- package/dist/test/unit/transactionBuilder/addressInitialization.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/addressInitialization.js +95 -0
- package/dist/test/unit/transactionBuilder/decryptionDelegation.d.ts +3 -0
- package/dist/test/unit/transactionBuilder/decryptionDelegation.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/decryptionDelegation.js +161 -0
- package/dist/test/unit/transactionBuilder/flushERC7984.d.ts +3 -0
- package/dist/test/unit/transactionBuilder/flushERC7984.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/flushERC7984.js +292 -0
- package/dist/test/unit/transactionBuilder/flushNft.d.ts +2 -0
- package/dist/test/unit/transactionBuilder/flushNft.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/flushNft.js +381 -0
- package/dist/test/unit/transactionBuilder/index.d.ts +7 -0
- package/dist/test/unit/transactionBuilder/index.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/index.js +23 -0
- package/dist/test/unit/transactionBuilder/send.d.ts +3 -0
- package/dist/test/unit/transactionBuilder/send.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/send.js +197 -0
- package/dist/test/unit/transactionBuilder/walletInitialization.d.ts +11 -0
- package/dist/test/unit/transactionBuilder/walletInitialization.d.ts.map +1 -0
- package/dist/test/unit/transactionBuilder/walletInitialization.js +137 -0
- package/dist/test/unit/transferBuilder.d.ts +2 -0
- package/dist/test/unit/transferBuilder.d.ts.map +1 -0
- package/dist/test/unit/transferBuilder.js +76 -0
- package/dist/test/unit/utils.d.ts +2 -0
- package/dist/test/unit/utils.d.ts.map +1 -0
- package/dist/test/unit/utils.js +214 -0
- package/dist/test/unit/zamaUtils.d.ts +2 -0
- package/dist/test/unit/zamaUtils.d.ts.map +1 -0
- package/dist/test/unit/zamaUtils.js +352 -0
- package/dist/tsconfig.tsbuildinfo +1 -8286
- package/package.json +34 -10
- package/.eslintignore +0 -5
- package/CHANGELOG.md +0 -166
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.testEthMessageSigning = testEthMessageSigning;
|
|
7
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
+
const statics_1 = require("@bitgo-beta/statics");
|
|
9
|
+
const should_1 = __importDefault(require("should"));
|
|
10
|
+
const coinConfig = statics_1.coins.get('eth');
|
|
11
|
+
function testEthMessageSigning(testConfig) {
|
|
12
|
+
const { messageType, messageClass, tests, signedTest } = testConfig;
|
|
13
|
+
describe(`${messageType} - Message Type`, () => {
|
|
14
|
+
it('should have the correct message type', () => {
|
|
15
|
+
const msgInstance = new messageClass({
|
|
16
|
+
...signedTest.input,
|
|
17
|
+
coinConfig,
|
|
18
|
+
});
|
|
19
|
+
msgInstance.getType().should.equal(messageType);
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
describe(`${messageType} - Signable Payload Generation`, () => {
|
|
23
|
+
Object.entries(tests).map(([key, { input, expected }]) => {
|
|
24
|
+
it(`should generate the correct signable payload for message '${key}'`, async () => {
|
|
25
|
+
const message = new messageClass({
|
|
26
|
+
...input,
|
|
27
|
+
coinConfig,
|
|
28
|
+
});
|
|
29
|
+
const signablePayload = await message.getSignablePayload();
|
|
30
|
+
signablePayload.toString('hex').should.equal(expected.expectedSignableHex);
|
|
31
|
+
if (input.metadata) {
|
|
32
|
+
should_1.default.deepEqual(message.getMetadata(), input.metadata);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
should_1.default.deepEqual(message.getMetadata(), {});
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
describe(`${messageType} - Maintaining Signers and Signatures`, () => {
|
|
41
|
+
const { payload, signature, signer } = signedTest.input;
|
|
42
|
+
it('should be created with the correct signatures and signers', () => {
|
|
43
|
+
const message = new messageClass({
|
|
44
|
+
coinConfig,
|
|
45
|
+
payload,
|
|
46
|
+
signatures: [signature],
|
|
47
|
+
signers: [signer],
|
|
48
|
+
});
|
|
49
|
+
message.getSignatures().should.containEql(signature);
|
|
50
|
+
message.getSigners().should.containEql(signer);
|
|
51
|
+
});
|
|
52
|
+
it('should maintain signatures and signers correctly', () => {
|
|
53
|
+
const message = new messageClass({
|
|
54
|
+
coinConfig,
|
|
55
|
+
payload,
|
|
56
|
+
signatures: [signature],
|
|
57
|
+
signers: [signer],
|
|
58
|
+
});
|
|
59
|
+
message.addSignature({
|
|
60
|
+
publicKey: { pub: 'pub1' },
|
|
61
|
+
signature: Buffer.from('new-signature'),
|
|
62
|
+
});
|
|
63
|
+
message.addSigner('new-signer');
|
|
64
|
+
message.getSignatures().should.containEql({
|
|
65
|
+
publicKey: { pub: 'pub1' },
|
|
66
|
+
signature: Buffer.from('new-signature'),
|
|
67
|
+
});
|
|
68
|
+
message.getSigners().should.containEql('new-signer');
|
|
69
|
+
// Test replacing all
|
|
70
|
+
message.setSignatures([
|
|
71
|
+
{
|
|
72
|
+
publicKey: { pub: 'pub2' },
|
|
73
|
+
signature: Buffer.from('replaced-signature'),
|
|
74
|
+
},
|
|
75
|
+
]);
|
|
76
|
+
message.setSigners(['replaced-signer']);
|
|
77
|
+
message.getSignatures().should.deepEqual([
|
|
78
|
+
{
|
|
79
|
+
publicKey: { pub: 'pub2' },
|
|
80
|
+
signature: Buffer.from('replaced-signature'),
|
|
81
|
+
},
|
|
82
|
+
]);
|
|
83
|
+
message.getSigners().should.deepEqual(['replaced-signer']);
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
describe(`${messageType} - Broadcast Format`, () => {
|
|
87
|
+
const { payload, signature, signer } = signedTest.input;
|
|
88
|
+
const { expectedSignableBase64 } = signedTest.expected;
|
|
89
|
+
it('should convert to broadcast format correctly', async () => {
|
|
90
|
+
const message = new messageClass({
|
|
91
|
+
coinConfig,
|
|
92
|
+
payload,
|
|
93
|
+
signatures: [signature],
|
|
94
|
+
signers: [signer],
|
|
95
|
+
});
|
|
96
|
+
const broadcastFormat = await message.toBroadcastFormat();
|
|
97
|
+
const expectedSerializedSignatures = (0, sdk_core_1.serializeSignatures)([signature]);
|
|
98
|
+
broadcastFormat.type.should.equal(messageType);
|
|
99
|
+
broadcastFormat.payload.should.equal(message.getPayload());
|
|
100
|
+
broadcastFormat.serializedSignatures?.should.deepEqual(expectedSerializedSignatures);
|
|
101
|
+
broadcastFormat.signers?.should.deepEqual([signer]);
|
|
102
|
+
broadcastFormat.signablePayload?.should.equal(expectedSignableBase64);
|
|
103
|
+
if (broadcastFormat.metadata) {
|
|
104
|
+
broadcastFormat.metadata.should.deepEqual(message.getMetadata());
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
should_1.default.deepEqual(message.getMetadata(), {});
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
it('should convert to broadcast string correctly', async () => {
|
|
111
|
+
const message = new messageClass({
|
|
112
|
+
coinConfig,
|
|
113
|
+
payload,
|
|
114
|
+
signatures: [signature],
|
|
115
|
+
signers: [signer],
|
|
116
|
+
});
|
|
117
|
+
const broadcastHex = await message.toBroadcastString();
|
|
118
|
+
const broadcastString = Buffer.from(broadcastHex, 'hex').toString();
|
|
119
|
+
const parsedBroadcast = JSON.parse(broadcastString);
|
|
120
|
+
const expectedSerializedSignatures = (0, sdk_core_1.serializeSignatures)([signature]);
|
|
121
|
+
parsedBroadcast.type.should.equal(messageType);
|
|
122
|
+
parsedBroadcast.payload.should.equal(message.getPayload());
|
|
123
|
+
parsedBroadcast.serializedSignatures.should.deepEqual(expectedSerializedSignatures);
|
|
124
|
+
parsedBroadcast.signers.should.deepEqual([signer]);
|
|
125
|
+
parsedBroadcast.metadata.should.deepEqual(message.getMetadata());
|
|
126
|
+
});
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3RFdGhNZXNzYWdlc1Rlc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdGVzdC91bml0L21lc3NhZ2VzL2Fic3RyYWN0RXRoTWVzc2FnZXNUZXN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQU9BLHNEQXVJQztBQTlJRCxtREFBMkQ7QUFDM0QsaURBQTRDO0FBQzVDLG9EQUE0QjtBQUc1QixNQUFNLFVBQVUsR0FBRyxlQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBRXBDLFNBQWdCLHFCQUFxQixDQUFDLFVBQTZCO0lBQ2pFLE1BQU0sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsR0FBRyxVQUFVLENBQUM7SUFFcEUsUUFBUSxDQUFDLEdBQUcsV0FBVyxpQkFBaUIsRUFBRSxHQUFHLEVBQUU7UUFDN0MsRUFBRSxDQUFDLHNDQUFzQyxFQUFFLEdBQUcsRUFBRTtZQUM5QyxNQUFNLFdBQVcsR0FBRyxJQUFJLFlBQVksQ0FBQztnQkFDbkMsR0FBRyxVQUFVLENBQUMsS0FBSztnQkFDbkIsVUFBVTthQUNYLENBQUMsQ0FBQztZQUNILFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsR0FBRyxXQUFXLGdDQUFnQyxFQUFFLEdBQUcsRUFBRTtRQUM1RCxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN2RCxFQUFFLENBQUMsNkRBQTZELEdBQUcsR0FBRyxFQUFFLEtBQUssSUFBSSxFQUFFO2dCQUNqRixNQUFNLE9BQU8sR0FBRyxJQUFJLFlBQVks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QUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1lBQ3BGLGVBQWUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbkQsZUFBZSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2VyaWFsaXplU2lnbmF0dXJlcyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IGNvaW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgc2hvdWxkIGZyb20gJ3Nob3VsZCc7XG5pbXBvcnQgeyBNZXNzYWdlVGVzdENvbmZpZyB9IGZyb20gJy4vYWJzdHJhY3RFdGhNZXNzYWdlVGVzdFR5cGVzJztcblxuY29uc3QgY29pbkNvbmZpZyA9IGNvaW5zLmdldCgnZXRoJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiB0ZXN0RXRoTWVzc2FnZVNpZ25pbmcodGVzdENvbmZpZzogTWVzc2FnZVRlc3RDb25maWcpOiB2b2lkIHtcbiAgY29uc3QgeyBtZXNzYWdlVHlwZSwgbWVzc2FnZUNsYXNzLCB0ZXN0cywgc2lnbmVkVGVzdCB9ID0gdGVzdENvbmZpZztcblxuICBkZXNjcmliZShgJHttZXNzYWdlVHlwZX0gLSBNZXNzYWdlIFR5cGVgLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCBoYXZlIHRoZSBjb3JyZWN0IG1lc3NhZ2UgdHlwZScsICgpID0+IHtcbiAgICAgIGNvbnN0IG1zZ0luc3RhbmNlID0gbmV3IG1lc3NhZ2VDbGFzcyh7XG4gICAgICAgIC4uLnNpZ25lZFRlc3QuaW5wdXQsXG4gICAgICAgIGNvaW5Db25maWcsXG4gICAgICB9KTtcbiAgICAgIG1zZ0luc3RhbmNlLmdldFR5cGUoKS5zaG91bGQuZXF1YWwobWVzc2FnZVR5cGUpO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZShgJHttZXNzYWdlVHlwZX0gLSBTaWduYWJsZSBQYXlsb2FkIEdlbmVyYXRpb25gLCAoKSA9PiB7XG4gICAgT2JqZWN0LmVudHJpZXModGVzdHMpLm1hcCgoW2tleSwgeyBpbnB1dCwgZXhwZWN0ZWQgfV0pID0+IHtcbiAgICAgIGl0KGBzaG91bGQgZ2VuZXJhdGUgdGhlIGNvcnJlY3Qgc2lnbmFibGUgcGF5bG9hZCBmb3IgbWVzc2FnZSAnJHtrZXl9J2AsIGFzeW5jICgpID0+IHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IG5ldyBtZXNzYWdlQ2xhc3Moe1xuICAgICAgICAgIC4uLmlucHV0LFxuICAgICAgICAgIGNvaW5Db25maWcsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IHNpZ25hYmxlUGF5bG9hZCA9IGF3YWl0IG1lc3NhZ2UuZ2V0U2lnbmFibGVQYXlsb2FkKCk7XG4gICAgICAgIHNpZ25hYmxlUGF5bG9hZC50b1N0cmluZygnaGV4Jykuc2hvdWxkLmVxdWFsKGV4cGVjdGVkLmV4cGVjdGVkU2lnbmFibGVIZXgpO1xuXG4gICAgICAgIGlmIChpbnB1dC5tZXRhZGF0YSkge1xuICAgICAgICAgIHNob3VsZC5kZWVwRXF1YWwobWVzc2FnZS5nZXRNZXRhZGF0YSgpLCBpbnB1dC5tZXRhZGF0YSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2hvdWxkLmRlZXBFcXVhbChtZXNzYWdlLmdldE1ldGFkYXRhKCksIHt9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKGAke21lc3NhZ2VUeXBlfSAtIE1haW50YWluaW5nIFNpZ25lcnMgYW5kIFNpZ25hdHVyZXNgLCAoKSA9PiB7XG4gICAgY29uc3QgeyBwYXlsb2FkLCBzaWduYXR1cmUsIHNpZ25lciB9ID0gc2lnbmVkVGVzdC5pbnB1dDtcblxuICAgIGl0KCdzaG91bGQgYmUgY3JlYXRlZCB3aXRoIHRoZSBjb3JyZWN0IHNpZ25hdHVyZXMgYW5kIHNpZ25lcnMnLCAoKSA9PiB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gbmV3IG1lc3NhZ2VDbGFzcyh7XG4gICAgICAgIGNvaW5Db25maWcsXG4gICAgICAgIHBheWxvYWQsXG4gICAgICAgIHNpZ25hdHVyZXM6IFtzaWduYXR1cmVdLFxuICAgICAgICBzaWduZXJzOiBbc2lnbmVyXSxcbiAgICAgIH0pO1xuXG4gICAgICBtZXNzYWdlLmdldFNpZ25hdHVyZXMoKS5zaG91bGQuY29udGFpbkVxbChzaWduYXR1cmUpO1xuICAgICAgbWVzc2FnZS5nZXRTaWduZXJzKCkuc2hvdWxkLmNvbnRhaW5FcWwoc2lnbmVyKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgbWFpbnRhaW4gc2lnbmF0dXJlcyBhbmQgc2lnbmVycyBjb3JyZWN0bHknLCAoKSA9PiB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gbmV3IG1lc3NhZ2VDbGFzcyh7XG4gICAgICAgIGNvaW5Db25maWcsXG4gICAgICAgIHBheWxvYWQsXG4gICAgICAgIHNpZ25hdHVyZXM6IFtzaWduYXR1cmVdLFxuICAgICAgICBzaWduZXJzOiBbc2lnbmVyXSxcbiAgICAgIH0pO1xuXG4gICAgICBtZXNzYWdlLmFkZFNpZ25hdHVyZSh7XG4gICAgICAgIHB1YmxpY0tleTogeyBwdWI6ICdwdWIxJyB9LFxuICAgICAgICBzaWduYXR1cmU6IEJ1ZmZlci5mcm9tKCduZXctc2lnbmF0dXJlJyksXG4gICAgICB9KTtcbiAgICAgIG1lc3NhZ2UuYWRkU2lnbmVyKCduZXctc2lnbmVyJyk7XG5cbiAgICAgIG1lc3NhZ2UuZ2V0U2lnbmF0dXJlcygpLnNob3VsZC5jb250YWluRXFsKHtcbiAgICAgICAgcHVibGljS2V5OiB7IHB1YjogJ3B1YjEnIH0sXG4gICAgICAgIHNpZ25hdHVyZTogQnVmZmVyLmZyb20oJ25ldy1zaWduYXR1cmUnKSxcbiAgICAgIH0pO1xuICAgICAgbWVzc2FnZS5nZXRTaWduZXJzKCkuc2hvdWxkLmNvbnRhaW5FcWwoJ25ldy1zaWduZXInKTtcblxuICAgICAgLy8gVGVzdCByZXBsYWNpbmcgYWxsXG4gICAgICBtZXNzYWdlLnNldFNpZ25hdHVyZXMoW1xuICAgICAgICB7XG4gICAgICAgICAgcHVibGljS2V5OiB7IHB1YjogJ3B1YjInIH0sXG4gICAgICAgICAgc2lnbmF0dXJlOiBCdWZmZXIuZnJvbSgncmVwbGFjZWQtc2lnbmF0dXJlJyksXG4gICAgICAgIH0sXG4gICAgICBdKTtcbiAgICAgIG1lc3NhZ2Uuc2V0U2lnbmVycyhbJ3JlcGxhY2VkLXNpZ25lciddKTtcblxuICAgICAgbWVzc2FnZS5nZXRTaWduYXR1cmVzKCkuc2hvdWxkLmRlZXBFcXVhbChbXG4gICAgICAgIHtcbiAgICAgICAgICBwdWJsaWNLZXk6IHsgcHViOiAncHViMicgfSxcbiAgICAgICAgICBzaWduYXR1cmU6IEJ1ZmZlci5mcm9tKCdyZXBsYWNlZC1zaWduYXR1cmUnKSxcbiAgICAgICAgfSxcbiAgICAgIF0pO1xuICAgICAgbWVzc2FnZS5nZXRTaWduZXJzKCkuc2hvdWxkLmRlZXBFcXVhbChbJ3JlcGxhY2VkLXNpZ25lciddKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoYCR7bWVzc2FnZVR5cGV9IC0gQnJvYWRjYXN0IEZvcm1hdGAsICgpID0+IHtcbiAgICBjb25zdCB7IHBheWxvYWQsIHNpZ25hdHVyZSwgc2lnbmVyIH0gPSBzaWduZWRUZXN0LmlucHV0O1xuICAgIGNvbnN0IHsgZXhwZWN0ZWRTaWduYWJsZUJhc2U2NCB9ID0gc2lnbmVkVGVzdC5leHBlY3RlZDtcblxuICAgIGl0KCdzaG91bGQgY29udmVydCB0byBicm9hZGNhc3QgZm9ybWF0IGNvcnJlY3RseScsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBuZXcgbWVzc2FnZUNsYXNzKHtcbiAgICAgICAgY29pbkNvbmZpZyxcbiAgICAgICAgcGF5bG9hZCxcbiAgICAgICAgc2lnbmF0dXJlczogW3NpZ25hdHVyZV0sXG4gICAgICAgIHNpZ25lcnM6IFtzaWduZXJdLFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGJyb2FkY2FzdEZvcm1hdCA9IGF3YWl0IG1lc3NhZ2UudG9Ccm9hZGNhc3RGb3JtYXQoKTtcbiAgICAgIGNvbnN0IGV4cGVjdGVkU2VyaWFsaXplZFNpZ25hdHVyZXMgPSBzZXJpYWxpemVTaWduYXR1cmVzKFtzaWduYXR1cmVdKTtcblxuICAgICAgYnJvYWRjYXN0Rm9ybWF0LnR5cGUuc2hvdWxkLmVxdWFsKG1lc3NhZ2VUeXBlKTtcbiAgICAgIGJyb2FkY2FzdEZvcm1hdC5wYXlsb2FkLnNob3VsZC5lcXVhbChtZXNzYWdlLmdldFBheWxvYWQoKSk7XG4gICAgICBicm9hZGNhc3RGb3JtYXQuc2VyaWFsaXplZFNpZ25hdHVyZXM/LnNob3VsZC5kZWVwRXF1YWwoZXhwZWN0ZWRTZXJpYWxpemVkU2lnbmF0dXJlcyk7XG4gICAgICBicm9hZGNhc3RGb3JtYXQuc2lnbmVycz8uc2hvdWxkLmRlZXBFcXVhbChbc2lnbmVyXSk7XG4gICAgICBicm9hZGNhc3RGb3JtYXQuc2lnbmFibGVQYXlsb2FkPy5zaG91bGQuZXF1YWwoZXhwZWN0ZWRTaWduYWJsZUJhc2U2NCk7XG5cbiAgICAgIGlmIChicm9hZGNhc3RGb3JtYXQubWV0YWRhdGEpIHtcbiAgICAgICAgYnJvYWRjYXN0Rm9ybWF0Lm1ldGFkYXRhLnNob3VsZC5kZWVwRXF1YWwobWVzc2FnZS5nZXRNZXRhZGF0YSgpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHNob3VsZC5kZWVwRXF1YWwobWVzc2FnZS5nZXRNZXRhZGF0YSgpLCB7fSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGNvbnZlcnQgdG8gYnJvYWRjYXN0IHN0cmluZyBjb3JyZWN0bHknLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBtZXNzYWdlID0gbmV3IG1lc3NhZ2VDbGFzcyh7XG4gICAgICAgIGNvaW5Db25maWcsXG4gICAgICAgIHBheWxvYWQsXG4gICAgICAgIHNpZ25hdHVyZXM6IFtzaWduYXR1cmVdLFxuICAgICAgICBzaWduZXJzOiBbc2lnbmVyXSxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBicm9hZGNhc3RIZXggPSBhd2FpdCBtZXNzYWdlLnRvQnJvYWRjYXN0U3RyaW5nKCk7XG4gICAgICBjb25zdCBicm9hZGNhc3RTdHJpbmcgPSBCdWZmZXIuZnJvbShicm9hZGNhc3RIZXgsICdoZXgnKS50b1N0cmluZygpO1xuICAgICAgY29uc3QgcGFyc2VkQnJvYWRjYXN0ID0gSlNPTi5wYXJzZShicm9hZGNhc3RTdHJpbmcpO1xuICAgICAgY29uc3QgZXhwZWN0ZWRTZXJpYWxpemVkU2lnbmF0dXJlcyA9IHNlcmlhbGl6ZVNpZ25hdHVyZXMoW3NpZ25hdHVyZV0pO1xuXG4gICAgICBwYXJzZWRCcm9hZGNhc3QudHlwZS5zaG91bGQuZXF1YWwobWVzc2FnZVR5cGUpO1xuICAgICAgcGFyc2VkQnJvYWRjYXN0LnBheWxvYWQuc2hvdWxkLmVxdWFsKG1lc3NhZ2UuZ2V0UGF5bG9hZCgpKTtcbiAgICAgIHBhcnNlZEJyb2FkY2FzdC5zZXJpYWxpemVkU2lnbmF0dXJlcy5zaG91bGQuZGVlcEVxdWFsKGV4cGVjdGVkU2VyaWFsaXplZFNpZ25hdHVyZXMpO1xuICAgICAgcGFyc2VkQnJvYWRjYXN0LnNpZ25lcnMuc2hvdWxkLmRlZXBFcXVhbChbc2lnbmVyXSk7XG4gICAgICBwYXJzZWRCcm9hZGNhc3QubWV0YWRhdGEuc2hvdWxkLmRlZXBFcXVhbChtZXNzYWdlLmdldE1ldGFkYXRhKCkpO1xuICAgIH0pO1xuICB9KTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eip191Message.d.ts","sourceRoot":"","sources":["../../../../../test/unit/messages/eip191/eip191Message.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
require("should");
|
|
4
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
5
|
+
const fixtures_1 = require("./fixtures");
|
|
6
|
+
const src_1 = require("../../../../src");
|
|
7
|
+
const abstractEthMessagesTests_1 = require("../abstractEthMessagesTests");
|
|
8
|
+
describe('EIP191 Message', () => {
|
|
9
|
+
(0, abstractEthMessagesTests_1.testEthMessageSigning)({
|
|
10
|
+
messageType: sdk_core_1.MessageStandardType.EIP191,
|
|
11
|
+
messageClass: src_1.EIP191Message,
|
|
12
|
+
...fixtures_1.fixtures,
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWlwMTkxTWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9tZXNzYWdlcy9laXAxOTEvZWlwMTkxTWVzc2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGtCQUFnQjtBQUNoQixtREFBMkQ7QUFDM0QseUNBQXNDO0FBQ3RDLHlDQUFnRDtBQUNoRCwwRUFBb0U7QUFFcEUsUUFBUSxDQUFDLGdCQUFnQixFQUFFLEdBQUcsRUFBRTtJQUM5QixJQUFBLGdEQUFxQixFQUFDO1FBQ3BCLFdBQVcsRUFBRSw4QkFBbUIsQ0FBQyxNQUFNO1FBQ3ZDLFlBQVksRUFBRSxtQkFBYTtRQUMzQixHQUFHLG1CQUFRO0tBQ1osQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3Nob3VsZCc7XG5pbXBvcnQgeyBNZXNzYWdlU3RhbmRhcmRUeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgZml4dHVyZXMgfSBmcm9tICcuL2ZpeHR1cmVzJztcbmltcG9ydCB7IEVJUDE5MU1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zcmMnO1xuaW1wb3J0IHsgdGVzdEV0aE1lc3NhZ2VTaWduaW5nIH0gZnJvbSAnLi4vYWJzdHJhY3RFdGhNZXNzYWdlc1Rlc3RzJztcblxuZGVzY3JpYmUoJ0VJUDE5MSBNZXNzYWdlJywgKCkgPT4ge1xuICB0ZXN0RXRoTWVzc2FnZVNpZ25pbmcoe1xuICAgIG1lc3NhZ2VUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlLkVJUDE5MSxcbiAgICBtZXNzYWdlQ2xhc3M6IEVJUDE5MU1lc3NhZ2UsXG4gICAgLi4uZml4dHVyZXMsXG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eip191MessageBuilder.d.ts","sourceRoot":"","sources":["../../../../../test/unit/messages/eip191/eip191MessageBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
require("should");
|
|
4
|
+
const abstractEthMessageBuilderTests_1 = require("../abstractEthMessageBuilderTests");
|
|
5
|
+
const src_1 = require("../../../../src");
|
|
6
|
+
const fixtures_1 = require("./fixtures");
|
|
7
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
|
+
describe('EIP191 Message Builder', () => {
|
|
9
|
+
(0, abstractEthMessageBuilderTests_1.testEthMessageBuilding)({
|
|
10
|
+
messageType: sdk_core_1.MessageStandardType.EIP191,
|
|
11
|
+
messageBuilderClass: src_1.Eip191MessageBuilder,
|
|
12
|
+
messageClass: src_1.EIP191Message,
|
|
13
|
+
test: fixtures_1.fixtures.messageBuilderTest,
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWlwMTkxTWVzc2FnZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvbWVzc2FnZXMvZWlwMTkxL2VpcDE5MU1lc3NhZ2VCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsa0JBQWdCO0FBQ2hCLHNGQUEyRTtBQUMzRSx5Q0FBc0U7QUFDdEUseUNBQXNDO0FBQ3RDLG1EQUEyRDtBQUUzRCxRQUFRLENBQUMsd0JBQXdCLEVBQUUsR0FBRyxFQUFFO0lBQ3RDLElBQUEsdURBQXNCLEVBQUM7UUFDckIsV0FBVyxFQUFFLDhCQUFtQixDQUFDLE1BQU07UUFDdkMsbUJBQW1CLEVBQUUsMEJBQW9CO1FBQ3pDLFlBQVksRUFBRSxtQkFBYTtRQUMzQixJQUFJLEVBQUUsbUJBQVEsQ0FBQyxrQkFBa0I7S0FDbEMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3Nob3VsZCc7XG5pbXBvcnQgeyB0ZXN0RXRoTWVzc2FnZUJ1aWxkaW5nIH0gZnJvbSAnLi4vYWJzdHJhY3RFdGhNZXNzYWdlQnVpbGRlclRlc3RzJztcbmltcG9ydCB7IEVJUDE5MU1lc3NhZ2UsIEVpcDE5MU1lc3NhZ2VCdWlsZGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3JjJztcbmltcG9ydCB7IGZpeHR1cmVzIH0gZnJvbSAnLi9maXh0dXJlcyc7XG5pbXBvcnQgeyBNZXNzYWdlU3RhbmRhcmRUeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuXG5kZXNjcmliZSgnRUlQMTkxIE1lc3NhZ2UgQnVpbGRlcicsICgpID0+IHtcbiAgdGVzdEV0aE1lc3NhZ2VCdWlsZGluZyh7XG4gICAgbWVzc2FnZVR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUuRUlQMTkxLFxuICAgIG1lc3NhZ2VCdWlsZGVyQ2xhc3M6IEVpcDE5MU1lc3NhZ2VCdWlsZGVyLFxuICAgIG1lc3NhZ2VDbGFzczogRUlQMTkxTWVzc2FnZSxcbiAgICB0ZXN0OiBmaXh0dXJlcy5tZXNzYWdlQnVpbGRlclRlc3QsXG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
export declare const fixtures: {
|
|
2
|
+
tests: {
|
|
3
|
+
validMessage: {
|
|
4
|
+
input: {
|
|
5
|
+
payload: string;
|
|
6
|
+
metadata: {
|
|
7
|
+
encoding: string;
|
|
8
|
+
customData: string;
|
|
9
|
+
};
|
|
10
|
+
signature: {
|
|
11
|
+
publicKey: {
|
|
12
|
+
pub: string;
|
|
13
|
+
};
|
|
14
|
+
signature: Buffer<ArrayBuffer>;
|
|
15
|
+
};
|
|
16
|
+
signer: string;
|
|
17
|
+
};
|
|
18
|
+
expected: {
|
|
19
|
+
expectedSignableHex: string;
|
|
20
|
+
expectedSignableBase64: string;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
empty: {
|
|
24
|
+
input: {
|
|
25
|
+
payload: string;
|
|
26
|
+
};
|
|
27
|
+
expected: {
|
|
28
|
+
expectedSignableHex: string;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
specialChars: {
|
|
32
|
+
input: {
|
|
33
|
+
payload: string;
|
|
34
|
+
};
|
|
35
|
+
expected: {
|
|
36
|
+
expectedSignableHex: string;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
longMessage: {
|
|
40
|
+
input: {
|
|
41
|
+
payload: string;
|
|
42
|
+
};
|
|
43
|
+
expected: {
|
|
44
|
+
expectedSignableHex: string;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
midnight: {
|
|
48
|
+
input: {
|
|
49
|
+
payload: string;
|
|
50
|
+
metadata: {
|
|
51
|
+
encoding: string;
|
|
52
|
+
customData: string;
|
|
53
|
+
};
|
|
54
|
+
signature: {
|
|
55
|
+
publicKey: {
|
|
56
|
+
pub: string;
|
|
57
|
+
};
|
|
58
|
+
signature: Buffer<ArrayBuffer>;
|
|
59
|
+
};
|
|
60
|
+
signer: string;
|
|
61
|
+
};
|
|
62
|
+
expected: {
|
|
63
|
+
expectedSignableHex: string;
|
|
64
|
+
};
|
|
65
|
+
broadcastHex: string;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
signedTest: {
|
|
69
|
+
input: {
|
|
70
|
+
payload: string;
|
|
71
|
+
metadata: {
|
|
72
|
+
encoding: string;
|
|
73
|
+
customData: string;
|
|
74
|
+
};
|
|
75
|
+
signature: {
|
|
76
|
+
publicKey: {
|
|
77
|
+
pub: string;
|
|
78
|
+
};
|
|
79
|
+
signature: Buffer<ArrayBuffer>;
|
|
80
|
+
};
|
|
81
|
+
signer: string;
|
|
82
|
+
};
|
|
83
|
+
expected: {
|
|
84
|
+
expectedSignableHex: string;
|
|
85
|
+
expectedSignableBase64: string;
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
messageBuilderTest: {
|
|
89
|
+
input: {
|
|
90
|
+
payload: string;
|
|
91
|
+
metadata: {
|
|
92
|
+
encoding: string;
|
|
93
|
+
customData: string;
|
|
94
|
+
};
|
|
95
|
+
signature: {
|
|
96
|
+
publicKey: {
|
|
97
|
+
pub: string;
|
|
98
|
+
};
|
|
99
|
+
signature: Buffer<ArrayBuffer>;
|
|
100
|
+
};
|
|
101
|
+
signer: string;
|
|
102
|
+
};
|
|
103
|
+
expected: {
|
|
104
|
+
expectedSignableHex: string;
|
|
105
|
+
};
|
|
106
|
+
broadcastHex: string;
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
//# sourceMappingURL=fixtures.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../../test/unit/messages/eip191/fixtures.ts"],"names":[],"mappings":"AAuEA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIpB,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fixtures = void 0;
|
|
4
|
+
const validMessage = {
|
|
5
|
+
input: {
|
|
6
|
+
payload: 'Hello, world!',
|
|
7
|
+
metadata: {
|
|
8
|
+
encoding: 'utf8',
|
|
9
|
+
customData: 'test data',
|
|
10
|
+
},
|
|
11
|
+
signature: {
|
|
12
|
+
publicKey: { pub: '0x7E5F4552091A69125d5DfCb7b8C2659029395Bdf' },
|
|
13
|
+
signature: Buffer.from('5d99b6f7f6d1f73d1a26497f2b1c89b24c0993913f86e9a2d02cd69887d9c94f3c880358579d811b21dd1b7fd9bb01c1d81d10e69f0384e675c32b39643be8921b', 'hex'),
|
|
14
|
+
},
|
|
15
|
+
signer: '0x7E5F4552091A69125d5DfCb7b8C2659029395Bdf',
|
|
16
|
+
},
|
|
17
|
+
expected: {
|
|
18
|
+
expectedSignableHex: '19457468657265756d205369676e6564204d6573736167653a0a313348656c6c6f2c20776f726c6421',
|
|
19
|
+
expectedSignableBase64: 'MTk0NTc0Njg2NTcyNjU3NTZkMjA1MzY5Njc2ZTY1NjQyMDRkNjU3MzczNjE2NzY1M2EwYTMxMzM0ODY1NmM2YzZmMmMyMDc3NmY3MjZjNjQyMQ==',
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
const empty = {
|
|
23
|
+
input: { payload: '' },
|
|
24
|
+
expected: { expectedSignableHex: '19457468657265756d205369676e6564204d6573736167653a0a30' },
|
|
25
|
+
};
|
|
26
|
+
const specialChars = {
|
|
27
|
+
input: { payload: '!@#$%^&*()' },
|
|
28
|
+
expected: { expectedSignableHex: '19457468657265756d205369676e6564204d6573736167653a0a313021402324255e262a2829' },
|
|
29
|
+
};
|
|
30
|
+
const longMessage = {
|
|
31
|
+
input: {
|
|
32
|
+
payload: 'This is a very long message that contains multiple lines and special characters. ' +
|
|
33
|
+
'It is designed to test the EIP-191 message format with a more complex payload.',
|
|
34
|
+
},
|
|
35
|
+
expected: {
|
|
36
|
+
expectedSignableHex: '19457468657265756d205369676e6564204d6573736167653a0a3135395468697320697320612076657279206c6f6e67206d657373616765207468617420636f6e7461696e73206d756c7469706c65206c696e657320616e64207370656369616c20636861726163746572732e2049742069732064657369676e656420746f207465737420746865204549502d313931206d65737361676520666f726d617420776974682061206d6f726520636f6d706c6578207061796c6f61642e',
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
const midnight = {
|
|
40
|
+
input: {
|
|
41
|
+
payload: 'STAR 1000 to addr_test1qrq96h0rjht2u6n3fgwmy90x7gml8hduewt2nmr2u6cmkpwqt4w789wk4e48zjsakg27du3h70wmejuk48kx4e43hvzsufshv6 ' +
|
|
42
|
+
'31a6bab50a84b8439adcfb786bb2020f6807e6e8fda629b424110fc7bb1c6b8b',
|
|
43
|
+
metadata: {
|
|
44
|
+
encoding: 'utf8',
|
|
45
|
+
customData: 'test data',
|
|
46
|
+
},
|
|
47
|
+
signature: {
|
|
48
|
+
publicKey: { pub: '' },
|
|
49
|
+
signature: Buffer.from('b7c967ad92b3bab755970b02e597c1fcad4a537426299f69e3aa968f5532583d291451305cd9ae3b6cc711d37577bfbe00d552ca867c893c3becfb1375bdcaf31c', 'hex'),
|
|
50
|
+
},
|
|
51
|
+
signer: '0xfa0a7f4a0d9e544c57aeca4e32b3b1048b633cdf',
|
|
52
|
+
},
|
|
53
|
+
expected: {
|
|
54
|
+
expectedSignableHex: '19457468657265756d205369676e6564204d6573736167653a0a31383653544152203130303020746f20616464725f746573743171727139366830726a68743275366e336667776d7939307837676d6c38686475657774326e6d72327536636d6b707771743477373839776b346534387a6a73616b673237647533683730776d656a756b34386b783465343368767a737566736876362033316136626162353061383462383433396164636662373836626232303230663638303765366538666461363239623432343131306663376262316336623862',
|
|
55
|
+
},
|
|
56
|
+
broadcastHex: '7b2274797065223a22454950313931222c227061796c6f6164223a2253544152203130303020746f20616464725f746573743171727139366830726a68743275366e336667776d7939307837676d6c38686475657774326e6d72327536636d6b707771743477373839776b346534387a6a73616b673237647533683730776d656a756b34386b783465343368767a737566736876362033316136626162353061383462383433396164636662373836626232303230663638303765366538666461363239623432343131306663376262316336623862222c2273657269616c697a65645369676e617475726573223a5b7b227075626c69634b6579223a22222c227369676e6174757265223a2274386c6e725a4b7a757264566c777343355a66422f4b314b5533516d4b5a3970343671576a3155795744307046464577584e6d754f327a4845644e3164372b2b414e5653796f5a3869547737375073546462334b3878773d227d5d2c227369676e657273223a5b22307866613061376634613064396535343463353761656361346533326233623130343862363333636466225d2c226d65746164617461223a7b22656e636f64696e67223a2275746638227d2c227369676e61626c655061796c6f6164223a224d546b304e5463304e6a67324e5463794e6a55334e545a6b4d6a41314d7a59354e6a63325a5459314e6a51794d44526b4e6a55334d7a637a4e6a45324e7a59314d32457759544d784d7a677a4e6a557a4e5451304d5455794d6a417a4d544d774d7a417a4d4449774e7a51325a6a49774e6a45324e4459304e7a49315a6a63304e6a55334d7a63304d7a45334d5463794e7a457a4f544d324e6a677a4d4463794e6d45324f4463304d7a49334e544d324e6d557a4d7a59324e6a63334e7a5a6b4e7a6b7a4f544d774e7a677a4e7a59334e6d5132597a4d344e6a67324e4463314e6a55334e7a63304d7a49325a545a6b4e7a497a4d6a63314d7a59324d7a5a6b4e6d49334d4463334e7a45334e444d304e7a637a4e7a4d344d7a6b334e7a5a694d7a51324e544d304d7a673359545a684e7a4d324d545a694e6a637a4d6a4d334e6a51334e544d7a4e6a677a4e7a4d774e7a63325a4459314e6d45334e545a694d7a517a4f445a694e7a677a4e4459314d7a517a4d7a59344e7a59335954637a4e7a55324e6a637a4e6a67334e6a4d324d6a417a4d7a4d784e6a457a4e6a59794e6a45324d6a4d314d7a41324d544d344d7a51324d6a4d344d7a517a4d7a4d354e6a45324e44597a4e6a59324d6a4d334d7a677a4e6a59794e6a497a4d6a4d774d7a497a4d4459324d7a597a4f444d774d7a63324e544d324e6a557a4f4459324e6a51324d544d324d7a497a4f5459794d7a517a4d6a4d304d7a457a4d544d774e6a59324d7a4d334e6a49324d6a4d784e6a4d7a4e6a59794d7a67324d673d3d227d',
|
|
57
|
+
};
|
|
58
|
+
exports.fixtures = {
|
|
59
|
+
tests: { validMessage, empty, specialChars, longMessage, midnight },
|
|
60
|
+
signedTest: validMessage,
|
|
61
|
+
messageBuilderTest: midnight,
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvbWVzc2FnZXMvZWlwMTkxL2ZpeHR1cmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQU0sWUFBWSxHQUFHO0lBQ25CLEtBQUssRUFBRTtRQUNMLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLFFBQVEsRUFBRTtZQUNSLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFVBQVUsRUFBRSxXQUFXO1NBQ3hCO1FBQ0QsU0FBUyxFQUFFO1lBQ1QsU0FBUyxFQUFFLEVBQUUsR0FBRyxFQUFFLDRDQUE0QyxFQUFFO1lBQ2hFLFNBQVMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUNwQixvSUFBb0ksRUFDcEksS0FBSyxDQUNOO1NBQ0Y7UUFDRCxNQUFNLEVBQUUsNENBQTRDO0tBQ3JEO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsbUJBQW1CLEVBQUUsb0ZBQW9GO1FBQ3pHLHNCQUFzQixFQUNwQixrSEFBa0g7S0FDckg7Q0FDRixDQUFDO0FBRUYsTUFBTSxLQUFLLEdBQUc7SUFDWixLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO0lBQ3RCLFFBQVEsRUFBRSxFQUFFLG1CQUFtQixFQUFFLHdEQUF3RCxFQUFFO0NBQzVGLENBQUM7QUFFRixNQUFNLFlBQVksR0FBRztJQUNuQixLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFO0lBQ2hDLFFBQVEsRUFBRSxFQUFFLG1CQUFtQixFQUFFLDhFQUE4RSxFQUFFO0NBQ2xILENBQUM7QUFFRixNQUFNLFdBQVcsR0FBRztJQUNsQixLQUFLLEVBQUU7UUFDTCxPQUFPLEVBQ0wsbUZBQW1GO1lBQ25GLGdGQUFnRjtLQUNuRjtJQUNELFFBQVEsRUFBRTtRQUNSLG1CQUFtQixFQUNqQiwwWEFBMFg7S0FDN1g7Q0FDRixDQUFDO0FBRUYsTUFBTSxRQUFRLEdBQUc7SUFDZixLQUFLLEVBQUU7UUFDTCxPQUFPLEVBQ0wsNEhBQTRIO1lBQzVILGtFQUFrRTtRQUNwRSxRQUFRLEVBQUU7WUFDUixRQUFRLEVBQUUsTUFBTTtZQUNoQixVQUFVLEVBQUUsV0FBVztTQUN4QjtRQUNELFNBQVMsRUFBRTtZQUNULFNBQVMsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUU7WUFDdEIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQ3BCLG9JQUFvSSxFQUNwSSxLQUFLLENBQ047U0FDRjtRQUNELE1BQU0sRUFBRSw0Q0FBNEM7S0FDckQ7SUFDRCxRQUFRLEVBQUU7UUFDUixtQkFBbUIsRUFDakIsZ2JBQWdiO0tBQ25iO0lBQ0QsWUFBWSxFQUNWLDhpRUFBOGlFO0NBQ2pqRSxDQUFDO0FBRVcsUUFBQSxRQUFRLEdBQUc7SUFDdEIsS0FBSyxFQUFFLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRTtJQUNuRSxVQUFVLEVBQUUsWUFBWTtJQUN4QixrQkFBa0IsRUFBRSxRQUFRO0NBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCB2YWxpZE1lc3NhZ2UgPSB7XG4gIGlucHV0OiB7XG4gICAgcGF5bG9hZDogJ0hlbGxvLCB3b3JsZCEnLFxuICAgIG1ldGFkYXRhOiB7XG4gICAgICBlbmNvZGluZzogJ3V0ZjgnLFxuICAgICAgY3VzdG9tRGF0YTogJ3Rlc3QgZGF0YScsXG4gICAgfSxcbiAgICBzaWduYXR1cmU6IHtcbiAgICAgIHB1YmxpY0tleTogeyBwdWI6ICcweDdFNUY0NTUyMDkxQTY5MTI1ZDVEZkNiN2I4QzI2NTkwMjkzOTVCZGYnIH0sXG4gICAgICBzaWduYXR1cmU6IEJ1ZmZlci5mcm9tKFxuICAgICAgICAnNWQ5OWI2ZjdmNmQxZjczZDFhMjY0OTdmMmIxYzg5YjI0YzA5OTM5MTNmODZlOWEyZDAyY2Q2OTg4N2Q5Yzk0ZjNjODgwMzU4NTc5ZDgxMWIyMWRkMWI3ZmQ5YmIwMWMxZDgxZDEwZTY5ZjAzODRlNjc1YzMyYjM5NjQzYmU4OTIxYicsXG4gICAgICAgICdoZXgnXG4gICAgICApLFxuICAgIH0sXG4gICAgc2lnbmVyOiAnMHg3RTVGNDU1MjA5MUE2OTEyNWQ1RGZDYjdiOEMyNjU5MDI5Mzk1QmRmJyxcbiAgfSxcbiAgZXhwZWN0ZWQ6IHtcbiAgICBleHBlY3RlZFNpZ25hYmxlSGV4OiAnMTk0NTc0Njg2NTcyNjU3NTZkMjA1MzY5Njc2ZTY1NjQyMDRkNjU3MzczNjE2NzY1M2EwYTMxMzM0ODY1NmM2YzZmMmMyMDc3NmY3MjZjNjQyMScsXG4gICAgZXhwZWN0ZWRTaWduYWJsZUJhc2U2NDpcbiAgICAgICdNVGswTlRjME5qZzJOVGN5TmpVM05UWmtNakExTXpZNU5qYzJaVFkxTmpReU1EUmtOalUzTXpjek5qRTJOelkxTTJFd1lUTXhNek0wT0RZMU5tTTJZelptTW1NeU1EYzNObVkzTWpaak5qUXlNUT09JyxcbiAgfSxcbn07XG5cbmNvbnN0IGVtcHR5ID0ge1xuICBpbnB1dDogeyBwYXlsb2FkOiAnJyB9LFxuICBleHBlY3RlZDogeyBleHBlY3RlZFNpZ25hYmxlSGV4OiAnMTk0NTc0Njg2NTcyNjU3NTZkMjA1MzY5Njc2ZTY1NjQyMDRkNjU3MzczNjE2NzY1M2EwYTMwJyB9LFxufTtcblxuY29uc3Qgc3BlY2lhbENoYXJzID0ge1xuICBpbnB1dDogeyBwYXlsb2FkOiAnIUAjJCVeJiooKScgfSxcbiAgZXhwZWN0ZWQ6IHsgZXhwZWN0ZWRTaWduYWJsZUhleDogJzE5NDU3NDY4NjU3MjY1NzU2ZDIwNTM2OTY3NmU2NTY0MjA0ZDY1NzM3MzYxNjc2NTNhMGEzMTMwMjE0MDIzMjQyNTVlMjYyYTI4MjknIH0sXG59O1xuXG5jb25zdCBsb25nTWVzc2FnZSA9IHtcbiAgaW5wdXQ6IHtcbiAgICBwYXlsb2FkOlxuICAgICAgJ1RoaXMgaXMgYSB2ZXJ5IGxvbmcgbWVzc2FnZSB0aGF0IGNvbnRhaW5zIG11bHRpcGxlIGxpbmVzIGFuZCBzcGVjaWFsIGNoYXJhY3RlcnMuICcgK1xuICAgICAgJ0l0IGlzIGRlc2lnbmVkIHRvIHRlc3QgdGhlIEVJUC0xOTEgbWVzc2FnZSBmb3JtYXQgd2l0aCBhIG1vcmUgY29tcGxleCBwYXlsb2FkLicsXG4gIH0sXG4gIGV4cGVjdGVkOiB7XG4gICAgZXhwZWN0ZWRTaWduYWJsZUhleDpcbiAgICAgICcxOTQ1NzQ2ODY1NzI2NTc1NmQyMDUzNjk2NzZlNjU2NDIwNGQ2NTczNzM2MTY3NjUzYTBhMzEzNTM5NTQ2ODY5NzMyMDY5NzMyMDYxMjA3NjY1NzI3OTIwNmM2ZjZlNjcyMDZkNjU3MzczNjE2NzY1MjA3NDY4NjE3NDIwNjM2ZjZlNzQ2MTY5NmU3MzIwNmQ3NTZjNzQ2OTcwNmM2NTIwNmM2OTZlNjU3MzIwNjE2ZTY0MjA3MzcwNjU2MzY5NjE2YzIwNjM2ODYxNzI2MTYzNzQ2NTcyNzMyZTIwNDk3NDIwNjk3MzIwNjQ2NTczNjk2NzZlNjU2NDIwNzQ2ZjIwNzQ2NTczNzQyMDc0Njg2NTIwNDU0OTUwMmQzMTM5MzEyMDZkNjU3MzczNjE2NzY1MjA2NjZmNzI2ZDYxNzQyMDc3Njk3NDY4MjA2MTIwNmQ2ZjcyNjUyMDYzNmY2ZDcwNmM2NTc4MjA3MDYxNzk2YzZmNjE2NDJlJyxcbiAgfSxcbn07XG5cbmNvbnN0IG1pZG5pZ2h0ID0ge1xuICBpbnB1dDoge1xuICAgIHBheWxvYWQ6XG4gICAgICAnU1RBUiAxMDAwIHRvIGFkZHJfdGVzdDFxcnE5NmgwcmpodDJ1Nm4zZmd3bXk5MHg3Z21sOGhkdWV3dDJubXIydTZjbWtwd3F0NHc3ODl3azRlNDh6anNha2cyN2R1M2g3MHdtZWp1azQ4a3g0ZTQzaHZ6c3Vmc2h2NiAnICtcbiAgICAgICczMWE2YmFiNTBhODRiODQzOWFkY2ZiNzg2YmIyMDIwZjY4MDdlNmU4ZmRhNjI5YjQyNDExMGZjN2JiMWM2YjhiJyxcbiAgICBtZXRhZGF0YToge1xuICAgICAgZW5jb2Rpbmc6ICd1dGY4JyxcbiAgICAgIGN1c3RvbURhdGE6ICd0ZXN0IGRhdGEnLFxuICAgIH0sXG4gICAgc2lnbmF0dXJlOiB7XG4gICAgICBwdWJsaWNLZXk6IHsgcHViOiAnJyB9LFxuICAgICAgc2lnbmF0dXJlOiBCdWZmZXIuZnJvbShcbiAgICAgICAgJ2I3Yzk2N2FkOTJiM2JhYjc1NTk3MGIwMmU1OTdjMWZjYWQ0YTUzNzQyNjI5OWY2OWUzYWE5NjhmNTUzMjU4M2QyOTE0NTEzMDVjZDlhZTNiNmNjNzExZDM3NTc3YmZiZTAwZDU1MmNhODY3Yzg5M2MzYmVjZmIxMzc1YmRjYWYzMWMnLFxuICAgICAgICAnaGV4J1xuICAgICAgKSxcbiAgICB9LFxuICAgIHNpZ25lcjogJzB4ZmEwYTdmNGEwZDllNTQ0YzU3YWVjYTRlMzJiM2IxMDQ4YjYzM2NkZicsXG4gIH0sXG4gIGV4cGVjdGVkOiB7XG4gICAgZXhwZWN0ZWRTaWduYWJsZUhleDpcbiAgICAgICcxOTQ1NzQ2ODY1NzI2NTc1NmQyMDUzNjk2NzZlNjU2NDIwNGQ2NTczNzM2MTY3NjUzYTBhMzEzODM2NTM1NDQxNTIyMDMxMzAzMDMwMjA3NDZmMjA2MTY0NjQ3MjVmNzQ2NTczNzQzMTcxNzI3MTM5MzY2ODMwNzI2YTY4NzQzMjc1MzY2ZTMzNjY2Nzc3NmQ3OTM5MzA3ODM3Njc2ZDZjMzg2ODY0NzU2NTc3NzQzMjZlNmQ3MjMyNzUzNjYzNmQ2YjcwNzc3MTc0MzQ3NzM3MzgzOTc3NmIzNDY1MzQzODdhNmE3MzYxNmI2NzMyMzc2NDc1MzM2ODM3MzA3NzZkNjU2YTc1NmIzNDM4NmI3ODM0NjUzNDMzNjg3NjdhNzM3NTY2NzM2ODc2MzYyMDMzMzE2MTM2NjI2MTYyMzUzMDYxMzgzNDYyMzgzNDMzMzk2MTY0NjM2NjYyMzczODM2NjI2MjMyMzAzMjMwNjYzNjM4MzAzNzY1MzY2NTM4NjY2NDYxMzYzMjM5NjIzNDMyMzQzMTMxMzA2NjYzMzc2MjYyMzE2MzM2NjIzODYyJyxcbiAgfSxcbiAgYnJvYWRjYXN0SGV4OlxuICAgICc3YjIyNzQ3OTcwNjUyMjNhMjI0NTQ5NTAzMTM5MzEyMjJjMjI3MDYxNzk2YzZmNjE2NDIyM2EyMjUzNTQ0MTUyMjAzMTMwMzAzMDIwNzQ2ZjIwNjE2NDY0NzI1Zjc0NjU3Mzc0MzE3MTcyNzEzOTM2NjgzMDcyNmE2ODc0MzI3NTM2NmUzMzY2Njc3NzZkNzkzOTMwNzgzNzY3NmQ2YzM4Njg2NDc1NjU3Nzc0MzI2ZTZkNzIzMjc1MzY2MzZkNmI3MDc3NzE3NDM0NzczNzM4Mzk3NzZiMzQ2NTM0Mzg3YTZhNzM2MTZiNjczMjM3NjQ3NTMzNjgzNzMwNzc2ZDY1NmE3NTZiMzQzODZiNzgzNDY1MzQzMzY4NzY3YTczNzU2NjczNjg3NjM2MjAzMzMxNjEzNjYyNjE2MjM1MzA2MTM4MzQ2MjM4MzQzMzM5NjE2NDYzNjY2MjM3MzgzNjYyNjIzMjMwMzIzMDY2MzYzODMwMzc2NTM2NjUzODY2NjQ2MTM2MzIzOTYyMzQzMjM0MzEzMTMwNjY2MzM3NjI2MjMxNjMzNjYyMzg2MjIyMmMyMjczNjU3MjY5NjE2YzY5N2E2NTY0NTM2OTY3NmU2MTc0NzU3MjY1NzMyMjNhNWI3YjIyNzA3NTYyNmM2OTYzNGI2NTc5MjIzYTIyMjIyYzIyNzM2OTY3NmU2MTc0NzU3MjY1MjIzYTIyNzQzODZjNmU3MjVhNGI3YTc1NzI2NDU2NmM3NzczNDMzNTVhNjY0MjJmNGIzMTRiNTUzMzUxNmQ0YjVhMzk3MDM0MzY3MTU3NmEzMTU1Nzk1NzQ0MzA3MDQ2NDY0NTc3NTg0ZTZkNzU0ZjMyN2E0ODQ1NjQ0ZTMxNjQzNzJiMmI0MTRlNTY1Mzc5NmY1YTM4Njk1NDc3MzczNzUwNzM1NDY0NjIzMzRiMzg3ODc3M2QyMjdkNWQyYzIyNzM2OTY3NmU2NTcyNzMyMjNhNWIyMjMwNzg2NjYxMzA2MTM3NjYzNDYxMzA2NDM5NjUzNTM0MzQ2MzM1Mzc2MTY1NjM2MTM0NjUzMzMyNjIzMzYyMzEzMDM0Mzg2MjM2MzMzMzYzNjQ2NjIyNWQyYzIyNmQ2NTc0NjE2NDYxNzQ2MTIyM2E3YjIyNjU2ZTYzNmY2NDY5NmU2NzIyM2EyMjc1NzQ2NjM4MjI3ZDJjMjI3MzY5Njc2ZTYxNjI2YzY1NTA2MTc5NmM2ZjYxNjQyMjNhMjI0ZDU0NmIzMDRlNTQ2MzMwNGU2YTY3MzI0ZTU0NjM3OTRlNmE1NTMzNGU1NDVhNmI0ZDZhNDEzMTRkN2E1OTM1NGU2YTYzMzI1YTU0NTkzMTRlNmE1MTc5NGQ0NDUyNmI0ZTZhNTUzMzRkN2E2MzdhNGU2YTQ1MzI0ZTdhNTkzMTRkMzI0NTc3NTk1NDRkNzg0ZDdhNjc3YTRlNmE1NTdhNGU1NDUxMzA0ZDU0NTU3OTRkNmE0MTdhNGQ1NDRkNzc0ZDdhNDE3YTRkNDQ0OTc3NGU3YTUxMzI1YTZhNDk3NzRlNmE0NTMyNGU0NDU5MzA0ZTdhNDkzMTVhNmE2MzMwNGU2YTU1MzM0ZDdhNjMzMDRkN2E0NTMzNGQ1NDYzNzk0ZTdhNDU3YTRmNTQ0ZDMyNGU2YTY3N2E0ZDQ0NjM3OTRlNmQ0NTMyNGY0NDYzMzA0ZDdhNDkzMzRlNTQ0ZDMyNGU2ZDU1N2E0ZDdhNTkzMjRlNmE2MzMzNGU3YTVhNmI0ZTdhNmI3YTRmNTQ0ZDc3NGU3YTY3N2E0ZTdhNTkzMzRlNmQ1MTMyNTk3YTRkMzQ0ZTZhNjczMjRlNDQ2MzMxNGU2YTU1MzM0ZTdhNjMzMDRkN2E0OTMyNWE1NDVhNmI0ZTdhNDk3YTRkNmE2MzMxNGQ3YTU5MzI0ZDdhNWE2YjRlNmQ0OTMzNGQ0NDYzMzM0ZTdhNDUzMzRlNDQ0ZDMwNGU3YTYzN2E0ZTdhNGQzNDRkN2E2YjMzNGU3YTVhNjk0ZDdhNTEzMjRlNTQ0ZDMwNGQ3YTY3MzM1OTU0NWE2ODRlN2E0ZDMyNGQ1NDVhNjk0ZTZhNjM3YTRkNmE0ZDMzNGU2YTUxMzM0ZTU0NGQ3YTRlNmE2NzdhNGU3YTRkNzc0ZTdhNjMzMjVhNDQ1OTMxNGU2ZDQ1MzM0ZTU0NWE2OTRkN2E1MTdhNGY0NDVhNjk0ZTdhNjc3YTRlNDQ1OTMxNGQ3YTUxN2E0ZDdhNTkzNDRlN2E1OTMzNTk1NDYzN2E0ZTdhNTUzMjRlNmE2MzdhNGU2YTY3MzM0ZTZhNGQzMjRkNmE0MTdhNGQ3YTRkNzg0ZTZhNDU3YTRlNmE1OTc5NGU2YTQ1MzI0ZDZhNGQzMTRkN2E0MTMyNGQ1NDRkMzQ0ZDdhNTEzMjRkNmE0ZDM0NGQ3YTUxN2E0ZDdhNGQzNTRlNmE0NTMyNGU0NDU5N2E0ZTZhNTkzMjRkNmE0ZDMzNGQ3YTY3N2E0ZTZhNTk3OTRlNmE0OTdhNGQ2YTRkNzc0ZDdhNDk3YTRkNDQ1OTMyNGQ3YTU5N2E0ZjQ0NGQ3NzRkN2E2MzMyNGU1NDRkMzI0ZTZhNTU3YTRmNDQ1OTMyNGU2YTUxMzI0ZDU0NGQzMjRkN2E0OTdhNGY1NDU5Nzk0ZDdhNTE3YTRkNmE0ZDMwNGQ3YTQ1N2E0ZDU0NGQ3NzRlNmE1OTMyNGQ3YTRkMzM0ZTZhNDkzMjRkNmE0ZDc4NGU2YTRkN2E0ZTZhNTk3OTRkN2E2NzMyNGQ2NzNkM2QyMjdkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBmaXh0dXJlcyA9IHtcbiAgdGVzdHM6IHsgdmFsaWRNZXNzYWdlLCBlbXB0eSwgc3BlY2lhbENoYXJzLCBsb25nTWVzc2FnZSwgbWlkbmlnaHQgfSxcbiAgc2lnbmVkVGVzdDogdmFsaWRNZXNzYWdlLFxuICBtZXNzYWdlQnVpbGRlclRlc3Q6IG1pZG5pZ2h0LFxufTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eip712Message.d.ts","sourceRoot":"","sources":["../../../../../test/unit/messages/eip712/eip712Message.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
require("should");
|
|
4
|
+
const src_1 = require("../../../../src/");
|
|
5
|
+
const fixtures_1 = require("./fixtures");
|
|
6
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
7
|
+
const abstractEthMessagesTests_1 = require("../abstractEthMessagesTests");
|
|
8
|
+
describe('EIP712 Message', () => {
|
|
9
|
+
(0, abstractEthMessagesTests_1.testEthMessageSigning)({
|
|
10
|
+
messageType: sdk_core_1.MessageStandardType.EIP712,
|
|
11
|
+
messageClass: src_1.EIP712Message,
|
|
12
|
+
...fixtures_1.fixtures,
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWlwNzEyTWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Rlc3QvdW5pdC9tZXNzYWdlcy9laXA3MTIvZWlwNzEyTWVzc2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGtCQUFnQjtBQUNoQiwwQ0FBaUQ7QUFDakQseUNBQXNDO0FBQ3RDLG1EQUEyRDtBQUMzRCwwRUFBb0U7QUFFcEUsUUFBUSxDQUFDLGdCQUFnQixFQUFFLEdBQUcsRUFBRTtJQUM5QixJQUFBLGdEQUFxQixFQUFDO1FBQ3BCLFdBQVcsRUFBRSw4QkFBbUIsQ0FBQyxNQUFNO1FBQ3ZDLFlBQVksRUFBRSxtQkFBYTtRQUMzQixHQUFHLG1CQUFRO0tBQ1osQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3Nob3VsZCc7XG5pbXBvcnQgeyBFSVA3MTJNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3JjLyc7XG5pbXBvcnQgeyBmaXh0dXJlcyB9IGZyb20gJy4vZml4dHVyZXMnO1xuaW1wb3J0IHsgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IHRlc3RFdGhNZXNzYWdlU2lnbmluZyB9IGZyb20gJy4uL2Fic3RyYWN0RXRoTWVzc2FnZXNUZXN0cyc7XG5cbmRlc2NyaWJlKCdFSVA3MTIgTWVzc2FnZScsICgpID0+IHtcbiAgdGVzdEV0aE1lc3NhZ2VTaWduaW5nKHtcbiAgICBtZXNzYWdlVHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZS5FSVA3MTIsXG4gICAgbWVzc2FnZUNsYXNzOiBFSVA3MTJNZXNzYWdlLFxuICAgIC4uLmZpeHR1cmVzLFxuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eip712MessageBuilder.d.ts","sourceRoot":"","sources":["../../../../../test/unit/messages/eip712/eip712MessageBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
require("should");
|
|
4
|
+
const src_1 = require("../../../../src");
|
|
5
|
+
const fixtures_1 = require("./fixtures");
|
|
6
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
7
|
+
const abstractEthMessageBuilderTests_1 = require("../abstractEthMessageBuilderTests");
|
|
8
|
+
describe('EIP712 Message Builder', () => {
|
|
9
|
+
(0, abstractEthMessageBuilderTests_1.testEthMessageBuilding)({
|
|
10
|
+
messageType: sdk_core_1.MessageStandardType.EIP712,
|
|
11
|
+
messageBuilderClass: src_1.Eip712MessageBuilder,
|
|
12
|
+
messageClass: src_1.EIP712Message,
|
|
13
|
+
test: fixtures_1.fixtures.messageBuilderTest,
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWlwNzEyTWVzc2FnZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvbWVzc2FnZXMvZWlwNzEyL2VpcDcxMk1lc3NhZ2VCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsa0JBQWdCO0FBQ2hCLHlDQUFzRTtBQUN0RSx5Q0FBc0M7QUFDdEMsbURBQTJEO0FBQzNELHNGQUEyRTtBQUUzRSxRQUFRLENBQUMsd0JBQXdCLEVBQUUsR0FBRyxFQUFFO0lBQ3RDLElBQUEsdURBQXNCLEVBQUM7UUFDckIsV0FBVyxFQUFFLDhCQUFtQixDQUFDLE1BQU07UUFDdkMsbUJBQW1CLEVBQUUsMEJBQW9CO1FBQ3pDLFlBQVksRUFBRSxtQkFBYTtRQUMzQixJQUFJLEVBQUUsbUJBQVEsQ0FBQyxrQkFBa0I7S0FDbEMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3Nob3VsZCc7XG5pbXBvcnQgeyBFSVA3MTJNZXNzYWdlLCBFaXA3MTJNZXNzYWdlQnVpbGRlciB9IGZyb20gJy4uLy4uLy4uLy4uL3NyYyc7XG5pbXBvcnQgeyBmaXh0dXJlcyB9IGZyb20gJy4vZml4dHVyZXMnO1xuaW1wb3J0IHsgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IHRlc3RFdGhNZXNzYWdlQnVpbGRpbmcgfSBmcm9tICcuLi9hYnN0cmFjdEV0aE1lc3NhZ2VCdWlsZGVyVGVzdHMnO1xuXG5kZXNjcmliZSgnRUlQNzEyIE1lc3NhZ2UgQnVpbGRlcicsICgpID0+IHtcbiAgdGVzdEV0aE1lc3NhZ2VCdWlsZGluZyh7XG4gICAgbWVzc2FnZVR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUuRUlQNzEyLFxuICAgIG1lc3NhZ2VCdWlsZGVyQ2xhc3M6IEVpcDcxMk1lc3NhZ2VCdWlsZGVyLFxuICAgIG1lc3NhZ2VDbGFzczogRUlQNzEyTWVzc2FnZSxcbiAgICB0ZXN0OiBmaXh0dXJlcy5tZXNzYWdlQnVpbGRlclRlc3QsXG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export declare const fixtures: {
|
|
2
|
+
tests: {
|
|
3
|
+
simple: {
|
|
4
|
+
input: {
|
|
5
|
+
payload: string;
|
|
6
|
+
metadata: {
|
|
7
|
+
encoding: string;
|
|
8
|
+
customData: string;
|
|
9
|
+
};
|
|
10
|
+
signature: {
|
|
11
|
+
publicKey: {
|
|
12
|
+
pub: string;
|
|
13
|
+
};
|
|
14
|
+
signature: Buffer<ArrayBuffer>;
|
|
15
|
+
};
|
|
16
|
+
signer: string;
|
|
17
|
+
};
|
|
18
|
+
expected: {
|
|
19
|
+
expectedSignableHex: string;
|
|
20
|
+
expectedSignableBase64: string;
|
|
21
|
+
};
|
|
22
|
+
broadcastHex: string;
|
|
23
|
+
};
|
|
24
|
+
recursive: {
|
|
25
|
+
input: {
|
|
26
|
+
payload: string;
|
|
27
|
+
};
|
|
28
|
+
expected: {
|
|
29
|
+
expectedSignableHex: string;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
signedTest: {
|
|
34
|
+
input: {
|
|
35
|
+
payload: string;
|
|
36
|
+
metadata: {
|
|
37
|
+
encoding: string;
|
|
38
|
+
customData: string;
|
|
39
|
+
};
|
|
40
|
+
signature: {
|
|
41
|
+
publicKey: {
|
|
42
|
+
pub: string;
|
|
43
|
+
};
|
|
44
|
+
signature: Buffer<ArrayBuffer>;
|
|
45
|
+
};
|
|
46
|
+
signer: string;
|
|
47
|
+
};
|
|
48
|
+
expected: {
|
|
49
|
+
expectedSignableHex: string;
|
|
50
|
+
expectedSignableBase64: string;
|
|
51
|
+
};
|
|
52
|
+
broadcastHex: string;
|
|
53
|
+
};
|
|
54
|
+
messageBuilderTest: {
|
|
55
|
+
input: {
|
|
56
|
+
payload: string;
|
|
57
|
+
metadata: {
|
|
58
|
+
encoding: string;
|
|
59
|
+
customData: string;
|
|
60
|
+
};
|
|
61
|
+
signature: {
|
|
62
|
+
publicKey: {
|
|
63
|
+
pub: string;
|
|
64
|
+
};
|
|
65
|
+
signature: Buffer<ArrayBuffer>;
|
|
66
|
+
};
|
|
67
|
+
signer: string;
|
|
68
|
+
};
|
|
69
|
+
expected: {
|
|
70
|
+
expectedSignableHex: string;
|
|
71
|
+
expectedSignableBase64: string;
|
|
72
|
+
};
|
|
73
|
+
broadcastHex: string;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=fixtures.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../../test/unit/messages/eip712/fixtures.ts"],"names":[],"mappings":"AAuHA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIpB,CAAC"}
|