ecash-agora 0.4.0 → 1.0.0
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/README.md +5 -1
- package/dist/agora.d.ts +1 -5
- package/dist/agora.d.ts.map +1 -1
- package/dist/agora.js +4 -4
- package/dist/agora.js.map +1 -1
- package/package.json +2 -2
- package/tests/oneshot.test.ts +6 -11
- package/tests/partial-helper-alp.ts +6 -11
- package/tests/partial-helper-slp.ts +6 -9
- package/tests/partial.alp.bigsats.test.ts +12 -59
- package/tests/partial.alp.test.ts +12 -33
- package/tests/partial.locktime.test.ts +11 -26
- package/tests/partial.slp.bigsats.test.ts +11 -60
- package/tests/partial.slp.test.ts +12 -35
package/README.md
CHANGED
|
@@ -112,7 +112,7 @@ const txBuilder = new TxBuilder({
|
|
|
112
112
|
{ value: 546, script: buyerP2pkh },
|
|
113
113
|
],
|
|
114
114
|
});
|
|
115
|
-
const acceptTx = txBuilder.sign(
|
|
115
|
+
const acceptTx = txBuilder.sign();
|
|
116
116
|
await chronik.broadcastTx(acceptTx.ser());
|
|
117
117
|
```
|
|
118
118
|
|
|
@@ -178,3 +178,7 @@ Running from `bitcoin-abc/modules/ecash-agora` if your build dir is `bitcoin-abc
|
|
|
178
178
|
### 0.4.0
|
|
179
179
|
|
|
180
180
|
- Add `getAgoraPartialAcceptFuelInputs` and `getAgoraCancelFuelInputs` [D17637](https://reviews.bitcoinabc.org/D17637)
|
|
181
|
+
|
|
182
|
+
### 1.0.0
|
|
183
|
+
|
|
184
|
+
- Remove unneeded `ecc` param from various functions [D17640](https://reviews.bitcoinabc.org/D17640)
|
package/dist/agora.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChronikClient, Token, WsEndpoint } from 'chronik-client';
|
|
2
|
-
import {
|
|
2
|
+
import { Op, OutPoint, Script, Tx, TxBuilderInput, TxInput } from 'ecash-lib';
|
|
3
3
|
import { AgoraOneshot } from './oneshot.js';
|
|
4
4
|
import { AgoraPartial, AgoraPartialParams } from './partial.js';
|
|
5
5
|
/** Offer variant, determines the Script used to enforce the offer */
|
|
@@ -54,8 +54,6 @@ export declare class AgoraOffer {
|
|
|
54
54
|
* `fuelInputs` has to provide enough sats for this offer to cover ask + tx fee.
|
|
55
55
|
* */
|
|
56
56
|
acceptTx(params: {
|
|
57
|
-
/** ECC object to sign signatures. */
|
|
58
|
-
ecc: Ecc;
|
|
59
57
|
/**
|
|
60
58
|
* Arbitrary secret key to sign the accept tx with. Recommended to set
|
|
61
59
|
* this to a random key. Must be paired with covenantSk.
|
|
@@ -110,8 +108,6 @@ export declare class AgoraOffer {
|
|
|
110
108
|
* `fuelInputs` must cover the tx fee, you can calculate it with cancelFeeSats.
|
|
111
109
|
**/
|
|
112
110
|
cancelTx(params: {
|
|
113
|
-
/** ECC object to sign signatures. */
|
|
114
|
-
ecc: Ecc;
|
|
115
111
|
/**
|
|
116
112
|
* Cancel secret key of the offer, must be paired with the cancelPk of
|
|
117
113
|
* the offer.
|
package/dist/agora.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agora.d.ts","sourceRoot":"","sources":["../src/agora.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,aAAa,EAGb,KAAK,EAGL,UAAU,EACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"agora.d.ts","sourceRoot":"","sources":["../src/agora.ts"],"names":[],"mappings":"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"}
|
package/dist/agora.js
CHANGED
|
@@ -57,7 +57,7 @@ class AgoraOffer {
|
|
|
57
57
|
acceptedTokens: params.acceptedTokens,
|
|
58
58
|
allowUnspendable,
|
|
59
59
|
});
|
|
60
|
-
return txBuild.sign(
|
|
60
|
+
return txBuild.sign({ feePerKb, dustLimit: dustAmount });
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
63
|
* How many extra satoshis are required to fuel this offer so it can be
|
|
@@ -79,7 +79,7 @@ class AgoraOffer {
|
|
|
79
79
|
],
|
|
80
80
|
acceptedTokens: params.acceptedTokens,
|
|
81
81
|
});
|
|
82
|
-
const measureTx = txBuild.sign(new ecash_lib_1.EccDummy());
|
|
82
|
+
const measureTx = txBuild.sign({ ecc: new ecash_lib_1.EccDummy() });
|
|
83
83
|
return BigInt(Math.ceil((measureTx.serSize() * feePerKb) / 1000));
|
|
84
84
|
}
|
|
85
85
|
_acceptTxBuilder(params) {
|
|
@@ -186,7 +186,7 @@ class AgoraOffer {
|
|
|
186
186
|
params.recipientScript,
|
|
187
187
|
],
|
|
188
188
|
});
|
|
189
|
-
return txBuild.sign(
|
|
189
|
+
return txBuild.sign({ feePerKb, dustLimit: dustAmount });
|
|
190
190
|
}
|
|
191
191
|
/**
|
|
192
192
|
* How many extra satoshis are required to fuel cancelling this offer,
|
|
@@ -211,7 +211,7 @@ class AgoraOffer {
|
|
|
211
211
|
},
|
|
212
212
|
],
|
|
213
213
|
});
|
|
214
|
-
const measureTx = txBuild.sign(new ecash_lib_1.EccDummy());
|
|
214
|
+
const measureTx = txBuild.sign({ ecc: new ecash_lib_1.EccDummy() });
|
|
215
215
|
return BigInt(Math.ceil((measureTx.serSize() * feePerKb) / 1000));
|
|
216
216
|
}
|
|
217
217
|
_cancelTxBuilder(params) {
|
package/dist/agora.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agora.js","sourceRoot":"","sources":["../src/agora.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agora.js","sourceRoot":"","sources":["../src/agora.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ecash-agora",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Library for interacting with the eCash Agora protocol",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -47,6 +47,6 @@
|
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
49
|
"chronik-client": "^2.1.1",
|
|
50
|
-
"ecash-lib": "^
|
|
50
|
+
"ecash-lib": "^2.0.0"
|
|
51
51
|
}
|
|
52
52
|
}
|
package/tests/oneshot.test.ts
CHANGED
|
@@ -17,7 +17,6 @@ import {
|
|
|
17
17
|
TxInput,
|
|
18
18
|
TxOutput,
|
|
19
19
|
fromHex,
|
|
20
|
-
initWasm,
|
|
21
20
|
shaRmd160,
|
|
22
21
|
slpGenesis,
|
|
23
22
|
slpSend,
|
|
@@ -54,13 +53,11 @@ const SLP_TOKEN_TYPE_NFT1_CHILD = {
|
|
|
54
53
|
describe('SLP', () => {
|
|
55
54
|
let runner: TestRunner;
|
|
56
55
|
let chronik: ChronikClient;
|
|
57
|
-
|
|
56
|
+
const ecc = new Ecc();
|
|
58
57
|
|
|
59
58
|
before(async () => {
|
|
60
|
-
await initWasm();
|
|
61
59
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
62
60
|
chronik = runner.chronik;
|
|
63
|
-
ecc = runner.ecc;
|
|
64
61
|
await runner.setupCoins(NUM_COINS, COIN_VALUE);
|
|
65
62
|
});
|
|
66
63
|
|
|
@@ -130,7 +127,7 @@ describe('SLP', () => {
|
|
|
130
127
|
{ value: 10000, script: sellerP2pkh },
|
|
131
128
|
],
|
|
132
129
|
});
|
|
133
|
-
const genesisTx = txBuildGenesisGroup.sign(
|
|
130
|
+
const genesisTx = txBuildGenesisGroup.sign();
|
|
134
131
|
const genesisTxid = (await chronik.broadcastTx(genesisTx.ser())).txid;
|
|
135
132
|
const groupTokenId = genesisTxid;
|
|
136
133
|
|
|
@@ -179,7 +176,7 @@ describe('SLP', () => {
|
|
|
179
176
|
{ value: 8000, script: sellerP2pkh },
|
|
180
177
|
],
|
|
181
178
|
});
|
|
182
|
-
const genesisChildTx = txBuildGenesisChild.sign(
|
|
179
|
+
const genesisChildTx = txBuildGenesisChild.sign();
|
|
183
180
|
const genesisChildTxid = (
|
|
184
181
|
await chronik.broadcastTx(genesisChildTx.ser())
|
|
185
182
|
).txid;
|
|
@@ -252,7 +249,7 @@ describe('SLP', () => {
|
|
|
252
249
|
{ value: 7000, script: agoraAdP2sh },
|
|
253
250
|
],
|
|
254
251
|
});
|
|
255
|
-
const adSetupTx = txBuildAdSetup.sign(
|
|
252
|
+
const adSetupTx = txBuildAdSetup.sign();
|
|
256
253
|
const adSetupTxid = (await chronik.broadcastTx(adSetupTx.ser())).txid;
|
|
257
254
|
|
|
258
255
|
// 4. Seller finishes offer setup + sends NFT to the advertised P2SH
|
|
@@ -282,7 +279,7 @@ describe('SLP', () => {
|
|
|
282
279
|
{ value: 546, script: agoraP2sh },
|
|
283
280
|
],
|
|
284
281
|
});
|
|
285
|
-
const offerTx = txBuildOffer.sign(
|
|
282
|
+
const offerTx = txBuildOffer.sign();
|
|
286
283
|
const offerPromise = listenNext();
|
|
287
284
|
const offerTxid = (await chronik.broadcastTx(offerTx.ser())).txid;
|
|
288
285
|
const offerOutpoint: OutPoint = {
|
|
@@ -410,7 +407,7 @@ describe('SLP', () => {
|
|
|
410
407
|
});
|
|
411
408
|
|
|
412
409
|
// Accepting trade failed, must send 80000 sats to seller, but sent 79999
|
|
413
|
-
const acceptFailTx = txBuildAcceptFail.sign(
|
|
410
|
+
const acceptFailTx = txBuildAcceptFail.sign();
|
|
414
411
|
// OP_EQUALVERIFY failed
|
|
415
412
|
assert.isRejected(chronik.broadcastTx(acceptFailTx.ser()));
|
|
416
413
|
|
|
@@ -458,7 +455,6 @@ describe('SLP', () => {
|
|
|
458
455
|
}),
|
|
459
456
|
).to.equal(BigInt(cancelFeeSats));
|
|
460
457
|
const cancelTx = offer1.cancelTx({
|
|
461
|
-
ecc,
|
|
462
458
|
cancelSk: sellerSk,
|
|
463
459
|
fuelInputs: [offer1AdInput],
|
|
464
460
|
recipientScript: newAgoraP2sh,
|
|
@@ -650,7 +646,6 @@ describe('SLP', () => {
|
|
|
650
646
|
}),
|
|
651
647
|
).to.equal(BigInt(acceptFeeSats));
|
|
652
648
|
const acceptSuccessTx = offer2.acceptTx({
|
|
653
|
-
ecc,
|
|
654
649
|
covenantSk: buyerSk,
|
|
655
650
|
covenantPk: buyerPk,
|
|
656
651
|
fuelInputs: [offer2AcceptInput],
|
|
@@ -23,13 +23,12 @@ import { AgoraPartial } from '../src/partial.js';
|
|
|
23
23
|
import { Agora, AgoraOffer } from '../src/agora.js';
|
|
24
24
|
|
|
25
25
|
export function makeAlpGenesis(params: {
|
|
26
|
-
ecc: Ecc;
|
|
27
26
|
tokenType: number;
|
|
28
27
|
fuelInput: TxBuilderInput;
|
|
29
28
|
tokenAmounts: Amount[];
|
|
30
29
|
extraOutputs: TxBuilderOutput[];
|
|
31
30
|
}) {
|
|
32
|
-
const {
|
|
31
|
+
const { tokenType, fuelInput } = params;
|
|
33
32
|
const txBuildGenesisGroup = new TxBuilder({
|
|
34
33
|
inputs: [fuelInput],
|
|
35
34
|
outputs: [
|
|
@@ -52,24 +51,22 @@ export function makeAlpGenesis(params: {
|
|
|
52
51
|
...params.extraOutputs,
|
|
53
52
|
],
|
|
54
53
|
});
|
|
55
|
-
return txBuildGenesisGroup.sign(
|
|
54
|
+
return txBuildGenesisGroup.sign();
|
|
56
55
|
}
|
|
57
56
|
|
|
58
57
|
export async function makeAlpOffer(params: {
|
|
59
58
|
chronik: ChronikClient;
|
|
60
|
-
ecc: Ecc;
|
|
61
59
|
agoraPartial: AgoraPartial;
|
|
62
60
|
makerSk: Uint8Array;
|
|
63
61
|
fuelInput: TxBuilderInput;
|
|
64
62
|
}): Promise<AgoraOffer> {
|
|
65
|
-
const { chronik,
|
|
66
|
-
const makerPk =
|
|
63
|
+
const { chronik, agoraPartial, makerSk, fuelInput } = params;
|
|
64
|
+
const makerPk = new Ecc().derivePubkey(makerSk);
|
|
67
65
|
const makerPkh = shaRmd160(makerPk);
|
|
68
66
|
const makerP2pkh = Script.p2pkh(makerPkh);
|
|
69
67
|
|
|
70
68
|
const genesisOutputSats = 2000;
|
|
71
69
|
const genesisTx = makeAlpGenesis({
|
|
72
|
-
ecc,
|
|
73
70
|
tokenType: agoraPartial.tokenType,
|
|
74
71
|
fuelInput,
|
|
75
72
|
tokenAmounts: [agoraPartial.offeredTokens()],
|
|
@@ -114,7 +111,7 @@ export async function makeAlpOffer(params: {
|
|
|
114
111
|
{ value: 546, script: agoraP2sh },
|
|
115
112
|
],
|
|
116
113
|
});
|
|
117
|
-
const offerTx = txBuildOffer.sign(
|
|
114
|
+
const offerTx = txBuildOffer.sign();
|
|
118
115
|
await chronik.broadcastTx(offerTx.ser());
|
|
119
116
|
|
|
120
117
|
const agora = new Agora(chronik);
|
|
@@ -127,7 +124,6 @@ export async function makeAlpOffer(params: {
|
|
|
127
124
|
|
|
128
125
|
export async function takeAlpOffer(params: {
|
|
129
126
|
chronik: ChronikClient;
|
|
130
|
-
ecc: Ecc;
|
|
131
127
|
offer: AgoraOffer;
|
|
132
128
|
takerSk: Uint8Array;
|
|
133
129
|
takerInput: TxBuilderInput;
|
|
@@ -135,11 +131,10 @@ export async function takeAlpOffer(params: {
|
|
|
135
131
|
allowUnspendable?: boolean;
|
|
136
132
|
}) {
|
|
137
133
|
const takerSk = params.takerSk;
|
|
138
|
-
const takerPk =
|
|
134
|
+
const takerPk = new Ecc().derivePubkey(takerSk);
|
|
139
135
|
const takerPkh = shaRmd160(takerPk);
|
|
140
136
|
const takerP2pkh = Script.p2pkh(takerPkh);
|
|
141
137
|
const acceptTx = params.offer.acceptTx({
|
|
142
|
-
ecc: params.ecc,
|
|
143
138
|
covenantSk: params.takerSk,
|
|
144
139
|
covenantPk: takerPk,
|
|
145
140
|
fuelInputs: [params.takerInput],
|
|
@@ -21,13 +21,12 @@ import { Agora, AgoraOffer } from '../src/agora.js';
|
|
|
21
21
|
|
|
22
22
|
export async function makeSlpOffer(params: {
|
|
23
23
|
chronik: ChronikClient;
|
|
24
|
-
ecc: Ecc;
|
|
25
24
|
agoraPartial: AgoraPartial;
|
|
26
25
|
makerSk: Uint8Array;
|
|
27
26
|
fuelInput: TxBuilderInput;
|
|
28
27
|
}): Promise<AgoraOffer> {
|
|
29
|
-
const { chronik,
|
|
30
|
-
const makerPk =
|
|
28
|
+
const { chronik, agoraPartial, makerSk, fuelInput } = params;
|
|
29
|
+
const makerPk = new Ecc().derivePubkey(makerSk);
|
|
31
30
|
const makerPkh = shaRmd160(makerPk);
|
|
32
31
|
const makerP2pkh = Script.p2pkh(makerPkh);
|
|
33
32
|
|
|
@@ -49,7 +48,7 @@ export async function makeSlpOffer(params: {
|
|
|
49
48
|
{ value: genesisOutputSats, script: makerP2pkh },
|
|
50
49
|
],
|
|
51
50
|
});
|
|
52
|
-
const genesisTx = txBuildGenesisGroup.sign(
|
|
51
|
+
const genesisTx = txBuildGenesisGroup.sign();
|
|
53
52
|
const genesisTxid = (await chronik.broadcastTx(genesisTx.ser())).txid;
|
|
54
53
|
const tokenId = genesisTxid;
|
|
55
54
|
agoraPartial.tokenId = tokenId;
|
|
@@ -87,7 +86,7 @@ export async function makeSlpOffer(params: {
|
|
|
87
86
|
{ value: adSetupSats, script: agoraAdP2sh },
|
|
88
87
|
],
|
|
89
88
|
});
|
|
90
|
-
const adSetupTx = txBuildAdSetup.sign(
|
|
89
|
+
const adSetupTx = txBuildAdSetup.sign();
|
|
91
90
|
const adSetupTxid = (await chronik.broadcastTx(adSetupTx.ser())).txid;
|
|
92
91
|
|
|
93
92
|
const agoraScript = agoraPartial.script();
|
|
@@ -118,7 +117,7 @@ export async function makeSlpOffer(params: {
|
|
|
118
117
|
{ value: 546, script: agoraP2sh },
|
|
119
118
|
],
|
|
120
119
|
});
|
|
121
|
-
const offerTx = txBuildOffer.sign(
|
|
120
|
+
const offerTx = txBuildOffer.sign();
|
|
122
121
|
await chronik.broadcastTx(offerTx.ser());
|
|
123
122
|
|
|
124
123
|
const agora = new Agora(chronik);
|
|
@@ -131,7 +130,6 @@ export async function makeSlpOffer(params: {
|
|
|
131
130
|
|
|
132
131
|
export async function takeSlpOffer(params: {
|
|
133
132
|
chronik: ChronikClient;
|
|
134
|
-
ecc: Ecc;
|
|
135
133
|
offer: AgoraOffer;
|
|
136
134
|
takerSk: Uint8Array;
|
|
137
135
|
takerInput: TxBuilderInput;
|
|
@@ -139,11 +137,10 @@ export async function takeSlpOffer(params: {
|
|
|
139
137
|
allowUnspendable?: boolean;
|
|
140
138
|
}) {
|
|
141
139
|
const takerSk = params.takerSk;
|
|
142
|
-
const takerPk =
|
|
140
|
+
const takerPk = new Ecc().derivePubkey(takerSk);
|
|
143
141
|
const takerPkh = shaRmd160(takerPk);
|
|
144
142
|
const takerP2pkh = Script.p2pkh(takerPkh);
|
|
145
143
|
const acceptTx = params.offer.acceptTx({
|
|
146
|
-
ecc: params.ecc,
|
|
147
144
|
covenantSk: params.takerSk,
|
|
148
145
|
covenantPk: takerPk,
|
|
149
146
|
fuelInputs: [params.takerInput],
|
|
@@ -16,7 +16,6 @@ import {
|
|
|
16
16
|
alpSend,
|
|
17
17
|
emppScript,
|
|
18
18
|
fromHex,
|
|
19
|
-
initWasm,
|
|
20
19
|
shaRmd160,
|
|
21
20
|
toHex,
|
|
22
21
|
} from 'ecash-lib';
|
|
@@ -37,29 +36,18 @@ const BASE_PARAMS_ALP = {
|
|
|
37
36
|
|
|
38
37
|
const BIGSATS = 149 * 5000000000 - 20000;
|
|
39
38
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
makerSk = fromHex('33'.repeat(32));
|
|
53
|
-
makerPk = ecc.derivePubkey(makerSk);
|
|
54
|
-
makerPkh = shaRmd160(makerPk);
|
|
55
|
-
makerScript = Script.p2pkh(makerPkh);
|
|
56
|
-
makerScriptHex = toHex(makerScript.bytecode);
|
|
57
|
-
takerSk = fromHex('44'.repeat(32));
|
|
58
|
-
takerPk = ecc.derivePubkey(takerSk);
|
|
59
|
-
takerPkh = shaRmd160(takerPk);
|
|
60
|
-
takerScript = Script.p2pkh(takerPkh);
|
|
61
|
-
takerScriptHex = toHex(takerScript.bytecode);
|
|
62
|
-
}
|
|
39
|
+
const ecc = new Ecc();
|
|
40
|
+
|
|
41
|
+
const makerSk = fromHex('33'.repeat(32));
|
|
42
|
+
const makerPk = ecc.derivePubkey(makerSk);
|
|
43
|
+
const makerPkh = shaRmd160(makerPk);
|
|
44
|
+
const makerScript = Script.p2pkh(makerPkh);
|
|
45
|
+
const makerScriptHex = toHex(makerScript.bytecode);
|
|
46
|
+
const takerSk = fromHex('44'.repeat(32));
|
|
47
|
+
const takerPk = ecc.derivePubkey(takerSk);
|
|
48
|
+
const takerPkh = shaRmd160(takerPk);
|
|
49
|
+
const takerScript = Script.p2pkh(takerPkh);
|
|
50
|
+
const takerScriptHex = toHex(takerScript.bytecode);
|
|
63
51
|
|
|
64
52
|
async function makeBuilderInputs(
|
|
65
53
|
runner: TestRunner,
|
|
@@ -84,14 +72,10 @@ async function makeBuilderInputs(
|
|
|
84
72
|
describe('AgoraPartial ALP 7450M XEC vs 2p48-1 full accept', () => {
|
|
85
73
|
let runner: TestRunner;
|
|
86
74
|
let chronik: ChronikClient;
|
|
87
|
-
let ecc: Ecc;
|
|
88
75
|
|
|
89
76
|
before(async () => {
|
|
90
|
-
await initWasm();
|
|
91
77
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
92
78
|
chronik = runner.chronik;
|
|
93
|
-
ecc = runner.ecc;
|
|
94
|
-
initKeys(ecc);
|
|
95
79
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
96
80
|
});
|
|
97
81
|
|
|
@@ -141,14 +125,12 @@ describe('AgoraPartial ALP 7450M XEC vs 2p48-1 full accept', () => {
|
|
|
141
125
|
|
|
142
126
|
const offer = await makeAlpOffer({
|
|
143
127
|
chronik,
|
|
144
|
-
ecc,
|
|
145
128
|
agoraPartial,
|
|
146
129
|
makerSk,
|
|
147
130
|
fuelInput,
|
|
148
131
|
});
|
|
149
132
|
const acceptTxid = await takeAlpOffer({
|
|
150
133
|
chronik,
|
|
151
|
-
ecc,
|
|
152
134
|
offer,
|
|
153
135
|
takerSk,
|
|
154
136
|
takerInput,
|
|
@@ -189,11 +171,8 @@ describe('AgoraPartial 7450M XEC vs 2p48-1 small accept', () => {
|
|
|
189
171
|
let ecc: Ecc;
|
|
190
172
|
|
|
191
173
|
before(async () => {
|
|
192
|
-
await initWasm();
|
|
193
174
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
194
175
|
chronik = runner.chronik;
|
|
195
|
-
ecc = runner.ecc;
|
|
196
|
-
initKeys(ecc);
|
|
197
176
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
198
177
|
});
|
|
199
178
|
|
|
@@ -244,7 +223,6 @@ describe('AgoraPartial 7450M XEC vs 2p48-1 small accept', () => {
|
|
|
244
223
|
|
|
245
224
|
const offer = await makeAlpOffer({
|
|
246
225
|
chronik,
|
|
247
|
-
ecc,
|
|
248
226
|
agoraPartial,
|
|
249
227
|
makerSk,
|
|
250
228
|
fuelInput,
|
|
@@ -252,7 +230,6 @@ describe('AgoraPartial 7450M XEC vs 2p48-1 small accept', () => {
|
|
|
252
230
|
const acceptedTokens = 0x1000000n;
|
|
253
231
|
const acceptTxid = await takeAlpOffer({
|
|
254
232
|
chronik,
|
|
255
|
-
ecc,
|
|
256
233
|
offer,
|
|
257
234
|
takerSk,
|
|
258
235
|
takerInput,
|
|
@@ -298,14 +275,10 @@ describe('AgoraPartial 7450M XEC vs 2p48-1 small accept', () => {
|
|
|
298
275
|
describe('AgoraPartial 7450M XEC vs 2p47-1 full accept', () => {
|
|
299
276
|
let runner: TestRunner;
|
|
300
277
|
let chronik: ChronikClient;
|
|
301
|
-
let ecc: Ecc;
|
|
302
278
|
|
|
303
279
|
before(async () => {
|
|
304
|
-
await initWasm();
|
|
305
280
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
306
281
|
chronik = runner.chronik;
|
|
307
|
-
ecc = runner.ecc;
|
|
308
|
-
initKeys(ecc);
|
|
309
282
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
310
283
|
});
|
|
311
284
|
|
|
@@ -354,14 +327,12 @@ describe('AgoraPartial 7450M XEC vs 2p47-1 full accept', () => {
|
|
|
354
327
|
|
|
355
328
|
const offer = await makeAlpOffer({
|
|
356
329
|
chronik,
|
|
357
|
-
ecc,
|
|
358
330
|
agoraPartial,
|
|
359
331
|
makerSk,
|
|
360
332
|
fuelInput,
|
|
361
333
|
});
|
|
362
334
|
const acceptTxid = await takeAlpOffer({
|
|
363
335
|
chronik,
|
|
364
|
-
ecc,
|
|
365
336
|
offer,
|
|
366
337
|
takerSk,
|
|
367
338
|
takerInput,
|
|
@@ -400,14 +371,10 @@ describe('AgoraPartial 7450M XEC vs 2p47-1 full accept', () => {
|
|
|
400
371
|
describe('AgoraPartial ALP 7450M XEC vs 2p47-1 small accept', () => {
|
|
401
372
|
let runner: TestRunner;
|
|
402
373
|
let chronik: ChronikClient;
|
|
403
|
-
let ecc: Ecc;
|
|
404
374
|
|
|
405
375
|
before(async () => {
|
|
406
|
-
await initWasm();
|
|
407
376
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
408
377
|
chronik = runner.chronik;
|
|
409
|
-
ecc = runner.ecc;
|
|
410
|
-
initKeys(ecc);
|
|
411
378
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
412
379
|
});
|
|
413
380
|
|
|
@@ -458,7 +425,6 @@ describe('AgoraPartial ALP 7450M XEC vs 2p47-1 small accept', () => {
|
|
|
458
425
|
|
|
459
426
|
const offer = await makeAlpOffer({
|
|
460
427
|
chronik,
|
|
461
|
-
ecc,
|
|
462
428
|
agoraPartial,
|
|
463
429
|
makerSk,
|
|
464
430
|
fuelInput,
|
|
@@ -466,7 +432,6 @@ describe('AgoraPartial ALP 7450M XEC vs 2p47-1 small accept', () => {
|
|
|
466
432
|
const acceptedTokens = 0x1000000n;
|
|
467
433
|
const acceptTxid = await takeAlpOffer({
|
|
468
434
|
chronik,
|
|
469
|
-
ecc,
|
|
470
435
|
offer,
|
|
471
436
|
takerSk,
|
|
472
437
|
takerInput,
|
|
@@ -512,14 +477,10 @@ describe('AgoraPartial ALP 7450M XEC vs 2p47-1 small accept', () => {
|
|
|
512
477
|
describe('AgoraPartial ALP 7450M XEC vs 100 full accept', () => {
|
|
513
478
|
let runner: TestRunner;
|
|
514
479
|
let chronik: ChronikClient;
|
|
515
|
-
let ecc: Ecc;
|
|
516
480
|
|
|
517
481
|
before(async () => {
|
|
518
|
-
await initWasm();
|
|
519
482
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
520
483
|
chronik = runner.chronik;
|
|
521
|
-
ecc = runner.ecc;
|
|
522
|
-
initKeys(ecc);
|
|
523
484
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
524
485
|
});
|
|
525
486
|
|
|
@@ -567,14 +528,12 @@ describe('AgoraPartial ALP 7450M XEC vs 100 full accept', () => {
|
|
|
567
528
|
|
|
568
529
|
const offer = await makeAlpOffer({
|
|
569
530
|
chronik,
|
|
570
|
-
ecc,
|
|
571
531
|
agoraPartial,
|
|
572
532
|
makerSk,
|
|
573
533
|
fuelInput,
|
|
574
534
|
});
|
|
575
535
|
const acceptTxid = await takeAlpOffer({
|
|
576
536
|
chronik,
|
|
577
|
-
ecc,
|
|
578
537
|
offer,
|
|
579
538
|
takerSk,
|
|
580
539
|
takerInput,
|
|
@@ -610,14 +569,10 @@ describe('AgoraPartial ALP 7450M XEC vs 100 full accept', () => {
|
|
|
610
569
|
describe('AgoraPartial ALP 7450M XEC vs 100 small accept', () => {
|
|
611
570
|
let runner: TestRunner;
|
|
612
571
|
let chronik: ChronikClient;
|
|
613
|
-
let ecc: Ecc;
|
|
614
572
|
|
|
615
573
|
before(async () => {
|
|
616
|
-
await initWasm();
|
|
617
574
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
618
575
|
chronik = runner.chronik;
|
|
619
|
-
ecc = runner.ecc;
|
|
620
|
-
initKeys(ecc);
|
|
621
576
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
622
577
|
});
|
|
623
578
|
|
|
@@ -661,14 +616,12 @@ describe('AgoraPartial ALP 7450M XEC vs 100 small accept', () => {
|
|
|
661
616
|
|
|
662
617
|
const offer = await makeAlpOffer({
|
|
663
618
|
chronik,
|
|
664
|
-
ecc,
|
|
665
619
|
agoraPartial,
|
|
666
620
|
makerSk,
|
|
667
621
|
fuelInput,
|
|
668
622
|
});
|
|
669
623
|
const acceptTxid = await takeAlpOffer({
|
|
670
624
|
chronik,
|
|
671
|
-
ecc,
|
|
672
625
|
offer,
|
|
673
626
|
takerSk,
|
|
674
627
|
takerInput,
|
|
@@ -16,7 +16,6 @@ import {
|
|
|
16
16
|
alpSend,
|
|
17
17
|
emppScript,
|
|
18
18
|
fromHex,
|
|
19
|
-
initWasm,
|
|
20
19
|
shaRmd160,
|
|
21
20
|
toHex,
|
|
22
21
|
} from 'ecash-lib';
|
|
@@ -39,21 +38,21 @@ const BASE_PARAMS_ALP = {
|
|
|
39
38
|
dustAmount: DEFAULT_DUST_LIMIT,
|
|
40
39
|
};
|
|
41
40
|
|
|
41
|
+
const ecc = new Ecc();
|
|
42
|
+
const makerSk = fromHex('33'.repeat(32));
|
|
43
|
+
const makerPk = ecc.derivePubkey(makerSk);
|
|
44
|
+
const makerPkh = shaRmd160(makerPk);
|
|
45
|
+
const makerScript = Script.p2pkh(makerPkh);
|
|
46
|
+
const makerScriptHex = toHex(makerScript.bytecode);
|
|
47
|
+
const takerSk = fromHex('44'.repeat(32));
|
|
48
|
+
const takerPk = ecc.derivePubkey(takerSk);
|
|
49
|
+
const takerPkh = shaRmd160(takerPk);
|
|
50
|
+
const takerScript = Script.p2pkh(takerPkh);
|
|
51
|
+
const takerScriptHex = toHex(takerScript.bytecode);
|
|
52
|
+
|
|
42
53
|
describe('AgoraPartial ALP', () => {
|
|
43
54
|
let runner: TestRunner;
|
|
44
55
|
let chronik: ChronikClient;
|
|
45
|
-
let ecc: Ecc;
|
|
46
|
-
|
|
47
|
-
let makerSk: Uint8Array;
|
|
48
|
-
let makerPk: Uint8Array;
|
|
49
|
-
let makerPkh: Uint8Array;
|
|
50
|
-
let makerScript: Script;
|
|
51
|
-
let makerScriptHex: string;
|
|
52
|
-
let takerSk: Uint8Array;
|
|
53
|
-
let takerPk: Uint8Array;
|
|
54
|
-
let takerPkh: Uint8Array;
|
|
55
|
-
let takerScript: Script;
|
|
56
|
-
let takerScriptHex: string;
|
|
57
56
|
|
|
58
57
|
async function makeBuilderInputs(
|
|
59
58
|
values: number[],
|
|
@@ -75,22 +74,9 @@ describe('AgoraPartial ALP', () => {
|
|
|
75
74
|
}
|
|
76
75
|
|
|
77
76
|
before(async () => {
|
|
78
|
-
await initWasm();
|
|
79
77
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
80
78
|
chronik = runner.chronik;
|
|
81
|
-
ecc = runner.ecc;
|
|
82
79
|
await runner.setupCoins(NUM_COINS, COIN_VALUE);
|
|
83
|
-
|
|
84
|
-
makerSk = fromHex('33'.repeat(32));
|
|
85
|
-
makerPk = ecc.derivePubkey(makerSk);
|
|
86
|
-
makerPkh = shaRmd160(makerPk);
|
|
87
|
-
makerScript = Script.p2pkh(makerPkh);
|
|
88
|
-
makerScriptHex = toHex(makerScript.bytecode);
|
|
89
|
-
takerSk = fromHex('44'.repeat(32));
|
|
90
|
-
takerPk = ecc.derivePubkey(takerSk);
|
|
91
|
-
takerPkh = shaRmd160(takerPk);
|
|
92
|
-
takerScript = Script.p2pkh(takerPkh);
|
|
93
|
-
takerScriptHex = toHex(takerScript.bytecode);
|
|
94
80
|
});
|
|
95
81
|
|
|
96
82
|
after(() => {
|
|
@@ -450,14 +436,12 @@ describe('AgoraPartial ALP', () => {
|
|
|
450
436
|
|
|
451
437
|
const offer = await makeAlpOffer({
|
|
452
438
|
chronik,
|
|
453
|
-
ecc,
|
|
454
439
|
agoraPartial,
|
|
455
440
|
makerSk,
|
|
456
441
|
fuelInput,
|
|
457
442
|
});
|
|
458
443
|
const acceptTxid = await takeAlpOffer({
|
|
459
444
|
chronik,
|
|
460
|
-
ecc,
|
|
461
445
|
takerSk,
|
|
462
446
|
offer,
|
|
463
447
|
takerInput,
|
|
@@ -564,7 +548,6 @@ describe('AgoraPartial ALP', () => {
|
|
|
564
548
|
});
|
|
565
549
|
const cancelTxSer = newOffer
|
|
566
550
|
.cancelTx({
|
|
567
|
-
ecc,
|
|
568
551
|
cancelSk: makerSk,
|
|
569
552
|
fuelInputs: await makeBuilderInputs([
|
|
570
553
|
Number(cancelFeeSats),
|
|
@@ -642,7 +625,6 @@ describe('AgoraPartial ALP', () => {
|
|
|
642
625
|
|
|
643
626
|
const offer = await makeAlpOffer({
|
|
644
627
|
chronik,
|
|
645
|
-
ecc,
|
|
646
628
|
agoraPartial,
|
|
647
629
|
makerSk,
|
|
648
630
|
fuelInput,
|
|
@@ -662,7 +644,6 @@ describe('AgoraPartial ALP', () => {
|
|
|
662
644
|
await assert.isRejected(
|
|
663
645
|
takeAlpOffer({
|
|
664
646
|
chronik,
|
|
665
|
-
ecc,
|
|
666
647
|
takerSk,
|
|
667
648
|
offer,
|
|
668
649
|
takerInput,
|
|
@@ -702,7 +683,6 @@ describe('AgoraPartial ALP', () => {
|
|
|
702
683
|
|
|
703
684
|
const offer = await makeAlpOffer({
|
|
704
685
|
chronik,
|
|
705
|
-
ecc,
|
|
706
686
|
agoraPartial,
|
|
707
687
|
makerSk,
|
|
708
688
|
fuelInput,
|
|
@@ -719,7 +699,6 @@ describe('AgoraPartial ALP', () => {
|
|
|
719
699
|
await assert.isRejected(
|
|
720
700
|
takeAlpOffer({
|
|
721
701
|
chronik,
|
|
722
|
-
ecc,
|
|
723
702
|
takerSk,
|
|
724
703
|
offer,
|
|
725
704
|
takerInput,
|
|
@@ -17,7 +17,6 @@ import {
|
|
|
17
17
|
alpSend,
|
|
18
18
|
emppScript,
|
|
19
19
|
fromHex,
|
|
20
|
-
initWasm,
|
|
21
20
|
shaRmd160,
|
|
22
21
|
} from 'ecash-lib';
|
|
23
22
|
import { TestRunner } from 'ecash-lib/dist/test/testRunner.js';
|
|
@@ -39,19 +38,19 @@ const BASE_PARAMS_ALP = {
|
|
|
39
38
|
dustAmount: DEFAULT_DUST_LIMIT,
|
|
40
39
|
};
|
|
41
40
|
|
|
41
|
+
const ecc = new Ecc();
|
|
42
|
+
const makerSk = fromHex('33'.repeat(32));
|
|
43
|
+
const makerPk = ecc.derivePubkey(makerSk);
|
|
44
|
+
const makerPkh = shaRmd160(makerPk);
|
|
45
|
+
const makerScript = Script.p2pkh(makerPkh);
|
|
46
|
+
const takerSk = fromHex('44'.repeat(32));
|
|
47
|
+
const takerPk = ecc.derivePubkey(takerSk);
|
|
48
|
+
const takerPkh = shaRmd160(takerPk);
|
|
49
|
+
const takerScript = Script.p2pkh(takerPkh);
|
|
50
|
+
|
|
42
51
|
describe('AgoraPartial enforcedLockTime', () => {
|
|
43
52
|
let runner: TestRunner;
|
|
44
53
|
let chronik: ChronikClient;
|
|
45
|
-
let ecc: Ecc;
|
|
46
|
-
|
|
47
|
-
let makerSk: Uint8Array;
|
|
48
|
-
let makerPk: Uint8Array;
|
|
49
|
-
let makerPkh: Uint8Array;
|
|
50
|
-
let makerScript: Script;
|
|
51
|
-
let takerSk: Uint8Array;
|
|
52
|
-
let takerPk: Uint8Array;
|
|
53
|
-
let takerPkh: Uint8Array;
|
|
54
|
-
let takerScript: Script;
|
|
55
54
|
|
|
56
55
|
async function makeBuilderInputs(
|
|
57
56
|
values: number[],
|
|
@@ -73,20 +72,9 @@ describe('AgoraPartial enforcedLockTime', () => {
|
|
|
73
72
|
}
|
|
74
73
|
|
|
75
74
|
before(async () => {
|
|
76
|
-
await initWasm();
|
|
77
75
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
78
76
|
chronik = runner.chronik;
|
|
79
|
-
ecc = runner.ecc;
|
|
80
77
|
await runner.setupCoins(NUM_COINS, COIN_VALUE);
|
|
81
|
-
|
|
82
|
-
makerSk = fromHex('33'.repeat(32));
|
|
83
|
-
makerPk = ecc.derivePubkey(makerSk);
|
|
84
|
-
makerPkh = shaRmd160(makerPk);
|
|
85
|
-
makerScript = Script.p2pkh(makerPkh);
|
|
86
|
-
takerSk = fromHex('44'.repeat(32));
|
|
87
|
-
takerPk = ecc.derivePubkey(takerSk);
|
|
88
|
-
takerPkh = shaRmd160(takerPk);
|
|
89
|
-
takerScript = Script.p2pkh(takerPkh);
|
|
90
78
|
});
|
|
91
79
|
|
|
92
80
|
after(() => {
|
|
@@ -113,7 +101,6 @@ describe('AgoraPartial enforcedLockTime', () => {
|
|
|
113
101
|
|
|
114
102
|
const genesisOutputSats = 2000;
|
|
115
103
|
const genesisTx = makeAlpGenesis({
|
|
116
|
-
ecc,
|
|
117
104
|
tokenType: agoraPartial.tokenType,
|
|
118
105
|
fuelInput,
|
|
119
106
|
tokenAmounts: [
|
|
@@ -167,7 +154,7 @@ describe('AgoraPartial enforcedLockTime', () => {
|
|
|
167
154
|
{ value: 546, script: agoraP2sh },
|
|
168
155
|
],
|
|
169
156
|
});
|
|
170
|
-
const offerTx = txBuildOffer.sign(
|
|
157
|
+
const offerTx = txBuildOffer.sign();
|
|
171
158
|
await chronik.broadcastTx(offerTx.ser());
|
|
172
159
|
}
|
|
173
160
|
|
|
@@ -187,7 +174,6 @@ describe('AgoraPartial enforcedLockTime', () => {
|
|
|
187
174
|
|
|
188
175
|
// Cannot co-spend other identical offer (due to different locktime)
|
|
189
176
|
const failedAcceptTx = offersLocktime1[0].acceptTx({
|
|
190
|
-
ecc,
|
|
191
177
|
covenantSk: takerSk,
|
|
192
178
|
covenantPk: takerPk,
|
|
193
179
|
fuelInputs: [
|
|
@@ -214,7 +200,6 @@ describe('AgoraPartial enforcedLockTime', () => {
|
|
|
214
200
|
// for identical other offers, otherwise someone can spend them in a
|
|
215
201
|
// single transaction, burning one of the offers.
|
|
216
202
|
const successAcceptTx = offersLocktime1[0].acceptTx({
|
|
217
|
-
ecc,
|
|
218
203
|
covenantSk: takerSk,
|
|
219
204
|
covenantPk: takerPk,
|
|
220
205
|
fuelInputs: [
|
|
@@ -14,7 +14,6 @@ import {
|
|
|
14
14
|
Script,
|
|
15
15
|
TxBuilderInput,
|
|
16
16
|
fromHex,
|
|
17
|
-
initWasm,
|
|
18
17
|
shaRmd160,
|
|
19
18
|
slpSend,
|
|
20
19
|
toHex,
|
|
@@ -36,29 +35,17 @@ const BASE_PARAMS_SLP = {
|
|
|
36
35
|
|
|
37
36
|
const BIGSATS = 149 * 5000000000 - 20000;
|
|
38
37
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
function initKeys(ecc: Ecc) {
|
|
51
|
-
makerSk = fromHex('33'.repeat(32));
|
|
52
|
-
makerPk = ecc.derivePubkey(makerSk);
|
|
53
|
-
makerPkh = shaRmd160(makerPk);
|
|
54
|
-
makerScript = Script.p2pkh(makerPkh);
|
|
55
|
-
makerScriptHex = toHex(makerScript.bytecode);
|
|
56
|
-
takerSk = fromHex('44'.repeat(32));
|
|
57
|
-
takerPk = ecc.derivePubkey(takerSk);
|
|
58
|
-
takerPkh = shaRmd160(takerPk);
|
|
59
|
-
takerScript = Script.p2pkh(takerPkh);
|
|
60
|
-
takerScriptHex = toHex(takerScript.bytecode);
|
|
61
|
-
}
|
|
38
|
+
const ecc = new Ecc();
|
|
39
|
+
const makerSk = fromHex('33'.repeat(32));
|
|
40
|
+
const makerPk = ecc.derivePubkey(makerSk);
|
|
41
|
+
const makerPkh = shaRmd160(makerPk);
|
|
42
|
+
const makerScript = Script.p2pkh(makerPkh);
|
|
43
|
+
const makerScriptHex = toHex(makerScript.bytecode);
|
|
44
|
+
const takerSk = fromHex('44'.repeat(32));
|
|
45
|
+
const takerPk = ecc.derivePubkey(takerSk);
|
|
46
|
+
const takerPkh = shaRmd160(takerPk);
|
|
47
|
+
const takerScript = Script.p2pkh(takerPkh);
|
|
48
|
+
const takerScriptHex = toHex(takerScript.bytecode);
|
|
62
49
|
|
|
63
50
|
async function makeBuilderInputs(
|
|
64
51
|
runner: TestRunner,
|
|
@@ -83,14 +70,10 @@ async function makeBuilderInputs(
|
|
|
83
70
|
describe('Agora Partial 7450M XEC vs 2p64-1 full accept', () => {
|
|
84
71
|
let runner: TestRunner;
|
|
85
72
|
let chronik: ChronikClient;
|
|
86
|
-
let ecc: Ecc;
|
|
87
73
|
|
|
88
74
|
before(async () => {
|
|
89
|
-
await initWasm();
|
|
90
75
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
91
76
|
chronik = runner.chronik;
|
|
92
|
-
ecc = runner.ecc;
|
|
93
|
-
initKeys(ecc);
|
|
94
77
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
95
78
|
});
|
|
96
79
|
|
|
@@ -142,14 +125,12 @@ describe('Agora Partial 7450M XEC vs 2p64-1 full accept', () => {
|
|
|
142
125
|
|
|
143
126
|
const offer = await makeSlpOffer({
|
|
144
127
|
chronik,
|
|
145
|
-
ecc,
|
|
146
128
|
agoraPartial,
|
|
147
129
|
makerSk,
|
|
148
130
|
fuelInput,
|
|
149
131
|
});
|
|
150
132
|
const acceptTxid = await takeSlpOffer({
|
|
151
133
|
chronik,
|
|
152
|
-
ecc,
|
|
153
134
|
offer,
|
|
154
135
|
takerSk,
|
|
155
136
|
takerInput,
|
|
@@ -184,14 +165,10 @@ describe('Agora Partial 7450M XEC vs 2p64-1 full accept', () => {
|
|
|
184
165
|
describe('Agora Partial 7450M XEC vs 2p64-1 small accept', () => {
|
|
185
166
|
let runner: TestRunner;
|
|
186
167
|
let chronik: ChronikClient;
|
|
187
|
-
let ecc: Ecc;
|
|
188
168
|
|
|
189
169
|
before(async () => {
|
|
190
|
-
await initWasm();
|
|
191
170
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
192
171
|
chronik = runner.chronik;
|
|
193
|
-
ecc = runner.ecc;
|
|
194
|
-
initKeys(ecc);
|
|
195
172
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
196
173
|
});
|
|
197
174
|
|
|
@@ -242,7 +219,6 @@ describe('Agora Partial 7450M XEC vs 2p64-1 small accept', () => {
|
|
|
242
219
|
|
|
243
220
|
const offer = await makeSlpOffer({
|
|
244
221
|
chronik,
|
|
245
|
-
ecc,
|
|
246
222
|
agoraPartial,
|
|
247
223
|
makerSk,
|
|
248
224
|
fuelInput,
|
|
@@ -250,7 +226,6 @@ describe('Agora Partial 7450M XEC vs 2p64-1 small accept', () => {
|
|
|
250
226
|
const acceptedTokens = 0x10000000000n;
|
|
251
227
|
const acceptTxid = await takeSlpOffer({
|
|
252
228
|
chronik,
|
|
253
|
-
ecc,
|
|
254
229
|
offer,
|
|
255
230
|
takerSk,
|
|
256
231
|
takerInput,
|
|
@@ -293,14 +268,10 @@ describe('Agora Partial 7450M XEC vs 2p64-1 small accept', () => {
|
|
|
293
268
|
describe('Agora Partial 7450M XEC vs 2p63-1 full accept', () => {
|
|
294
269
|
let runner: TestRunner;
|
|
295
270
|
let chronik: ChronikClient;
|
|
296
|
-
let ecc: Ecc;
|
|
297
271
|
|
|
298
272
|
before(async () => {
|
|
299
|
-
await initWasm();
|
|
300
273
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
301
274
|
chronik = runner.chronik;
|
|
302
|
-
ecc = runner.ecc;
|
|
303
|
-
initKeys(ecc);
|
|
304
275
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
305
276
|
});
|
|
306
277
|
|
|
@@ -352,7 +323,6 @@ describe('Agora Partial 7450M XEC vs 2p63-1 full accept', () => {
|
|
|
352
323
|
|
|
353
324
|
const offer = await makeSlpOffer({
|
|
354
325
|
chronik,
|
|
355
|
-
ecc,
|
|
356
326
|
agoraPartial,
|
|
357
327
|
makerSk,
|
|
358
328
|
fuelInput,
|
|
@@ -360,7 +330,6 @@ describe('Agora Partial 7450M XEC vs 2p63-1 full accept', () => {
|
|
|
360
330
|
const acceptedTokens = agoraPartial.offeredTokens();
|
|
361
331
|
const acceptTxid = await takeSlpOffer({
|
|
362
332
|
chronik,
|
|
363
|
-
ecc,
|
|
364
333
|
offer,
|
|
365
334
|
takerSk,
|
|
366
335
|
takerInput,
|
|
@@ -396,14 +365,10 @@ describe('Agora Partial 7450M XEC vs 2p63-1 full accept', () => {
|
|
|
396
365
|
describe('Agora Partial 7450M XEC vs 2p63-1 small accept', () => {
|
|
397
366
|
let runner: TestRunner;
|
|
398
367
|
let chronik: ChronikClient;
|
|
399
|
-
let ecc: Ecc;
|
|
400
368
|
|
|
401
369
|
before(async () => {
|
|
402
|
-
await initWasm();
|
|
403
370
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
404
371
|
chronik = runner.chronik;
|
|
405
|
-
ecc = runner.ecc;
|
|
406
|
-
initKeys(ecc);
|
|
407
372
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
408
373
|
});
|
|
409
374
|
|
|
@@ -454,7 +419,6 @@ describe('Agora Partial 7450M XEC vs 2p63-1 small accept', () => {
|
|
|
454
419
|
|
|
455
420
|
const offer = await makeSlpOffer({
|
|
456
421
|
chronik,
|
|
457
|
-
ecc,
|
|
458
422
|
agoraPartial,
|
|
459
423
|
makerSk,
|
|
460
424
|
fuelInput,
|
|
@@ -462,7 +426,6 @@ describe('Agora Partial 7450M XEC vs 2p63-1 small accept', () => {
|
|
|
462
426
|
const acceptedTokens = 0x100000000n;
|
|
463
427
|
const acceptTxid = await takeSlpOffer({
|
|
464
428
|
chronik,
|
|
465
|
-
ecc,
|
|
466
429
|
offer,
|
|
467
430
|
takerSk,
|
|
468
431
|
takerInput,
|
|
@@ -505,14 +468,10 @@ describe('Agora Partial 7450M XEC vs 2p63-1 small accept', () => {
|
|
|
505
468
|
describe('Agora Partial 7450M XEC vs 100 full accept', () => {
|
|
506
469
|
let runner: TestRunner;
|
|
507
470
|
let chronik: ChronikClient;
|
|
508
|
-
let ecc: Ecc;
|
|
509
471
|
|
|
510
472
|
before(async () => {
|
|
511
|
-
await initWasm();
|
|
512
473
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
513
474
|
chronik = runner.chronik;
|
|
514
|
-
ecc = runner.ecc;
|
|
515
|
-
initKeys(ecc);
|
|
516
475
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
517
476
|
});
|
|
518
477
|
|
|
@@ -560,14 +519,12 @@ describe('Agora Partial 7450M XEC vs 100 full accept', () => {
|
|
|
560
519
|
|
|
561
520
|
const offer = await makeSlpOffer({
|
|
562
521
|
chronik,
|
|
563
|
-
ecc,
|
|
564
522
|
agoraPartial,
|
|
565
523
|
makerSk,
|
|
566
524
|
fuelInput,
|
|
567
525
|
});
|
|
568
526
|
const acceptTxid = await takeSlpOffer({
|
|
569
527
|
chronik,
|
|
570
|
-
ecc,
|
|
571
528
|
offer,
|
|
572
529
|
takerSk,
|
|
573
530
|
takerInput,
|
|
@@ -598,14 +555,10 @@ describe('Agora Partial 7450M XEC vs 100 full accept', () => {
|
|
|
598
555
|
describe('Agora Partial 7450M XEC vs 100 small accept', () => {
|
|
599
556
|
let runner: TestRunner;
|
|
600
557
|
let chronik: ChronikClient;
|
|
601
|
-
let ecc: Ecc;
|
|
602
558
|
|
|
603
559
|
before(async () => {
|
|
604
|
-
await initWasm();
|
|
605
560
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
606
561
|
chronik = runner.chronik;
|
|
607
|
-
ecc = runner.ecc;
|
|
608
|
-
initKeys(ecc);
|
|
609
562
|
await runner.setupCoins(1, BIGSATS + 11000);
|
|
610
563
|
});
|
|
611
564
|
|
|
@@ -649,14 +602,12 @@ describe('Agora Partial 7450M XEC vs 100 small accept', () => {
|
|
|
649
602
|
|
|
650
603
|
const offer = await makeSlpOffer({
|
|
651
604
|
chronik,
|
|
652
|
-
ecc,
|
|
653
605
|
agoraPartial,
|
|
654
606
|
makerSk,
|
|
655
607
|
fuelInput,
|
|
656
608
|
});
|
|
657
609
|
const acceptTxid = await takeSlpOffer({
|
|
658
610
|
chronik,
|
|
659
|
-
ecc,
|
|
660
611
|
offer,
|
|
661
612
|
takerSk,
|
|
662
613
|
takerInput,
|
|
@@ -14,7 +14,6 @@ import {
|
|
|
14
14
|
Script,
|
|
15
15
|
TxBuilderInput,
|
|
16
16
|
fromHex,
|
|
17
|
-
initWasm,
|
|
18
17
|
shaRmd160,
|
|
19
18
|
slpSend,
|
|
20
19
|
toHex,
|
|
@@ -38,21 +37,21 @@ const BASE_PARAMS_SLP = {
|
|
|
38
37
|
dustAmount: DEFAULT_DUST_LIMIT,
|
|
39
38
|
};
|
|
40
39
|
|
|
40
|
+
const ecc = new Ecc();
|
|
41
|
+
const makerSk = fromHex('33'.repeat(32));
|
|
42
|
+
const makerPk = ecc.derivePubkey(makerSk);
|
|
43
|
+
const makerPkh = shaRmd160(makerPk);
|
|
44
|
+
const makerScript = Script.p2pkh(makerPkh);
|
|
45
|
+
const makerScriptHex = toHex(makerScript.bytecode);
|
|
46
|
+
const takerSk = fromHex('44'.repeat(32));
|
|
47
|
+
const takerPk = ecc.derivePubkey(takerSk);
|
|
48
|
+
const takerPkh = shaRmd160(takerPk);
|
|
49
|
+
const takerScript = Script.p2pkh(takerPkh);
|
|
50
|
+
const takerScriptHex = toHex(takerScript.bytecode);
|
|
51
|
+
|
|
41
52
|
describe('AgoraPartial SLP', () => {
|
|
42
53
|
let runner: TestRunner;
|
|
43
54
|
let chronik: ChronikClient;
|
|
44
|
-
let ecc: Ecc;
|
|
45
|
-
|
|
46
|
-
let makerSk: Uint8Array;
|
|
47
|
-
let makerPk: Uint8Array;
|
|
48
|
-
let makerPkh: Uint8Array;
|
|
49
|
-
let makerScript: Script;
|
|
50
|
-
let makerScriptHex: string;
|
|
51
|
-
let takerSk: Uint8Array;
|
|
52
|
-
let takerPk: Uint8Array;
|
|
53
|
-
let takerPkh: Uint8Array;
|
|
54
|
-
let takerScript: Script;
|
|
55
|
-
let takerScriptHex: string;
|
|
56
55
|
|
|
57
56
|
async function makeBuilderInputs(
|
|
58
57
|
values: number[],
|
|
@@ -74,22 +73,9 @@ describe('AgoraPartial SLP', () => {
|
|
|
74
73
|
}
|
|
75
74
|
|
|
76
75
|
before(async () => {
|
|
77
|
-
await initWasm();
|
|
78
76
|
runner = await TestRunner.setup('setup_scripts/ecash-agora_base');
|
|
79
77
|
chronik = runner.chronik;
|
|
80
|
-
ecc = runner.ecc;
|
|
81
78
|
await runner.setupCoins(NUM_COINS, COIN_VALUE);
|
|
82
|
-
|
|
83
|
-
makerSk = fromHex('33'.repeat(32));
|
|
84
|
-
makerPk = ecc.derivePubkey(makerSk);
|
|
85
|
-
makerPkh = shaRmd160(makerPk);
|
|
86
|
-
makerScript = Script.p2pkh(makerPkh);
|
|
87
|
-
makerScriptHex = toHex(makerScript.bytecode);
|
|
88
|
-
takerSk = fromHex('44'.repeat(32));
|
|
89
|
-
takerPk = ecc.derivePubkey(takerSk);
|
|
90
|
-
takerPkh = shaRmd160(takerPk);
|
|
91
|
-
takerScript = Script.p2pkh(takerPkh);
|
|
92
|
-
takerScriptHex = toHex(takerScript.bytecode);
|
|
93
79
|
});
|
|
94
80
|
|
|
95
81
|
after(() => {
|
|
@@ -505,14 +491,12 @@ describe('AgoraPartial SLP', () => {
|
|
|
505
491
|
|
|
506
492
|
const offer = await makeSlpOffer({
|
|
507
493
|
chronik,
|
|
508
|
-
ecc,
|
|
509
494
|
agoraPartial,
|
|
510
495
|
makerSk,
|
|
511
496
|
fuelInput,
|
|
512
497
|
});
|
|
513
498
|
const acceptTxid = await takeSlpOffer({
|
|
514
499
|
chronik,
|
|
515
|
-
ecc,
|
|
516
500
|
takerSk,
|
|
517
501
|
offer,
|
|
518
502
|
takerInput,
|
|
@@ -608,7 +592,6 @@ describe('AgoraPartial SLP', () => {
|
|
|
608
592
|
});
|
|
609
593
|
const cancelTxSer = newOffer
|
|
610
594
|
.cancelTx({
|
|
611
|
-
ecc,
|
|
612
595
|
cancelSk: makerSk,
|
|
613
596
|
fuelInputs: await makeBuilderInputs([
|
|
614
597
|
Number(cancelFeeSats),
|
|
@@ -687,7 +670,6 @@ describe('AgoraPartial SLP', () => {
|
|
|
687
670
|
|
|
688
671
|
const offer = await makeSlpOffer({
|
|
689
672
|
chronik,
|
|
690
|
-
ecc,
|
|
691
673
|
agoraPartial,
|
|
692
674
|
makerSk,
|
|
693
675
|
fuelInput,
|
|
@@ -707,7 +689,6 @@ describe('AgoraPartial SLP', () => {
|
|
|
707
689
|
await assert.isRejected(
|
|
708
690
|
takeSlpOffer({
|
|
709
691
|
chronik,
|
|
710
|
-
ecc,
|
|
711
692
|
takerSk,
|
|
712
693
|
offer,
|
|
713
694
|
takerInput,
|
|
@@ -747,7 +728,6 @@ describe('AgoraPartial SLP', () => {
|
|
|
747
728
|
|
|
748
729
|
const offer = await makeSlpOffer({
|
|
749
730
|
chronik,
|
|
750
|
-
ecc,
|
|
751
731
|
agoraPartial,
|
|
752
732
|
makerSk,
|
|
753
733
|
fuelInput,
|
|
@@ -765,7 +745,6 @@ describe('AgoraPartial SLP', () => {
|
|
|
765
745
|
await assert.isRejected(
|
|
766
746
|
takeSlpOffer({
|
|
767
747
|
chronik,
|
|
768
|
-
ecc,
|
|
769
748
|
takerSk,
|
|
770
749
|
offer,
|
|
771
750
|
takerInput,
|
|
@@ -779,7 +758,6 @@ describe('AgoraPartial SLP', () => {
|
|
|
779
758
|
await assert.isRejected(
|
|
780
759
|
takeSlpOffer({
|
|
781
760
|
chronik,
|
|
782
|
-
ecc,
|
|
783
761
|
takerSk,
|
|
784
762
|
offer,
|
|
785
763
|
takerInput,
|
|
@@ -793,7 +771,6 @@ describe('AgoraPartial SLP', () => {
|
|
|
793
771
|
await assert.isRejected(
|
|
794
772
|
takeSlpOffer({
|
|
795
773
|
chronik,
|
|
796
|
-
ecc,
|
|
797
774
|
takerSk,
|
|
798
775
|
offer,
|
|
799
776
|
takerInput,
|