@paraswap/dex-lib 3.4.2-balancer-v2-single-swap.0 → 3.4.2
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 +377 -377
- package/build/config.js +9 -5
- package/build/config.js.map +1 -1
- package/build/dex/algebra/algebra.js +25 -25
- package/build/dex/balancer-v1/balancer-v1.js +34 -34
- package/build/dex/balancer-v2/balancer-v2.d.ts +1 -1
- package/build/dex/balancer-v2/balancer-v2.js +65 -78
- package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
- package/build/dex/camelot/camelot.js +27 -27
- package/build/dex/kyberdmm/kyberdmm.js +27 -27
- package/build/dex/pancakeswap-v3/pancakeswap-v3.js +25 -25
- package/build/dex/solidly/solidly.js +27 -27
- package/build/dex/solidly-v3/solidly-v3.js +25 -25
- package/build/dex/swaap-v2/config.js +15 -0
- package/build/dex/swaap-v2/config.js.map +1 -1
- package/build/dex/uniswap-v2/uniswap-v2.js +26 -26
- package/build/dex/uniswap-v3/uniswap-v3.js +25 -25
- package/funding.json +5 -5
- package/package.json +1 -1
- package/src/config.ts +500 -496
- package/src/constants.ts +67 -67
- package/src/dex/aave-v2/aave-v2.ts +409 -409
- package/src/dex/aave-v3/aave-v3.ts +320 -320
- package/src/dex/algebra/algebra.ts +1180 -1180
- package/src/dex/angle-staked-stable/angle-staked-stable.ts +347 -347
- package/src/dex/augustus-rfq.ts +180 -180
- package/src/dex/bProtocol/bProtocol.ts +108 -108
- package/src/dex/balancer-v1/balancer-v1.ts +572 -572
- package/src/dex/balancer-v2/balancer-v2-e2e.test.ts +1699 -1699
- package/src/dex/balancer-v2/balancer-v2.ts +1669 -1701
- package/src/dex/bancor/bancor.ts +128 -128
- package/src/dex/camelot/camelot.ts +873 -873
- package/src/dex/compound/compound.ts +107 -107
- package/src/dex/curve-v1/config.ts +1179 -1179
- package/src/dex/curve-v1/curve-v1-e2e.test.ts +507 -507
- package/src/dex/curve-v1/curve-v1.ts +1315 -1315
- package/src/dex/curve-v1-factory/config.ts +1018 -1018
- package/src/dex/curve-v1-factory/curve-v1-factory.ts +1288 -1288
- package/src/dex/curve-v2/curve-v2.ts +440 -440
- package/src/dex/dexalot/dexalot.ts +1100 -1100
- package/src/dex/dodo-v1/dodo-v1.ts +132 -132
- package/src/dex/dodo-v2.ts +266 -266
- package/src/dex/etherfi.ts +239 -239
- package/src/dex/generic-rfq/generic-rfq.ts +431 -431
- package/src/dex/gmx/gmx.ts +321 -321
- package/src/dex/hashflow/hashflow.ts +1135 -1135
- package/src/dex/idex.ts +254 -254
- package/src/dex/index.ts +357 -357
- package/src/dex/jarvis-v6/jarvis-v6.ts +509 -509
- package/src/dex/jarvis.ts +262 -262
- package/src/dex/kyberdmm/kyberdmm.ts +649 -649
- package/src/dex/lido/lido.ts +110 -110
- package/src/dex/maker-psm/maker-psm.ts +592 -592
- package/src/dex/maverick-v1/maverick-v1.ts +537 -537
- package/src/dex/nerve/config.ts +635 -635
- package/src/dex/nerve/nerve-e2e.test.ts +731 -731
- package/src/dex/nerve/nerve-events.test.ts +911 -911
- package/src/dex/nerve/nerve.ts +467 -467
- package/src/dex/onebit/onebit.ts +113 -113
- package/src/dex/pancakeswap-v3/pancakeswap-v3.ts +1150 -1150
- package/src/dex/paraswap-limit-orders/config.ts +60 -60
- package/src/dex/paraswap-limit-orders/paraswap-limit-orders-e2e.test.ts +137 -137
- package/src/dex/paraswap-limit-orders/paraswap-limit-orders-integration.test.ts +328 -328
- package/src/dex/paraswap-limit-orders/paraswap-limit-orders.ts +631 -631
- package/src/dex/polygon-migrator/polygon-migrator.ts +194 -194
- package/src/dex/quick-perps/quick-perps.ts +337 -337
- package/src/dex/quickswap/config.ts +16 -16
- package/src/dex/quickswap/quickswap-e2e.test.ts +384 -384
- package/src/dex/smoothy/smoothy.ts +110 -110
- package/src/dex/solidly/config.ts +225 -225
- package/src/dex/solidly/solidly-e2e.test.ts +1421 -1421
- package/src/dex/solidly/solidly-integration.test.ts +1753 -1753
- package/src/dex/solidly/solidly.ts +687 -687
- package/src/dex/solidly-v3/solidly-v3.ts +968 -968
- package/src/dex/spark/spark.ts +284 -284
- package/src/dex/stable-pool/stable-pool.ts +129 -129
- package/src/dex/swaap-v2/config.ts +15 -0
- package/src/dex/swaap-v2/swaap-v2-e2e.test.ts +233 -17
- package/src/dex/swaap-v2/swaap-v2-integration.test.ts +1 -1
- package/src/dex/swaap-v2/swaap-v2.ts +1056 -1056
- package/src/dex/swell/swell.ts +312 -312
- package/src/dex/synthetix/synthetix.ts +420 -420
- package/src/dex/trader-joe-v2.1/trader-joe-v2.1.ts +180 -180
- package/src/dex/uniswap-v2/config.ts +637 -637
- package/src/dex/uniswap-v2/constants.ts +58 -58
- package/src/dex/uniswap-v2/uniswap-v2-e2e-avalanche.test.ts +1257 -1257
- package/src/dex/uniswap-v2/uniswap-v2-e2e-base.test.ts +42 -42
- package/src/dex/uniswap-v2/uniswap-v2-e2e-bsc.test.ts +1295 -1295
- package/src/dex/uniswap-v2/uniswap-v2-e2e-mainnet.test.ts +1834 -1834
- package/src/dex/uniswap-v2/uniswap-v2-e2e-polygon.test.ts +871 -871
- package/src/dex/uniswap-v2/uniswap-v2.ts +1117 -1117
- package/src/dex/uniswap-v3/uniswap-v3.ts +1501 -1501
- package/src/dex/uniswap-v3.ts +242 -242
- package/src/dex/weth/config.ts +73 -73
- package/src/dex/weth/weth.ts +230 -230
- package/src/dex/wombat/wombat.ts +467 -467
- package/src/dex/woo-fi-v2/woo-fi-v2.ts +529 -529
- package/src/dex/wsteth/wsteth.ts +304 -304
- package/src/dex/zerox/index.ts +328 -328
- package/src/executor/Executor01BytecodeBuilder.ts +474 -474
- package/src/executor/Executor02BytecodeBuilder.ts +1392 -1392
- package/src/executor/ExecutorBytecodeBuilder.ts +390 -390
- package/src/executor/ExecutorDetector.ts +131 -131
- package/src/executor/constants.ts +66 -66
- package/src/executor/executor01-bytecode-builder-e2e.test.ts +1478 -1478
- package/src/executor/utils.ts +62 -62
- package/src/router/simpleswap.ts +366 -366
- package/src/types.ts +342 -342
- package/tests/constants-e2e.ts +1632 -1622
- package/tests/generate-new-limit-order.ts +107 -107
|
@@ -1,911 +1,911 @@
|
|
|
1
|
-
import dotenv from 'dotenv';
|
|
2
|
-
dotenv.config();
|
|
3
|
-
import _ from 'lodash';
|
|
4
|
-
import { NerveEventPool } from './nerve-pool';
|
|
5
|
-
import { Network } from '../../constants';
|
|
6
|
-
import { DummyDexHelper } from '../../dex-helper/index';
|
|
7
|
-
import { testEventSubscriber } from '../../../tests/utils-events';
|
|
8
|
-
import { PoolState } from './types';
|
|
9
|
-
import { typeCastPoolState } from './utils';
|
|
10
|
-
import { Nerve } from './nerve';
|
|
11
|
-
import { threePoolName } from './config';
|
|
12
|
-
|
|
13
|
-
jest.setTimeout(50 * 1000);
|
|
14
|
-
|
|
15
|
-
async function fetchPoolState(
|
|
16
|
-
nervePool: NerveEventPool,
|
|
17
|
-
blockNumber: number,
|
|
18
|
-
): Promise<PoolState> {
|
|
19
|
-
// It generates data from onchain data
|
|
20
|
-
return typeCastPoolState(
|
|
21
|
-
_.cloneDeep(await nervePool.generateState(blockNumber)),
|
|
22
|
-
);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
describe('Nerve Event Pool BSC', async () => {
|
|
26
|
-
const dexKey = 'Nerve';
|
|
27
|
-
const poolName = threePoolName;
|
|
28
|
-
const network = Network.BSC;
|
|
29
|
-
const testPoolAddress = '0x1B3771a66ee31180906972580adE9b81AFc5fCDc'; // 3Pool
|
|
30
|
-
const dexHelper = new DummyDexHelper(network);
|
|
31
|
-
const logger = dexHelper.getLogger(dexKey);
|
|
32
|
-
let nervePool: NerveEventPool;
|
|
33
|
-
|
|
34
|
-
beforeEach(async () => {
|
|
35
|
-
nervePool = new NerveEventPool(
|
|
36
|
-
dexKey,
|
|
37
|
-
network,
|
|
38
|
-
dexHelper,
|
|
39
|
-
logger,
|
|
40
|
-
poolName,
|
|
41
|
-
);
|
|
42
|
-
});
|
|
43
|
-
|
|
44
|
-
// TokenSwap -> 0xc6c1e0630dbe9130cc068028486c0d118ddcea348550819defd5cb8c257f8a38
|
|
45
|
-
describe('TokenSwap', () => {
|
|
46
|
-
it(`State after 16847285`, async () => {
|
|
47
|
-
const blockNumber = 16847285;
|
|
48
|
-
await testEventSubscriber(
|
|
49
|
-
nervePool,
|
|
50
|
-
nervePool.addressesSubscribed,
|
|
51
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
52
|
-
blockNumber,
|
|
53
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
54
|
-
dexHelper.provider,
|
|
55
|
-
);
|
|
56
|
-
});
|
|
57
|
-
it(`State after 16847392`, async () => {
|
|
58
|
-
const blockNumber = 16847392;
|
|
59
|
-
await testEventSubscriber(
|
|
60
|
-
nervePool,
|
|
61
|
-
nervePool.addressesSubscribed,
|
|
62
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
63
|
-
blockNumber,
|
|
64
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
65
|
-
dexHelper.provider,
|
|
66
|
-
);
|
|
67
|
-
});
|
|
68
|
-
it(`State after 16847496`, async () => {
|
|
69
|
-
const blockNumber = 16847496;
|
|
70
|
-
await testEventSubscriber(
|
|
71
|
-
nervePool,
|
|
72
|
-
nervePool.addressesSubscribed,
|
|
73
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
74
|
-
blockNumber,
|
|
75
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
76
|
-
dexHelper.provider,
|
|
77
|
-
);
|
|
78
|
-
});
|
|
79
|
-
it(`State after 16853100`, async () => {
|
|
80
|
-
const blockNumber = 16853100;
|
|
81
|
-
await testEventSubscriber(
|
|
82
|
-
nervePool,
|
|
83
|
-
nervePool.addressesSubscribed,
|
|
84
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
85
|
-
blockNumber,
|
|
86
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
87
|
-
dexHelper.provider,
|
|
88
|
-
);
|
|
89
|
-
});
|
|
90
|
-
it(`State after 16852788`, async () => {
|
|
91
|
-
const blockNumber = 16852788;
|
|
92
|
-
await testEventSubscriber(
|
|
93
|
-
nervePool,
|
|
94
|
-
nervePool.addressesSubscribed,
|
|
95
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
96
|
-
blockNumber,
|
|
97
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
98
|
-
dexHelper.provider,
|
|
99
|
-
);
|
|
100
|
-
});
|
|
101
|
-
});
|
|
102
|
-
|
|
103
|
-
// AddLiquidity -> 0x189c623b666b1b45b83d7178f39b8c087cb09774317ca2f53c2d3c3726f222a2
|
|
104
|
-
describe('AddLiquidity', () => {
|
|
105
|
-
it(`State after 16714695`, async () => {
|
|
106
|
-
const blockNumber = 16714695;
|
|
107
|
-
await testEventSubscriber(
|
|
108
|
-
nervePool,
|
|
109
|
-
nervePool.addressesSubscribed,
|
|
110
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
111
|
-
blockNumber,
|
|
112
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
113
|
-
dexHelper.provider,
|
|
114
|
-
);
|
|
115
|
-
});
|
|
116
|
-
it(`State after 16714525`, async () => {
|
|
117
|
-
const blockNumber = 16714525;
|
|
118
|
-
await testEventSubscriber(
|
|
119
|
-
nervePool,
|
|
120
|
-
nervePool.addressesSubscribed,
|
|
121
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
122
|
-
blockNumber,
|
|
123
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
124
|
-
dexHelper.provider,
|
|
125
|
-
);
|
|
126
|
-
});
|
|
127
|
-
it(`State after 16630557`, async () => {
|
|
128
|
-
const blockNumber = 16630557;
|
|
129
|
-
await testEventSubscriber(
|
|
130
|
-
nervePool,
|
|
131
|
-
nervePool.addressesSubscribed,
|
|
132
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
133
|
-
blockNumber,
|
|
134
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
135
|
-
dexHelper.provider,
|
|
136
|
-
);
|
|
137
|
-
});
|
|
138
|
-
it(`State after 16222709`, async () => {
|
|
139
|
-
const blockNumber = 16222709;
|
|
140
|
-
await testEventSubscriber(
|
|
141
|
-
nervePool,
|
|
142
|
-
nervePool.addressesSubscribed,
|
|
143
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
144
|
-
blockNumber,
|
|
145
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
146
|
-
dexHelper.provider,
|
|
147
|
-
);
|
|
148
|
-
});
|
|
149
|
-
it(`State after 16116914`, async () => {
|
|
150
|
-
const blockNumber = 16116914;
|
|
151
|
-
await testEventSubscriber(
|
|
152
|
-
nervePool,
|
|
153
|
-
nervePool.addressesSubscribed,
|
|
154
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
155
|
-
blockNumber,
|
|
156
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
157
|
-
dexHelper.provider,
|
|
158
|
-
);
|
|
159
|
-
});
|
|
160
|
-
});
|
|
161
|
-
|
|
162
|
-
// RemoveLiquidity -> 0x88d38ed598fdd809c2bf01ee49cd24b7fdabf379a83d29567952b60324d58cef
|
|
163
|
-
describe('RemoveLiquidity', () => {
|
|
164
|
-
it(`State after 16379090`, async () => {
|
|
165
|
-
const blockNumber = 16379090;
|
|
166
|
-
await testEventSubscriber(
|
|
167
|
-
nervePool,
|
|
168
|
-
nervePool.addressesSubscribed,
|
|
169
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
170
|
-
blockNumber,
|
|
171
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
172
|
-
dexHelper.provider,
|
|
173
|
-
);
|
|
174
|
-
});
|
|
175
|
-
it(`State after 16281403`, async () => {
|
|
176
|
-
const blockNumber = 16281403;
|
|
177
|
-
await testEventSubscriber(
|
|
178
|
-
nervePool,
|
|
179
|
-
nervePool.addressesSubscribed,
|
|
180
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
181
|
-
blockNumber,
|
|
182
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
183
|
-
dexHelper.provider,
|
|
184
|
-
);
|
|
185
|
-
});
|
|
186
|
-
it(`State after 16277100`, async () => {
|
|
187
|
-
const blockNumber = 16277100;
|
|
188
|
-
await testEventSubscriber(
|
|
189
|
-
nervePool,
|
|
190
|
-
nervePool.addressesSubscribed,
|
|
191
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
192
|
-
blockNumber,
|
|
193
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
194
|
-
dexHelper.provider,
|
|
195
|
-
);
|
|
196
|
-
});
|
|
197
|
-
it(`State after 16117267`, async () => {
|
|
198
|
-
const blockNumber = 16117267;
|
|
199
|
-
await testEventSubscriber(
|
|
200
|
-
nervePool,
|
|
201
|
-
nervePool.addressesSubscribed,
|
|
202
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
203
|
-
blockNumber,
|
|
204
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
205
|
-
dexHelper.provider,
|
|
206
|
-
);
|
|
207
|
-
});
|
|
208
|
-
it(`State after 15929026`, async () => {
|
|
209
|
-
const blockNumber = 15929026;
|
|
210
|
-
await testEventSubscriber(
|
|
211
|
-
nervePool,
|
|
212
|
-
nervePool.addressesSubscribed,
|
|
213
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
214
|
-
blockNumber,
|
|
215
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
216
|
-
dexHelper.provider,
|
|
217
|
-
);
|
|
218
|
-
});
|
|
219
|
-
});
|
|
220
|
-
|
|
221
|
-
// RemoveLiquidityImbalance -> 0x3631c28b1f9dd213e0319fb167b554d76b6c283a41143eb400a0d1adb1af1755
|
|
222
|
-
describe('RemoveLiquidityImbalance', () => {
|
|
223
|
-
it(`State after 15639364`, async () => {
|
|
224
|
-
const blockNumber = 15639364;
|
|
225
|
-
await testEventSubscriber(
|
|
226
|
-
nervePool,
|
|
227
|
-
nervePool.addressesSubscribed,
|
|
228
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
229
|
-
blockNumber,
|
|
230
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
231
|
-
dexHelper.provider,
|
|
232
|
-
);
|
|
233
|
-
});
|
|
234
|
-
it(`State after 12543503`, async () => {
|
|
235
|
-
const blockNumber = 12543503;
|
|
236
|
-
await testEventSubscriber(
|
|
237
|
-
nervePool,
|
|
238
|
-
nervePool.addressesSubscribed,
|
|
239
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
240
|
-
blockNumber,
|
|
241
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
242
|
-
dexHelper.provider,
|
|
243
|
-
);
|
|
244
|
-
});
|
|
245
|
-
it(`State after 11298608`, async () => {
|
|
246
|
-
const blockNumber = 11298608;
|
|
247
|
-
await testEventSubscriber(
|
|
248
|
-
nervePool,
|
|
249
|
-
nervePool.addressesSubscribed,
|
|
250
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
251
|
-
blockNumber,
|
|
252
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
253
|
-
dexHelper.provider,
|
|
254
|
-
);
|
|
255
|
-
});
|
|
256
|
-
it(`State after 11298568`, async () => {
|
|
257
|
-
const blockNumber = 11298568;
|
|
258
|
-
await testEventSubscriber(
|
|
259
|
-
nervePool,
|
|
260
|
-
nervePool.addressesSubscribed,
|
|
261
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
262
|
-
blockNumber,
|
|
263
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
264
|
-
dexHelper.provider,
|
|
265
|
-
);
|
|
266
|
-
});
|
|
267
|
-
it(`State after 10691460`, async () => {
|
|
268
|
-
const blockNumber = 10691460;
|
|
269
|
-
await testEventSubscriber(
|
|
270
|
-
nervePool,
|
|
271
|
-
nervePool.addressesSubscribed,
|
|
272
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
273
|
-
blockNumber,
|
|
274
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
275
|
-
dexHelper.provider,
|
|
276
|
-
);
|
|
277
|
-
});
|
|
278
|
-
});
|
|
279
|
-
|
|
280
|
-
// NewAdminFee -> 0xab599d640ca80cde2b09b128a4154a8dfe608cb80f4c9399c8b954b01fd35f38
|
|
281
|
-
// Tests are turned off because blocks are too old and I don't receive results from RPC
|
|
282
|
-
// describe('NewAdminFee', () => {
|
|
283
|
-
// it(`State after 7287599`, async () => {
|
|
284
|
-
// const blockNumber = 7287599;
|
|
285
|
-
// await testEventSubscriber(
|
|
286
|
-
// nervePool,
|
|
287
|
-
// nervePool.addressesSubscribed,
|
|
288
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
289
|
-
// blockNumber,
|
|
290
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
291
|
-
// dexHelper.provider,
|
|
292
|
-
// );
|
|
293
|
-
// });
|
|
294
|
-
// });
|
|
295
|
-
|
|
296
|
-
// NewSwapFee -> 0xd88ea5155021c6f8dafa1a741e173f595cdf77ce7c17d43342131d7f06afdfe5
|
|
297
|
-
// Tests are turned off because blocks are too old and I don't receive results from RPC
|
|
298
|
-
// describe('NewSwapFee', () => {
|
|
299
|
-
// it(`State after 7386449`, async () => {
|
|
300
|
-
// const blockNumber = 7386449;
|
|
301
|
-
// await testEventSubscriber(
|
|
302
|
-
// nervePool,
|
|
303
|
-
// nervePool.addressesSubscribed,
|
|
304
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
305
|
-
// blockNumber,
|
|
306
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
307
|
-
// dexHelper.provider,
|
|
308
|
-
// );
|
|
309
|
-
// });
|
|
310
|
-
// it(`State after 6086293`, async () => {
|
|
311
|
-
// const blockNumber = 6086293;
|
|
312
|
-
// await testEventSubscriber(
|
|
313
|
-
// nervePool,
|
|
314
|
-
// nervePool.addressesSubscribed,
|
|
315
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
316
|
-
// blockNumber,
|
|
317
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
318
|
-
// dexHelper.provider,
|
|
319
|
-
// );
|
|
320
|
-
// });
|
|
321
|
-
// });
|
|
322
|
-
|
|
323
|
-
// NewDepositFee -> 0x5237b692334926d9ab50f9d1ac513fe7e153f0cd81dd7c55a09d281d2985d808
|
|
324
|
-
// Tests are turned off because blocks are too old and I don't receive results from RPC
|
|
325
|
-
// describe('NewDepositFee', () => {
|
|
326
|
-
// it(`State after 7035445`, async () => {
|
|
327
|
-
// const blockNumber = 7035445;
|
|
328
|
-
// await testEventSubscriber(
|
|
329
|
-
// nervePool,
|
|
330
|
-
// nervePool.addressesSubscribed,
|
|
331
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
332
|
-
// blockNumber,
|
|
333
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
334
|
-
// dexHelper.provider,
|
|
335
|
-
// );
|
|
336
|
-
// });
|
|
337
|
-
// it(`State after 6086217`, async () => {
|
|
338
|
-
// const blockNumber = 6086217;
|
|
339
|
-
// await testEventSubscriber(
|
|
340
|
-
// nervePool,
|
|
341
|
-
// nervePool.addressesSubscribed,
|
|
342
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
343
|
-
// blockNumber,
|
|
344
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
345
|
-
// dexHelper.provider,
|
|
346
|
-
// );
|
|
347
|
-
// });
|
|
348
|
-
// it(`State after 5654596`, async () => {
|
|
349
|
-
// const blockNumber = 5654596;
|
|
350
|
-
// await testEventSubscriber(
|
|
351
|
-
// nervePool,
|
|
352
|
-
// nervePool.addressesSubscribed,
|
|
353
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
354
|
-
// blockNumber,
|
|
355
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
356
|
-
// dexHelper.provider,
|
|
357
|
-
// );
|
|
358
|
-
// });
|
|
359
|
-
// it(`State after 5453031`, async () => {
|
|
360
|
-
// const blockNumber = 5453031;
|
|
361
|
-
// await testEventSubscriber(
|
|
362
|
-
// nervePool,
|
|
363
|
-
// nervePool.addressesSubscribed,
|
|
364
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
365
|
-
// blockNumber,
|
|
366
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
367
|
-
// dexHelper.provider,
|
|
368
|
-
// );
|
|
369
|
-
// });
|
|
370
|
-
// });
|
|
371
|
-
|
|
372
|
-
// RampA -> 0xa2b71ec6df949300b59aab36b55e189697b750119dd349fcfa8c0f779e83c254
|
|
373
|
-
// Tests are turned off because blocks are too old and I don't receive results from RPC
|
|
374
|
-
// describe('RampA', () => {
|
|
375
|
-
// it(`State after 7385654`, async () => {
|
|
376
|
-
// const blockNumber = 7385654;
|
|
377
|
-
// await testEventSubscriber(
|
|
378
|
-
// nervePool,
|
|
379
|
-
// nervePool.addressesSubscribed,
|
|
380
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
381
|
-
// blockNumber,
|
|
382
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
383
|
-
// dexHelper.provider,
|
|
384
|
-
// );
|
|
385
|
-
// });
|
|
386
|
-
// it(`State after 5914844`, async () => {
|
|
387
|
-
// const blockNumber = 5914844;
|
|
388
|
-
// await testEventSubscriber(
|
|
389
|
-
// nervePool,
|
|
390
|
-
// nervePool.addressesSubscribed,
|
|
391
|
-
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
392
|
-
// blockNumber,
|
|
393
|
-
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
394
|
-
// dexHelper.provider,
|
|
395
|
-
// );
|
|
396
|
-
// });
|
|
397
|
-
// });
|
|
398
|
-
|
|
399
|
-
// RemoveLiquidityOne -> 0x43fb02998f4e03da2e0e6fff53fdbf0c40a9f45f145dc377fc30615d7d7a8a64
|
|
400
|
-
// We do not support RemoveLiquidityOne as it requires onchain call of exact values
|
|
401
|
-
|
|
402
|
-
// NewWithdrawFee -> 0xd5fe46099fa396290a7f57e36c3c3c8774e2562c18ed5d1dcc0fa75071e03f1d
|
|
403
|
-
// No events for NewWithdrawFee
|
|
404
|
-
|
|
405
|
-
// StopRampA -> 0x46e22fb3709ad289f62ce63d469248536dbc78d82b84a3d7e74ad606dc201938
|
|
406
|
-
// No events for StopRampA
|
|
407
|
-
});
|
|
408
|
-
|
|
409
|
-
describe('IronV2 Event Pool Polygon', async () => {
|
|
410
|
-
const dexKey = 'IronV2';
|
|
411
|
-
const poolName = 'IS3USD_POLYGON';
|
|
412
|
-
const network = Network.POLYGON;
|
|
413
|
-
const testPoolAddress = '0x837503e8A8753ae17fB8C8151B8e6f586defCb57'; // IS3USD
|
|
414
|
-
const dexHelper = new DummyDexHelper(network);
|
|
415
|
-
const logger = dexHelper.getLogger(dexKey);
|
|
416
|
-
let nervePool: NerveEventPool;
|
|
417
|
-
|
|
418
|
-
beforeEach(async () => {
|
|
419
|
-
nervePool = new NerveEventPool(
|
|
420
|
-
dexKey,
|
|
421
|
-
network,
|
|
422
|
-
dexHelper,
|
|
423
|
-
logger,
|
|
424
|
-
poolName,
|
|
425
|
-
);
|
|
426
|
-
});
|
|
427
|
-
|
|
428
|
-
// TokenExchange -> 0xb2e76ae99761dc136e598d4a629bb347eccb9532a5f8bbd72e18467c3c34cc98
|
|
429
|
-
describe('TokenExchange', () => {
|
|
430
|
-
it(`State after 27019055`, async () => {
|
|
431
|
-
const blockNumber = 27019055;
|
|
432
|
-
await testEventSubscriber(
|
|
433
|
-
nervePool,
|
|
434
|
-
nervePool.addressesSubscribed,
|
|
435
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
436
|
-
blockNumber,
|
|
437
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
438
|
-
dexHelper.provider,
|
|
439
|
-
);
|
|
440
|
-
});
|
|
441
|
-
it(`State after 27019043`, async () => {
|
|
442
|
-
const blockNumber = 27019043;
|
|
443
|
-
await testEventSubscriber(
|
|
444
|
-
nervePool,
|
|
445
|
-
nervePool.addressesSubscribed,
|
|
446
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
447
|
-
blockNumber,
|
|
448
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
449
|
-
dexHelper.provider,
|
|
450
|
-
);
|
|
451
|
-
});
|
|
452
|
-
it(`State after 27019042`, async () => {
|
|
453
|
-
const blockNumber = 27019042;
|
|
454
|
-
await testEventSubscriber(
|
|
455
|
-
nervePool,
|
|
456
|
-
nervePool.addressesSubscribed,
|
|
457
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
458
|
-
blockNumber,
|
|
459
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
460
|
-
dexHelper.provider,
|
|
461
|
-
);
|
|
462
|
-
});
|
|
463
|
-
it(`State after 27018991`, async () => {
|
|
464
|
-
const blockNumber = 27018991;
|
|
465
|
-
await testEventSubscriber(
|
|
466
|
-
nervePool,
|
|
467
|
-
nervePool.addressesSubscribed,
|
|
468
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
469
|
-
blockNumber,
|
|
470
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
471
|
-
dexHelper.provider,
|
|
472
|
-
);
|
|
473
|
-
});
|
|
474
|
-
it(`State after 27018933`, async () => {
|
|
475
|
-
const blockNumber = 27018933;
|
|
476
|
-
await testEventSubscriber(
|
|
477
|
-
nervePool,
|
|
478
|
-
nervePool.addressesSubscribed,
|
|
479
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
480
|
-
blockNumber,
|
|
481
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
482
|
-
dexHelper.provider,
|
|
483
|
-
);
|
|
484
|
-
});
|
|
485
|
-
});
|
|
486
|
-
|
|
487
|
-
// AddLiquidity -> 0x189c623b666b1b45b83d7178f39b8c087cb09774317ca2f53c2d3c3726f222a2
|
|
488
|
-
describe('AddLiquidity', () => {
|
|
489
|
-
it(`State after 27019013`, async () => {
|
|
490
|
-
const blockNumber = 27019013;
|
|
491
|
-
await testEventSubscriber(
|
|
492
|
-
nervePool,
|
|
493
|
-
nervePool.addressesSubscribed,
|
|
494
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
495
|
-
blockNumber,
|
|
496
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
497
|
-
dexHelper.provider,
|
|
498
|
-
);
|
|
499
|
-
});
|
|
500
|
-
it(`State after 27017516`, async () => {
|
|
501
|
-
const blockNumber = 27017516;
|
|
502
|
-
await testEventSubscriber(
|
|
503
|
-
nervePool,
|
|
504
|
-
nervePool.addressesSubscribed,
|
|
505
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
506
|
-
blockNumber,
|
|
507
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
508
|
-
dexHelper.provider,
|
|
509
|
-
);
|
|
510
|
-
});
|
|
511
|
-
it(`State after 27017515`, async () => {
|
|
512
|
-
const blockNumber = 27017515;
|
|
513
|
-
await testEventSubscriber(
|
|
514
|
-
nervePool,
|
|
515
|
-
nervePool.addressesSubscribed,
|
|
516
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
517
|
-
blockNumber,
|
|
518
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
519
|
-
dexHelper.provider,
|
|
520
|
-
);
|
|
521
|
-
});
|
|
522
|
-
it(`State after 27017333`, async () => {
|
|
523
|
-
const blockNumber = 27017333;
|
|
524
|
-
await testEventSubscriber(
|
|
525
|
-
nervePool,
|
|
526
|
-
nervePool.addressesSubscribed,
|
|
527
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
528
|
-
blockNumber,
|
|
529
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
530
|
-
dexHelper.provider,
|
|
531
|
-
);
|
|
532
|
-
});
|
|
533
|
-
it(`State after 27015656`, async () => {
|
|
534
|
-
const blockNumber = 27015656;
|
|
535
|
-
await testEventSubscriber(
|
|
536
|
-
nervePool,
|
|
537
|
-
nervePool.addressesSubscribed,
|
|
538
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
539
|
-
blockNumber,
|
|
540
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
541
|
-
dexHelper.provider,
|
|
542
|
-
);
|
|
543
|
-
});
|
|
544
|
-
});
|
|
545
|
-
|
|
546
|
-
// RemoveLiquidity -> 0x347ad828e58cbe534d8f6b67985d791360756b18f0d95fd9f197a66cc46480ea
|
|
547
|
-
describe('RemoveLiquidity', () => {
|
|
548
|
-
it(`State after 27009010`, async () => {
|
|
549
|
-
const blockNumber = 27009010;
|
|
550
|
-
await testEventSubscriber(
|
|
551
|
-
nervePool,
|
|
552
|
-
nervePool.addressesSubscribed,
|
|
553
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
554
|
-
blockNumber,
|
|
555
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
556
|
-
dexHelper.provider,
|
|
557
|
-
);
|
|
558
|
-
});
|
|
559
|
-
it(`State after 26993341`, async () => {
|
|
560
|
-
const blockNumber = 26993341;
|
|
561
|
-
await testEventSubscriber(
|
|
562
|
-
nervePool,
|
|
563
|
-
nervePool.addressesSubscribed,
|
|
564
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
565
|
-
blockNumber,
|
|
566
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
567
|
-
dexHelper.provider,
|
|
568
|
-
);
|
|
569
|
-
});
|
|
570
|
-
it(`State after 26993296`, async () => {
|
|
571
|
-
const blockNumber = 26993296;
|
|
572
|
-
await testEventSubscriber(
|
|
573
|
-
nervePool,
|
|
574
|
-
nervePool.addressesSubscribed,
|
|
575
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
576
|
-
blockNumber,
|
|
577
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
578
|
-
dexHelper.provider,
|
|
579
|
-
);
|
|
580
|
-
});
|
|
581
|
-
it(`State after 26973410`, async () => {
|
|
582
|
-
const blockNumber = 26973410;
|
|
583
|
-
await testEventSubscriber(
|
|
584
|
-
nervePool,
|
|
585
|
-
nervePool.addressesSubscribed,
|
|
586
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
587
|
-
blockNumber,
|
|
588
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
589
|
-
dexHelper.provider,
|
|
590
|
-
);
|
|
591
|
-
});
|
|
592
|
-
it(`State after 26749868`, async () => {
|
|
593
|
-
const blockNumber = 26749868;
|
|
594
|
-
await testEventSubscriber(
|
|
595
|
-
nervePool,
|
|
596
|
-
nervePool.addressesSubscribed,
|
|
597
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
598
|
-
blockNumber,
|
|
599
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
600
|
-
dexHelper.provider,
|
|
601
|
-
);
|
|
602
|
-
});
|
|
603
|
-
});
|
|
604
|
-
|
|
605
|
-
// NewFee -> 0xcfca96e0fef3432146913b2a5a2268a55d3f475fe057e7ffde1082b77693f4f3
|
|
606
|
-
describe('NewFee', () => {
|
|
607
|
-
it(`State after 17064317`, async () => {
|
|
608
|
-
const blockNumber = 17064317;
|
|
609
|
-
await testEventSubscriber(
|
|
610
|
-
nervePool,
|
|
611
|
-
nervePool.addressesSubscribed,
|
|
612
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
613
|
-
blockNumber,
|
|
614
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
615
|
-
dexHelper.provider,
|
|
616
|
-
);
|
|
617
|
-
});
|
|
618
|
-
it(`State after 16813530`, async () => {
|
|
619
|
-
const blockNumber = 16813530;
|
|
620
|
-
await testEventSubscriber(
|
|
621
|
-
nervePool,
|
|
622
|
-
nervePool.addressesSubscribed,
|
|
623
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
624
|
-
blockNumber,
|
|
625
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
626
|
-
dexHelper.provider,
|
|
627
|
-
);
|
|
628
|
-
});
|
|
629
|
-
it(`State after 16632075`, async () => {
|
|
630
|
-
const blockNumber = 16632075;
|
|
631
|
-
await testEventSubscriber(
|
|
632
|
-
nervePool,
|
|
633
|
-
nervePool.addressesSubscribed,
|
|
634
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
635
|
-
blockNumber,
|
|
636
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
637
|
-
dexHelper.provider,
|
|
638
|
-
);
|
|
639
|
-
});
|
|
640
|
-
});
|
|
641
|
-
|
|
642
|
-
// RampA -> 0xa2b71ec6df949300b59aab36b55e189697b750119dd349fcfa8c0f779e83c254
|
|
643
|
-
describe('RampA', () => {
|
|
644
|
-
it(`State after 17202291`, async () => {
|
|
645
|
-
const blockNumber = 17202291;
|
|
646
|
-
await testEventSubscriber(
|
|
647
|
-
nervePool,
|
|
648
|
-
nervePool.addressesSubscribed,
|
|
649
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
650
|
-
blockNumber,
|
|
651
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
652
|
-
dexHelper.provider,
|
|
653
|
-
);
|
|
654
|
-
});
|
|
655
|
-
it(`State after 17132310`, async () => {
|
|
656
|
-
const blockNumber = 17132310;
|
|
657
|
-
await testEventSubscriber(
|
|
658
|
-
nervePool,
|
|
659
|
-
nervePool.addressesSubscribed,
|
|
660
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
661
|
-
blockNumber,
|
|
662
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
663
|
-
dexHelper.provider,
|
|
664
|
-
);
|
|
665
|
-
});
|
|
666
|
-
it(`State after 17062453`, async () => {
|
|
667
|
-
const blockNumber = 17062453;
|
|
668
|
-
await testEventSubscriber(
|
|
669
|
-
nervePool,
|
|
670
|
-
nervePool.addressesSubscribed,
|
|
671
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
672
|
-
blockNumber,
|
|
673
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
674
|
-
dexHelper.provider,
|
|
675
|
-
);
|
|
676
|
-
});
|
|
677
|
-
it(`State after 16809165`, async () => {
|
|
678
|
-
const blockNumber = 16809165;
|
|
679
|
-
await testEventSubscriber(
|
|
680
|
-
nervePool,
|
|
681
|
-
nervePool.addressesSubscribed,
|
|
682
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
683
|
-
blockNumber,
|
|
684
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
685
|
-
dexHelper.provider,
|
|
686
|
-
);
|
|
687
|
-
});
|
|
688
|
-
});
|
|
689
|
-
|
|
690
|
-
// StopRampA -> 0x46e22fb3709ad289f62ce63d469248536dbc78d82b84a3d7e74ad606dc201938
|
|
691
|
-
describe('StopRampA', () => {
|
|
692
|
-
it(`State after 17095506`, async () => {
|
|
693
|
-
const blockNumber = 17095506;
|
|
694
|
-
await testEventSubscriber(
|
|
695
|
-
nervePool,
|
|
696
|
-
nervePool.addressesSubscribed,
|
|
697
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
698
|
-
blockNumber,
|
|
699
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
700
|
-
dexHelper.provider,
|
|
701
|
-
);
|
|
702
|
-
});
|
|
703
|
-
});
|
|
704
|
-
|
|
705
|
-
// RemoveLiquidityOne -> 0x5ad056f2e28a8cec232015406b843668c1e36cda598127ec3b8c59b8c72773a0
|
|
706
|
-
// We do not support RemoveLiquidityOne as it requires onchain call of exact values
|
|
707
|
-
|
|
708
|
-
// RemoveLiquidityImbalance -> 0x3631c28b1f9dd213e0319fb167b554d76b6c283a41143eb400a0d1adb1af1755
|
|
709
|
-
// No events for RemoveLiquidityImbalance
|
|
710
|
-
});
|
|
711
|
-
|
|
712
|
-
describe('Synapse Event Pool Arbitrum', async () => {
|
|
713
|
-
const dexKey = 'Synapse';
|
|
714
|
-
const network = Network.ARBITRUM;
|
|
715
|
-
const poolName = 'nUSDV3';
|
|
716
|
-
const testPoolAddress = '0x9Dd329F5411466d9e0C488fF72519CA9fEf0cb40'; // nUSDV3
|
|
717
|
-
const dexHelper = new DummyDexHelper(network);
|
|
718
|
-
const logger = dexHelper.getLogger(dexKey);
|
|
719
|
-
let nervePool: NerveEventPool;
|
|
720
|
-
|
|
721
|
-
beforeEach(async () => {
|
|
722
|
-
nervePool = new NerveEventPool(
|
|
723
|
-
dexKey,
|
|
724
|
-
network,
|
|
725
|
-
dexHelper,
|
|
726
|
-
logger,
|
|
727
|
-
poolName,
|
|
728
|
-
);
|
|
729
|
-
});
|
|
730
|
-
|
|
731
|
-
// TokenSwap -> 0xc6c1e0630dbe9130cc068028486c0d118ddcea348550819defd5cb8c257f8a38
|
|
732
|
-
describe('TokenSwap', () => {
|
|
733
|
-
it(`State after 17256191`, async () => {
|
|
734
|
-
const blockNumber = 17256191;
|
|
735
|
-
await testEventSubscriber(
|
|
736
|
-
nervePool,
|
|
737
|
-
nervePool.addressesSubscribed,
|
|
738
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
739
|
-
blockNumber,
|
|
740
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
741
|
-
dexHelper.provider,
|
|
742
|
-
);
|
|
743
|
-
});
|
|
744
|
-
it(`State after 17256467`, async () => {
|
|
745
|
-
const blockNumber = 17256467;
|
|
746
|
-
await testEventSubscriber(
|
|
747
|
-
nervePool,
|
|
748
|
-
nervePool.addressesSubscribed,
|
|
749
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
750
|
-
blockNumber,
|
|
751
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
752
|
-
dexHelper.provider,
|
|
753
|
-
);
|
|
754
|
-
});
|
|
755
|
-
it(`State after 17256191`, async () => {
|
|
756
|
-
const blockNumber = 17256191;
|
|
757
|
-
await testEventSubscriber(
|
|
758
|
-
nervePool,
|
|
759
|
-
nervePool.addressesSubscribed,
|
|
760
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
761
|
-
blockNumber,
|
|
762
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
763
|
-
dexHelper.provider,
|
|
764
|
-
);
|
|
765
|
-
});
|
|
766
|
-
it(`State after 17256173 `, async () => {
|
|
767
|
-
const blockNumber = 17256173;
|
|
768
|
-
await testEventSubscriber(
|
|
769
|
-
nervePool,
|
|
770
|
-
nervePool.addressesSubscribed,
|
|
771
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
772
|
-
blockNumber,
|
|
773
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
774
|
-
dexHelper.provider,
|
|
775
|
-
);
|
|
776
|
-
});
|
|
777
|
-
it(`State after 17256144`, async () => {
|
|
778
|
-
const blockNumber = 17256144;
|
|
779
|
-
await testEventSubscriber(
|
|
780
|
-
nervePool,
|
|
781
|
-
nervePool.addressesSubscribed,
|
|
782
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
783
|
-
blockNumber,
|
|
784
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
785
|
-
dexHelper.provider,
|
|
786
|
-
);
|
|
787
|
-
});
|
|
788
|
-
});
|
|
789
|
-
|
|
790
|
-
// AddLiquidity -> 0x189c623b666b1b45b83d7178f39b8c087cb09774317ca2f53c2d3c3726f222a2
|
|
791
|
-
describe('AddLiquidity', () => {
|
|
792
|
-
it(`State after 17220979`, async () => {
|
|
793
|
-
const blockNumber = 17220979;
|
|
794
|
-
await testEventSubscriber(
|
|
795
|
-
nervePool,
|
|
796
|
-
nervePool.addressesSubscribed,
|
|
797
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
798
|
-
blockNumber,
|
|
799
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
800
|
-
dexHelper.provider,
|
|
801
|
-
);
|
|
802
|
-
});
|
|
803
|
-
it(`State after 17186516`, async () => {
|
|
804
|
-
const blockNumber = 17186516;
|
|
805
|
-
await testEventSubscriber(
|
|
806
|
-
nervePool,
|
|
807
|
-
nervePool.addressesSubscribed,
|
|
808
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
809
|
-
blockNumber,
|
|
810
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
811
|
-
dexHelper.provider,
|
|
812
|
-
);
|
|
813
|
-
});
|
|
814
|
-
it(`State after 17186114`, async () => {
|
|
815
|
-
const blockNumber = 17186114;
|
|
816
|
-
await testEventSubscriber(
|
|
817
|
-
nervePool,
|
|
818
|
-
nervePool.addressesSubscribed,
|
|
819
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
820
|
-
blockNumber,
|
|
821
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
822
|
-
dexHelper.provider,
|
|
823
|
-
);
|
|
824
|
-
});
|
|
825
|
-
it(`State after 17180822`, async () => {
|
|
826
|
-
const blockNumber = 17180822;
|
|
827
|
-
await testEventSubscriber(
|
|
828
|
-
nervePool,
|
|
829
|
-
nervePool.addressesSubscribed,
|
|
830
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
831
|
-
blockNumber,
|
|
832
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
833
|
-
dexHelper.provider,
|
|
834
|
-
);
|
|
835
|
-
});
|
|
836
|
-
it(`State after 17154508`, async () => {
|
|
837
|
-
const blockNumber = 17154508;
|
|
838
|
-
await testEventSubscriber(
|
|
839
|
-
nervePool,
|
|
840
|
-
nervePool.addressesSubscribed,
|
|
841
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
842
|
-
blockNumber,
|
|
843
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
844
|
-
dexHelper.provider,
|
|
845
|
-
);
|
|
846
|
-
});
|
|
847
|
-
});
|
|
848
|
-
|
|
849
|
-
// RemoveLiquidity -> 0x88d38ed598fdd809c2bf01ee49cd24b7fdabf379a83d29567952b60324d58cef
|
|
850
|
-
describe('RemoveLiquidity', () => {
|
|
851
|
-
it(`State after 17232908`, async () => {
|
|
852
|
-
const blockNumber = 17232908;
|
|
853
|
-
await testEventSubscriber(
|
|
854
|
-
nervePool,
|
|
855
|
-
nervePool.addressesSubscribed,
|
|
856
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
857
|
-
blockNumber,
|
|
858
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
859
|
-
dexHelper.provider,
|
|
860
|
-
);
|
|
861
|
-
});
|
|
862
|
-
it(`State after 17154430`, async () => {
|
|
863
|
-
const blockNumber = 17154430;
|
|
864
|
-
await testEventSubscriber(
|
|
865
|
-
nervePool,
|
|
866
|
-
nervePool.addressesSubscribed,
|
|
867
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
868
|
-
blockNumber,
|
|
869
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
870
|
-
dexHelper.provider,
|
|
871
|
-
);
|
|
872
|
-
});
|
|
873
|
-
it(`State after 16780865`, async () => {
|
|
874
|
-
const blockNumber = 16780865;
|
|
875
|
-
await testEventSubscriber(
|
|
876
|
-
nervePool,
|
|
877
|
-
nervePool.addressesSubscribed,
|
|
878
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
879
|
-
blockNumber,
|
|
880
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
881
|
-
dexHelper.provider,
|
|
882
|
-
);
|
|
883
|
-
});
|
|
884
|
-
it(`State after 13691211`, async () => {
|
|
885
|
-
const blockNumber = 13691211;
|
|
886
|
-
await testEventSubscriber(
|
|
887
|
-
nervePool,
|
|
888
|
-
nervePool.addressesSubscribed,
|
|
889
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
890
|
-
blockNumber,
|
|
891
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
892
|
-
dexHelper.provider,
|
|
893
|
-
);
|
|
894
|
-
});
|
|
895
|
-
});
|
|
896
|
-
|
|
897
|
-
// NewSwapFee -> 0xd88ea5155021c6f8dafa1a741e173f595cdf77ce7c17d43342131d7f06afdfe5
|
|
898
|
-
describe('NewSwapFee', () => {
|
|
899
|
-
it(`State after 11349722`, async () => {
|
|
900
|
-
const blockNumber = 11349722;
|
|
901
|
-
await testEventSubscriber(
|
|
902
|
-
nervePool,
|
|
903
|
-
nervePool.addressesSubscribed,
|
|
904
|
-
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
905
|
-
blockNumber,
|
|
906
|
-
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
907
|
-
dexHelper.provider,
|
|
908
|
-
);
|
|
909
|
-
});
|
|
910
|
-
});
|
|
911
|
-
});
|
|
1
|
+
import dotenv from 'dotenv';
|
|
2
|
+
dotenv.config();
|
|
3
|
+
import _ from 'lodash';
|
|
4
|
+
import { NerveEventPool } from './nerve-pool';
|
|
5
|
+
import { Network } from '../../constants';
|
|
6
|
+
import { DummyDexHelper } from '../../dex-helper/index';
|
|
7
|
+
import { testEventSubscriber } from '../../../tests/utils-events';
|
|
8
|
+
import { PoolState } from './types';
|
|
9
|
+
import { typeCastPoolState } from './utils';
|
|
10
|
+
import { Nerve } from './nerve';
|
|
11
|
+
import { threePoolName } from './config';
|
|
12
|
+
|
|
13
|
+
jest.setTimeout(50 * 1000);
|
|
14
|
+
|
|
15
|
+
async function fetchPoolState(
|
|
16
|
+
nervePool: NerveEventPool,
|
|
17
|
+
blockNumber: number,
|
|
18
|
+
): Promise<PoolState> {
|
|
19
|
+
// It generates data from onchain data
|
|
20
|
+
return typeCastPoolState(
|
|
21
|
+
_.cloneDeep(await nervePool.generateState(blockNumber)),
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
describe('Nerve Event Pool BSC', async () => {
|
|
26
|
+
const dexKey = 'Nerve';
|
|
27
|
+
const poolName = threePoolName;
|
|
28
|
+
const network = Network.BSC;
|
|
29
|
+
const testPoolAddress = '0x1B3771a66ee31180906972580adE9b81AFc5fCDc'; // 3Pool
|
|
30
|
+
const dexHelper = new DummyDexHelper(network);
|
|
31
|
+
const logger = dexHelper.getLogger(dexKey);
|
|
32
|
+
let nervePool: NerveEventPool;
|
|
33
|
+
|
|
34
|
+
beforeEach(async () => {
|
|
35
|
+
nervePool = new NerveEventPool(
|
|
36
|
+
dexKey,
|
|
37
|
+
network,
|
|
38
|
+
dexHelper,
|
|
39
|
+
logger,
|
|
40
|
+
poolName,
|
|
41
|
+
);
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
// TokenSwap -> 0xc6c1e0630dbe9130cc068028486c0d118ddcea348550819defd5cb8c257f8a38
|
|
45
|
+
describe('TokenSwap', () => {
|
|
46
|
+
it(`State after 16847285`, async () => {
|
|
47
|
+
const blockNumber = 16847285;
|
|
48
|
+
await testEventSubscriber(
|
|
49
|
+
nervePool,
|
|
50
|
+
nervePool.addressesSubscribed,
|
|
51
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
52
|
+
blockNumber,
|
|
53
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
54
|
+
dexHelper.provider,
|
|
55
|
+
);
|
|
56
|
+
});
|
|
57
|
+
it(`State after 16847392`, async () => {
|
|
58
|
+
const blockNumber = 16847392;
|
|
59
|
+
await testEventSubscriber(
|
|
60
|
+
nervePool,
|
|
61
|
+
nervePool.addressesSubscribed,
|
|
62
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
63
|
+
blockNumber,
|
|
64
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
65
|
+
dexHelper.provider,
|
|
66
|
+
);
|
|
67
|
+
});
|
|
68
|
+
it(`State after 16847496`, async () => {
|
|
69
|
+
const blockNumber = 16847496;
|
|
70
|
+
await testEventSubscriber(
|
|
71
|
+
nervePool,
|
|
72
|
+
nervePool.addressesSubscribed,
|
|
73
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
74
|
+
blockNumber,
|
|
75
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
76
|
+
dexHelper.provider,
|
|
77
|
+
);
|
|
78
|
+
});
|
|
79
|
+
it(`State after 16853100`, async () => {
|
|
80
|
+
const blockNumber = 16853100;
|
|
81
|
+
await testEventSubscriber(
|
|
82
|
+
nervePool,
|
|
83
|
+
nervePool.addressesSubscribed,
|
|
84
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
85
|
+
blockNumber,
|
|
86
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
87
|
+
dexHelper.provider,
|
|
88
|
+
);
|
|
89
|
+
});
|
|
90
|
+
it(`State after 16852788`, async () => {
|
|
91
|
+
const blockNumber = 16852788;
|
|
92
|
+
await testEventSubscriber(
|
|
93
|
+
nervePool,
|
|
94
|
+
nervePool.addressesSubscribed,
|
|
95
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
96
|
+
blockNumber,
|
|
97
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
98
|
+
dexHelper.provider,
|
|
99
|
+
);
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
// AddLiquidity -> 0x189c623b666b1b45b83d7178f39b8c087cb09774317ca2f53c2d3c3726f222a2
|
|
104
|
+
describe('AddLiquidity', () => {
|
|
105
|
+
it(`State after 16714695`, async () => {
|
|
106
|
+
const blockNumber = 16714695;
|
|
107
|
+
await testEventSubscriber(
|
|
108
|
+
nervePool,
|
|
109
|
+
nervePool.addressesSubscribed,
|
|
110
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
111
|
+
blockNumber,
|
|
112
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
113
|
+
dexHelper.provider,
|
|
114
|
+
);
|
|
115
|
+
});
|
|
116
|
+
it(`State after 16714525`, async () => {
|
|
117
|
+
const blockNumber = 16714525;
|
|
118
|
+
await testEventSubscriber(
|
|
119
|
+
nervePool,
|
|
120
|
+
nervePool.addressesSubscribed,
|
|
121
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
122
|
+
blockNumber,
|
|
123
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
124
|
+
dexHelper.provider,
|
|
125
|
+
);
|
|
126
|
+
});
|
|
127
|
+
it(`State after 16630557`, async () => {
|
|
128
|
+
const blockNumber = 16630557;
|
|
129
|
+
await testEventSubscriber(
|
|
130
|
+
nervePool,
|
|
131
|
+
nervePool.addressesSubscribed,
|
|
132
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
133
|
+
blockNumber,
|
|
134
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
135
|
+
dexHelper.provider,
|
|
136
|
+
);
|
|
137
|
+
});
|
|
138
|
+
it(`State after 16222709`, async () => {
|
|
139
|
+
const blockNumber = 16222709;
|
|
140
|
+
await testEventSubscriber(
|
|
141
|
+
nervePool,
|
|
142
|
+
nervePool.addressesSubscribed,
|
|
143
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
144
|
+
blockNumber,
|
|
145
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
146
|
+
dexHelper.provider,
|
|
147
|
+
);
|
|
148
|
+
});
|
|
149
|
+
it(`State after 16116914`, async () => {
|
|
150
|
+
const blockNumber = 16116914;
|
|
151
|
+
await testEventSubscriber(
|
|
152
|
+
nervePool,
|
|
153
|
+
nervePool.addressesSubscribed,
|
|
154
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
155
|
+
blockNumber,
|
|
156
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
157
|
+
dexHelper.provider,
|
|
158
|
+
);
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
// RemoveLiquidity -> 0x88d38ed598fdd809c2bf01ee49cd24b7fdabf379a83d29567952b60324d58cef
|
|
163
|
+
describe('RemoveLiquidity', () => {
|
|
164
|
+
it(`State after 16379090`, async () => {
|
|
165
|
+
const blockNumber = 16379090;
|
|
166
|
+
await testEventSubscriber(
|
|
167
|
+
nervePool,
|
|
168
|
+
nervePool.addressesSubscribed,
|
|
169
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
170
|
+
blockNumber,
|
|
171
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
172
|
+
dexHelper.provider,
|
|
173
|
+
);
|
|
174
|
+
});
|
|
175
|
+
it(`State after 16281403`, async () => {
|
|
176
|
+
const blockNumber = 16281403;
|
|
177
|
+
await testEventSubscriber(
|
|
178
|
+
nervePool,
|
|
179
|
+
nervePool.addressesSubscribed,
|
|
180
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
181
|
+
blockNumber,
|
|
182
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
183
|
+
dexHelper.provider,
|
|
184
|
+
);
|
|
185
|
+
});
|
|
186
|
+
it(`State after 16277100`, async () => {
|
|
187
|
+
const blockNumber = 16277100;
|
|
188
|
+
await testEventSubscriber(
|
|
189
|
+
nervePool,
|
|
190
|
+
nervePool.addressesSubscribed,
|
|
191
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
192
|
+
blockNumber,
|
|
193
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
194
|
+
dexHelper.provider,
|
|
195
|
+
);
|
|
196
|
+
});
|
|
197
|
+
it(`State after 16117267`, async () => {
|
|
198
|
+
const blockNumber = 16117267;
|
|
199
|
+
await testEventSubscriber(
|
|
200
|
+
nervePool,
|
|
201
|
+
nervePool.addressesSubscribed,
|
|
202
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
203
|
+
blockNumber,
|
|
204
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
205
|
+
dexHelper.provider,
|
|
206
|
+
);
|
|
207
|
+
});
|
|
208
|
+
it(`State after 15929026`, async () => {
|
|
209
|
+
const blockNumber = 15929026;
|
|
210
|
+
await testEventSubscriber(
|
|
211
|
+
nervePool,
|
|
212
|
+
nervePool.addressesSubscribed,
|
|
213
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
214
|
+
blockNumber,
|
|
215
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
216
|
+
dexHelper.provider,
|
|
217
|
+
);
|
|
218
|
+
});
|
|
219
|
+
});
|
|
220
|
+
|
|
221
|
+
// RemoveLiquidityImbalance -> 0x3631c28b1f9dd213e0319fb167b554d76b6c283a41143eb400a0d1adb1af1755
|
|
222
|
+
describe('RemoveLiquidityImbalance', () => {
|
|
223
|
+
it(`State after 15639364`, async () => {
|
|
224
|
+
const blockNumber = 15639364;
|
|
225
|
+
await testEventSubscriber(
|
|
226
|
+
nervePool,
|
|
227
|
+
nervePool.addressesSubscribed,
|
|
228
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
229
|
+
blockNumber,
|
|
230
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
231
|
+
dexHelper.provider,
|
|
232
|
+
);
|
|
233
|
+
});
|
|
234
|
+
it(`State after 12543503`, async () => {
|
|
235
|
+
const blockNumber = 12543503;
|
|
236
|
+
await testEventSubscriber(
|
|
237
|
+
nervePool,
|
|
238
|
+
nervePool.addressesSubscribed,
|
|
239
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
240
|
+
blockNumber,
|
|
241
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
242
|
+
dexHelper.provider,
|
|
243
|
+
);
|
|
244
|
+
});
|
|
245
|
+
it(`State after 11298608`, async () => {
|
|
246
|
+
const blockNumber = 11298608;
|
|
247
|
+
await testEventSubscriber(
|
|
248
|
+
nervePool,
|
|
249
|
+
nervePool.addressesSubscribed,
|
|
250
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
251
|
+
blockNumber,
|
|
252
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
253
|
+
dexHelper.provider,
|
|
254
|
+
);
|
|
255
|
+
});
|
|
256
|
+
it(`State after 11298568`, async () => {
|
|
257
|
+
const blockNumber = 11298568;
|
|
258
|
+
await testEventSubscriber(
|
|
259
|
+
nervePool,
|
|
260
|
+
nervePool.addressesSubscribed,
|
|
261
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
262
|
+
blockNumber,
|
|
263
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
264
|
+
dexHelper.provider,
|
|
265
|
+
);
|
|
266
|
+
});
|
|
267
|
+
it(`State after 10691460`, async () => {
|
|
268
|
+
const blockNumber = 10691460;
|
|
269
|
+
await testEventSubscriber(
|
|
270
|
+
nervePool,
|
|
271
|
+
nervePool.addressesSubscribed,
|
|
272
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
273
|
+
blockNumber,
|
|
274
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
275
|
+
dexHelper.provider,
|
|
276
|
+
);
|
|
277
|
+
});
|
|
278
|
+
});
|
|
279
|
+
|
|
280
|
+
// NewAdminFee -> 0xab599d640ca80cde2b09b128a4154a8dfe608cb80f4c9399c8b954b01fd35f38
|
|
281
|
+
// Tests are turned off because blocks are too old and I don't receive results from RPC
|
|
282
|
+
// describe('NewAdminFee', () => {
|
|
283
|
+
// it(`State after 7287599`, async () => {
|
|
284
|
+
// const blockNumber = 7287599;
|
|
285
|
+
// await testEventSubscriber(
|
|
286
|
+
// nervePool,
|
|
287
|
+
// nervePool.addressesSubscribed,
|
|
288
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
289
|
+
// blockNumber,
|
|
290
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
291
|
+
// dexHelper.provider,
|
|
292
|
+
// );
|
|
293
|
+
// });
|
|
294
|
+
// });
|
|
295
|
+
|
|
296
|
+
// NewSwapFee -> 0xd88ea5155021c6f8dafa1a741e173f595cdf77ce7c17d43342131d7f06afdfe5
|
|
297
|
+
// Tests are turned off because blocks are too old and I don't receive results from RPC
|
|
298
|
+
// describe('NewSwapFee', () => {
|
|
299
|
+
// it(`State after 7386449`, async () => {
|
|
300
|
+
// const blockNumber = 7386449;
|
|
301
|
+
// await testEventSubscriber(
|
|
302
|
+
// nervePool,
|
|
303
|
+
// nervePool.addressesSubscribed,
|
|
304
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
305
|
+
// blockNumber,
|
|
306
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
307
|
+
// dexHelper.provider,
|
|
308
|
+
// );
|
|
309
|
+
// });
|
|
310
|
+
// it(`State after 6086293`, async () => {
|
|
311
|
+
// const blockNumber = 6086293;
|
|
312
|
+
// await testEventSubscriber(
|
|
313
|
+
// nervePool,
|
|
314
|
+
// nervePool.addressesSubscribed,
|
|
315
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
316
|
+
// blockNumber,
|
|
317
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
318
|
+
// dexHelper.provider,
|
|
319
|
+
// );
|
|
320
|
+
// });
|
|
321
|
+
// });
|
|
322
|
+
|
|
323
|
+
// NewDepositFee -> 0x5237b692334926d9ab50f9d1ac513fe7e153f0cd81dd7c55a09d281d2985d808
|
|
324
|
+
// Tests are turned off because blocks are too old and I don't receive results from RPC
|
|
325
|
+
// describe('NewDepositFee', () => {
|
|
326
|
+
// it(`State after 7035445`, async () => {
|
|
327
|
+
// const blockNumber = 7035445;
|
|
328
|
+
// await testEventSubscriber(
|
|
329
|
+
// nervePool,
|
|
330
|
+
// nervePool.addressesSubscribed,
|
|
331
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
332
|
+
// blockNumber,
|
|
333
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
334
|
+
// dexHelper.provider,
|
|
335
|
+
// );
|
|
336
|
+
// });
|
|
337
|
+
// it(`State after 6086217`, async () => {
|
|
338
|
+
// const blockNumber = 6086217;
|
|
339
|
+
// await testEventSubscriber(
|
|
340
|
+
// nervePool,
|
|
341
|
+
// nervePool.addressesSubscribed,
|
|
342
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
343
|
+
// blockNumber,
|
|
344
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
345
|
+
// dexHelper.provider,
|
|
346
|
+
// );
|
|
347
|
+
// });
|
|
348
|
+
// it(`State after 5654596`, async () => {
|
|
349
|
+
// const blockNumber = 5654596;
|
|
350
|
+
// await testEventSubscriber(
|
|
351
|
+
// nervePool,
|
|
352
|
+
// nervePool.addressesSubscribed,
|
|
353
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
354
|
+
// blockNumber,
|
|
355
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
356
|
+
// dexHelper.provider,
|
|
357
|
+
// );
|
|
358
|
+
// });
|
|
359
|
+
// it(`State after 5453031`, async () => {
|
|
360
|
+
// const blockNumber = 5453031;
|
|
361
|
+
// await testEventSubscriber(
|
|
362
|
+
// nervePool,
|
|
363
|
+
// nervePool.addressesSubscribed,
|
|
364
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
365
|
+
// blockNumber,
|
|
366
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
367
|
+
// dexHelper.provider,
|
|
368
|
+
// );
|
|
369
|
+
// });
|
|
370
|
+
// });
|
|
371
|
+
|
|
372
|
+
// RampA -> 0xa2b71ec6df949300b59aab36b55e189697b750119dd349fcfa8c0f779e83c254
|
|
373
|
+
// Tests are turned off because blocks are too old and I don't receive results from RPC
|
|
374
|
+
// describe('RampA', () => {
|
|
375
|
+
// it(`State after 7385654`, async () => {
|
|
376
|
+
// const blockNumber = 7385654;
|
|
377
|
+
// await testEventSubscriber(
|
|
378
|
+
// nervePool,
|
|
379
|
+
// nervePool.addressesSubscribed,
|
|
380
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
381
|
+
// blockNumber,
|
|
382
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
383
|
+
// dexHelper.provider,
|
|
384
|
+
// );
|
|
385
|
+
// });
|
|
386
|
+
// it(`State after 5914844`, async () => {
|
|
387
|
+
// const blockNumber = 5914844;
|
|
388
|
+
// await testEventSubscriber(
|
|
389
|
+
// nervePool,
|
|
390
|
+
// nervePool.addressesSubscribed,
|
|
391
|
+
// (_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
392
|
+
// blockNumber,
|
|
393
|
+
// Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
394
|
+
// dexHelper.provider,
|
|
395
|
+
// );
|
|
396
|
+
// });
|
|
397
|
+
// });
|
|
398
|
+
|
|
399
|
+
// RemoveLiquidityOne -> 0x43fb02998f4e03da2e0e6fff53fdbf0c40a9f45f145dc377fc30615d7d7a8a64
|
|
400
|
+
// We do not support RemoveLiquidityOne as it requires onchain call of exact values
|
|
401
|
+
|
|
402
|
+
// NewWithdrawFee -> 0xd5fe46099fa396290a7f57e36c3c3c8774e2562c18ed5d1dcc0fa75071e03f1d
|
|
403
|
+
// No events for NewWithdrawFee
|
|
404
|
+
|
|
405
|
+
// StopRampA -> 0x46e22fb3709ad289f62ce63d469248536dbc78d82b84a3d7e74ad606dc201938
|
|
406
|
+
// No events for StopRampA
|
|
407
|
+
});
|
|
408
|
+
|
|
409
|
+
describe('IronV2 Event Pool Polygon', async () => {
|
|
410
|
+
const dexKey = 'IronV2';
|
|
411
|
+
const poolName = 'IS3USD_POLYGON';
|
|
412
|
+
const network = Network.POLYGON;
|
|
413
|
+
const testPoolAddress = '0x837503e8A8753ae17fB8C8151B8e6f586defCb57'; // IS3USD
|
|
414
|
+
const dexHelper = new DummyDexHelper(network);
|
|
415
|
+
const logger = dexHelper.getLogger(dexKey);
|
|
416
|
+
let nervePool: NerveEventPool;
|
|
417
|
+
|
|
418
|
+
beforeEach(async () => {
|
|
419
|
+
nervePool = new NerveEventPool(
|
|
420
|
+
dexKey,
|
|
421
|
+
network,
|
|
422
|
+
dexHelper,
|
|
423
|
+
logger,
|
|
424
|
+
poolName,
|
|
425
|
+
);
|
|
426
|
+
});
|
|
427
|
+
|
|
428
|
+
// TokenExchange -> 0xb2e76ae99761dc136e598d4a629bb347eccb9532a5f8bbd72e18467c3c34cc98
|
|
429
|
+
describe('TokenExchange', () => {
|
|
430
|
+
it(`State after 27019055`, async () => {
|
|
431
|
+
const blockNumber = 27019055;
|
|
432
|
+
await testEventSubscriber(
|
|
433
|
+
nervePool,
|
|
434
|
+
nervePool.addressesSubscribed,
|
|
435
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
436
|
+
blockNumber,
|
|
437
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
438
|
+
dexHelper.provider,
|
|
439
|
+
);
|
|
440
|
+
});
|
|
441
|
+
it(`State after 27019043`, async () => {
|
|
442
|
+
const blockNumber = 27019043;
|
|
443
|
+
await testEventSubscriber(
|
|
444
|
+
nervePool,
|
|
445
|
+
nervePool.addressesSubscribed,
|
|
446
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
447
|
+
blockNumber,
|
|
448
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
449
|
+
dexHelper.provider,
|
|
450
|
+
);
|
|
451
|
+
});
|
|
452
|
+
it(`State after 27019042`, async () => {
|
|
453
|
+
const blockNumber = 27019042;
|
|
454
|
+
await testEventSubscriber(
|
|
455
|
+
nervePool,
|
|
456
|
+
nervePool.addressesSubscribed,
|
|
457
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
458
|
+
blockNumber,
|
|
459
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
460
|
+
dexHelper.provider,
|
|
461
|
+
);
|
|
462
|
+
});
|
|
463
|
+
it(`State after 27018991`, async () => {
|
|
464
|
+
const blockNumber = 27018991;
|
|
465
|
+
await testEventSubscriber(
|
|
466
|
+
nervePool,
|
|
467
|
+
nervePool.addressesSubscribed,
|
|
468
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
469
|
+
blockNumber,
|
|
470
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
471
|
+
dexHelper.provider,
|
|
472
|
+
);
|
|
473
|
+
});
|
|
474
|
+
it(`State after 27018933`, async () => {
|
|
475
|
+
const blockNumber = 27018933;
|
|
476
|
+
await testEventSubscriber(
|
|
477
|
+
nervePool,
|
|
478
|
+
nervePool.addressesSubscribed,
|
|
479
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
480
|
+
blockNumber,
|
|
481
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
482
|
+
dexHelper.provider,
|
|
483
|
+
);
|
|
484
|
+
});
|
|
485
|
+
});
|
|
486
|
+
|
|
487
|
+
// AddLiquidity -> 0x189c623b666b1b45b83d7178f39b8c087cb09774317ca2f53c2d3c3726f222a2
|
|
488
|
+
describe('AddLiquidity', () => {
|
|
489
|
+
it(`State after 27019013`, async () => {
|
|
490
|
+
const blockNumber = 27019013;
|
|
491
|
+
await testEventSubscriber(
|
|
492
|
+
nervePool,
|
|
493
|
+
nervePool.addressesSubscribed,
|
|
494
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
495
|
+
blockNumber,
|
|
496
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
497
|
+
dexHelper.provider,
|
|
498
|
+
);
|
|
499
|
+
});
|
|
500
|
+
it(`State after 27017516`, async () => {
|
|
501
|
+
const blockNumber = 27017516;
|
|
502
|
+
await testEventSubscriber(
|
|
503
|
+
nervePool,
|
|
504
|
+
nervePool.addressesSubscribed,
|
|
505
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
506
|
+
blockNumber,
|
|
507
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
508
|
+
dexHelper.provider,
|
|
509
|
+
);
|
|
510
|
+
});
|
|
511
|
+
it(`State after 27017515`, async () => {
|
|
512
|
+
const blockNumber = 27017515;
|
|
513
|
+
await testEventSubscriber(
|
|
514
|
+
nervePool,
|
|
515
|
+
nervePool.addressesSubscribed,
|
|
516
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
517
|
+
blockNumber,
|
|
518
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
519
|
+
dexHelper.provider,
|
|
520
|
+
);
|
|
521
|
+
});
|
|
522
|
+
it(`State after 27017333`, async () => {
|
|
523
|
+
const blockNumber = 27017333;
|
|
524
|
+
await testEventSubscriber(
|
|
525
|
+
nervePool,
|
|
526
|
+
nervePool.addressesSubscribed,
|
|
527
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
528
|
+
blockNumber,
|
|
529
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
530
|
+
dexHelper.provider,
|
|
531
|
+
);
|
|
532
|
+
});
|
|
533
|
+
it(`State after 27015656`, async () => {
|
|
534
|
+
const blockNumber = 27015656;
|
|
535
|
+
await testEventSubscriber(
|
|
536
|
+
nervePool,
|
|
537
|
+
nervePool.addressesSubscribed,
|
|
538
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
539
|
+
blockNumber,
|
|
540
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
541
|
+
dexHelper.provider,
|
|
542
|
+
);
|
|
543
|
+
});
|
|
544
|
+
});
|
|
545
|
+
|
|
546
|
+
// RemoveLiquidity -> 0x347ad828e58cbe534d8f6b67985d791360756b18f0d95fd9f197a66cc46480ea
|
|
547
|
+
describe('RemoveLiquidity', () => {
|
|
548
|
+
it(`State after 27009010`, async () => {
|
|
549
|
+
const blockNumber = 27009010;
|
|
550
|
+
await testEventSubscriber(
|
|
551
|
+
nervePool,
|
|
552
|
+
nervePool.addressesSubscribed,
|
|
553
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
554
|
+
blockNumber,
|
|
555
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
556
|
+
dexHelper.provider,
|
|
557
|
+
);
|
|
558
|
+
});
|
|
559
|
+
it(`State after 26993341`, async () => {
|
|
560
|
+
const blockNumber = 26993341;
|
|
561
|
+
await testEventSubscriber(
|
|
562
|
+
nervePool,
|
|
563
|
+
nervePool.addressesSubscribed,
|
|
564
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
565
|
+
blockNumber,
|
|
566
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
567
|
+
dexHelper.provider,
|
|
568
|
+
);
|
|
569
|
+
});
|
|
570
|
+
it(`State after 26993296`, async () => {
|
|
571
|
+
const blockNumber = 26993296;
|
|
572
|
+
await testEventSubscriber(
|
|
573
|
+
nervePool,
|
|
574
|
+
nervePool.addressesSubscribed,
|
|
575
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
576
|
+
blockNumber,
|
|
577
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
578
|
+
dexHelper.provider,
|
|
579
|
+
);
|
|
580
|
+
});
|
|
581
|
+
it(`State after 26973410`, async () => {
|
|
582
|
+
const blockNumber = 26973410;
|
|
583
|
+
await testEventSubscriber(
|
|
584
|
+
nervePool,
|
|
585
|
+
nervePool.addressesSubscribed,
|
|
586
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
587
|
+
blockNumber,
|
|
588
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
589
|
+
dexHelper.provider,
|
|
590
|
+
);
|
|
591
|
+
});
|
|
592
|
+
it(`State after 26749868`, async () => {
|
|
593
|
+
const blockNumber = 26749868;
|
|
594
|
+
await testEventSubscriber(
|
|
595
|
+
nervePool,
|
|
596
|
+
nervePool.addressesSubscribed,
|
|
597
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
598
|
+
blockNumber,
|
|
599
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
600
|
+
dexHelper.provider,
|
|
601
|
+
);
|
|
602
|
+
});
|
|
603
|
+
});
|
|
604
|
+
|
|
605
|
+
// NewFee -> 0xcfca96e0fef3432146913b2a5a2268a55d3f475fe057e7ffde1082b77693f4f3
|
|
606
|
+
describe('NewFee', () => {
|
|
607
|
+
it(`State after 17064317`, async () => {
|
|
608
|
+
const blockNumber = 17064317;
|
|
609
|
+
await testEventSubscriber(
|
|
610
|
+
nervePool,
|
|
611
|
+
nervePool.addressesSubscribed,
|
|
612
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
613
|
+
blockNumber,
|
|
614
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
615
|
+
dexHelper.provider,
|
|
616
|
+
);
|
|
617
|
+
});
|
|
618
|
+
it(`State after 16813530`, async () => {
|
|
619
|
+
const blockNumber = 16813530;
|
|
620
|
+
await testEventSubscriber(
|
|
621
|
+
nervePool,
|
|
622
|
+
nervePool.addressesSubscribed,
|
|
623
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
624
|
+
blockNumber,
|
|
625
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
626
|
+
dexHelper.provider,
|
|
627
|
+
);
|
|
628
|
+
});
|
|
629
|
+
it(`State after 16632075`, async () => {
|
|
630
|
+
const blockNumber = 16632075;
|
|
631
|
+
await testEventSubscriber(
|
|
632
|
+
nervePool,
|
|
633
|
+
nervePool.addressesSubscribed,
|
|
634
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
635
|
+
blockNumber,
|
|
636
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
637
|
+
dexHelper.provider,
|
|
638
|
+
);
|
|
639
|
+
});
|
|
640
|
+
});
|
|
641
|
+
|
|
642
|
+
// RampA -> 0xa2b71ec6df949300b59aab36b55e189697b750119dd349fcfa8c0f779e83c254
|
|
643
|
+
describe('RampA', () => {
|
|
644
|
+
it(`State after 17202291`, async () => {
|
|
645
|
+
const blockNumber = 17202291;
|
|
646
|
+
await testEventSubscriber(
|
|
647
|
+
nervePool,
|
|
648
|
+
nervePool.addressesSubscribed,
|
|
649
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
650
|
+
blockNumber,
|
|
651
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
652
|
+
dexHelper.provider,
|
|
653
|
+
);
|
|
654
|
+
});
|
|
655
|
+
it(`State after 17132310`, async () => {
|
|
656
|
+
const blockNumber = 17132310;
|
|
657
|
+
await testEventSubscriber(
|
|
658
|
+
nervePool,
|
|
659
|
+
nervePool.addressesSubscribed,
|
|
660
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
661
|
+
blockNumber,
|
|
662
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
663
|
+
dexHelper.provider,
|
|
664
|
+
);
|
|
665
|
+
});
|
|
666
|
+
it(`State after 17062453`, async () => {
|
|
667
|
+
const blockNumber = 17062453;
|
|
668
|
+
await testEventSubscriber(
|
|
669
|
+
nervePool,
|
|
670
|
+
nervePool.addressesSubscribed,
|
|
671
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
672
|
+
blockNumber,
|
|
673
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
674
|
+
dexHelper.provider,
|
|
675
|
+
);
|
|
676
|
+
});
|
|
677
|
+
it(`State after 16809165`, async () => {
|
|
678
|
+
const blockNumber = 16809165;
|
|
679
|
+
await testEventSubscriber(
|
|
680
|
+
nervePool,
|
|
681
|
+
nervePool.addressesSubscribed,
|
|
682
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
683
|
+
blockNumber,
|
|
684
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
685
|
+
dexHelper.provider,
|
|
686
|
+
);
|
|
687
|
+
});
|
|
688
|
+
});
|
|
689
|
+
|
|
690
|
+
// StopRampA -> 0x46e22fb3709ad289f62ce63d469248536dbc78d82b84a3d7e74ad606dc201938
|
|
691
|
+
describe('StopRampA', () => {
|
|
692
|
+
it(`State after 17095506`, async () => {
|
|
693
|
+
const blockNumber = 17095506;
|
|
694
|
+
await testEventSubscriber(
|
|
695
|
+
nervePool,
|
|
696
|
+
nervePool.addressesSubscribed,
|
|
697
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
698
|
+
blockNumber,
|
|
699
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
700
|
+
dexHelper.provider,
|
|
701
|
+
);
|
|
702
|
+
});
|
|
703
|
+
});
|
|
704
|
+
|
|
705
|
+
// RemoveLiquidityOne -> 0x5ad056f2e28a8cec232015406b843668c1e36cda598127ec3b8c59b8c72773a0
|
|
706
|
+
// We do not support RemoveLiquidityOne as it requires onchain call of exact values
|
|
707
|
+
|
|
708
|
+
// RemoveLiquidityImbalance -> 0x3631c28b1f9dd213e0319fb167b554d76b6c283a41143eb400a0d1adb1af1755
|
|
709
|
+
// No events for RemoveLiquidityImbalance
|
|
710
|
+
});
|
|
711
|
+
|
|
712
|
+
describe('Synapse Event Pool Arbitrum', async () => {
|
|
713
|
+
const dexKey = 'Synapse';
|
|
714
|
+
const network = Network.ARBITRUM;
|
|
715
|
+
const poolName = 'nUSDV3';
|
|
716
|
+
const testPoolAddress = '0x9Dd329F5411466d9e0C488fF72519CA9fEf0cb40'; // nUSDV3
|
|
717
|
+
const dexHelper = new DummyDexHelper(network);
|
|
718
|
+
const logger = dexHelper.getLogger(dexKey);
|
|
719
|
+
let nervePool: NerveEventPool;
|
|
720
|
+
|
|
721
|
+
beforeEach(async () => {
|
|
722
|
+
nervePool = new NerveEventPool(
|
|
723
|
+
dexKey,
|
|
724
|
+
network,
|
|
725
|
+
dexHelper,
|
|
726
|
+
logger,
|
|
727
|
+
poolName,
|
|
728
|
+
);
|
|
729
|
+
});
|
|
730
|
+
|
|
731
|
+
// TokenSwap -> 0xc6c1e0630dbe9130cc068028486c0d118ddcea348550819defd5cb8c257f8a38
|
|
732
|
+
describe('TokenSwap', () => {
|
|
733
|
+
it(`State after 17256191`, async () => {
|
|
734
|
+
const blockNumber = 17256191;
|
|
735
|
+
await testEventSubscriber(
|
|
736
|
+
nervePool,
|
|
737
|
+
nervePool.addressesSubscribed,
|
|
738
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
739
|
+
blockNumber,
|
|
740
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
741
|
+
dexHelper.provider,
|
|
742
|
+
);
|
|
743
|
+
});
|
|
744
|
+
it(`State after 17256467`, async () => {
|
|
745
|
+
const blockNumber = 17256467;
|
|
746
|
+
await testEventSubscriber(
|
|
747
|
+
nervePool,
|
|
748
|
+
nervePool.addressesSubscribed,
|
|
749
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
750
|
+
blockNumber,
|
|
751
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
752
|
+
dexHelper.provider,
|
|
753
|
+
);
|
|
754
|
+
});
|
|
755
|
+
it(`State after 17256191`, async () => {
|
|
756
|
+
const blockNumber = 17256191;
|
|
757
|
+
await testEventSubscriber(
|
|
758
|
+
nervePool,
|
|
759
|
+
nervePool.addressesSubscribed,
|
|
760
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
761
|
+
blockNumber,
|
|
762
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
763
|
+
dexHelper.provider,
|
|
764
|
+
);
|
|
765
|
+
});
|
|
766
|
+
it(`State after 17256173 `, async () => {
|
|
767
|
+
const blockNumber = 17256173;
|
|
768
|
+
await testEventSubscriber(
|
|
769
|
+
nervePool,
|
|
770
|
+
nervePool.addressesSubscribed,
|
|
771
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
772
|
+
blockNumber,
|
|
773
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
774
|
+
dexHelper.provider,
|
|
775
|
+
);
|
|
776
|
+
});
|
|
777
|
+
it(`State after 17256144`, async () => {
|
|
778
|
+
const blockNumber = 17256144;
|
|
779
|
+
await testEventSubscriber(
|
|
780
|
+
nervePool,
|
|
781
|
+
nervePool.addressesSubscribed,
|
|
782
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
783
|
+
blockNumber,
|
|
784
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
785
|
+
dexHelper.provider,
|
|
786
|
+
);
|
|
787
|
+
});
|
|
788
|
+
});
|
|
789
|
+
|
|
790
|
+
// AddLiquidity -> 0x189c623b666b1b45b83d7178f39b8c087cb09774317ca2f53c2d3c3726f222a2
|
|
791
|
+
describe('AddLiquidity', () => {
|
|
792
|
+
it(`State after 17220979`, async () => {
|
|
793
|
+
const blockNumber = 17220979;
|
|
794
|
+
await testEventSubscriber(
|
|
795
|
+
nervePool,
|
|
796
|
+
nervePool.addressesSubscribed,
|
|
797
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
798
|
+
blockNumber,
|
|
799
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
800
|
+
dexHelper.provider,
|
|
801
|
+
);
|
|
802
|
+
});
|
|
803
|
+
it(`State after 17186516`, async () => {
|
|
804
|
+
const blockNumber = 17186516;
|
|
805
|
+
await testEventSubscriber(
|
|
806
|
+
nervePool,
|
|
807
|
+
nervePool.addressesSubscribed,
|
|
808
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
809
|
+
blockNumber,
|
|
810
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
811
|
+
dexHelper.provider,
|
|
812
|
+
);
|
|
813
|
+
});
|
|
814
|
+
it(`State after 17186114`, async () => {
|
|
815
|
+
const blockNumber = 17186114;
|
|
816
|
+
await testEventSubscriber(
|
|
817
|
+
nervePool,
|
|
818
|
+
nervePool.addressesSubscribed,
|
|
819
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
820
|
+
blockNumber,
|
|
821
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
822
|
+
dexHelper.provider,
|
|
823
|
+
);
|
|
824
|
+
});
|
|
825
|
+
it(`State after 17180822`, async () => {
|
|
826
|
+
const blockNumber = 17180822;
|
|
827
|
+
await testEventSubscriber(
|
|
828
|
+
nervePool,
|
|
829
|
+
nervePool.addressesSubscribed,
|
|
830
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
831
|
+
blockNumber,
|
|
832
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
833
|
+
dexHelper.provider,
|
|
834
|
+
);
|
|
835
|
+
});
|
|
836
|
+
it(`State after 17154508`, async () => {
|
|
837
|
+
const blockNumber = 17154508;
|
|
838
|
+
await testEventSubscriber(
|
|
839
|
+
nervePool,
|
|
840
|
+
nervePool.addressesSubscribed,
|
|
841
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
842
|
+
blockNumber,
|
|
843
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
844
|
+
dexHelper.provider,
|
|
845
|
+
);
|
|
846
|
+
});
|
|
847
|
+
});
|
|
848
|
+
|
|
849
|
+
// RemoveLiquidity -> 0x88d38ed598fdd809c2bf01ee49cd24b7fdabf379a83d29567952b60324d58cef
|
|
850
|
+
describe('RemoveLiquidity', () => {
|
|
851
|
+
it(`State after 17232908`, async () => {
|
|
852
|
+
const blockNumber = 17232908;
|
|
853
|
+
await testEventSubscriber(
|
|
854
|
+
nervePool,
|
|
855
|
+
nervePool.addressesSubscribed,
|
|
856
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
857
|
+
blockNumber,
|
|
858
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
859
|
+
dexHelper.provider,
|
|
860
|
+
);
|
|
861
|
+
});
|
|
862
|
+
it(`State after 17154430`, async () => {
|
|
863
|
+
const blockNumber = 17154430;
|
|
864
|
+
await testEventSubscriber(
|
|
865
|
+
nervePool,
|
|
866
|
+
nervePool.addressesSubscribed,
|
|
867
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
868
|
+
blockNumber,
|
|
869
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
870
|
+
dexHelper.provider,
|
|
871
|
+
);
|
|
872
|
+
});
|
|
873
|
+
it(`State after 16780865`, async () => {
|
|
874
|
+
const blockNumber = 16780865;
|
|
875
|
+
await testEventSubscriber(
|
|
876
|
+
nervePool,
|
|
877
|
+
nervePool.addressesSubscribed,
|
|
878
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
879
|
+
blockNumber,
|
|
880
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
881
|
+
dexHelper.provider,
|
|
882
|
+
);
|
|
883
|
+
});
|
|
884
|
+
it(`State after 13691211`, async () => {
|
|
885
|
+
const blockNumber = 13691211;
|
|
886
|
+
await testEventSubscriber(
|
|
887
|
+
nervePool,
|
|
888
|
+
nervePool.addressesSubscribed,
|
|
889
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
890
|
+
blockNumber,
|
|
891
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
892
|
+
dexHelper.provider,
|
|
893
|
+
);
|
|
894
|
+
});
|
|
895
|
+
});
|
|
896
|
+
|
|
897
|
+
// NewSwapFee -> 0xd88ea5155021c6f8dafa1a741e173f595cdf77ce7c17d43342131d7f06afdfe5
|
|
898
|
+
describe('NewSwapFee', () => {
|
|
899
|
+
it(`State after 11349722`, async () => {
|
|
900
|
+
const blockNumber = 11349722;
|
|
901
|
+
await testEventSubscriber(
|
|
902
|
+
nervePool,
|
|
903
|
+
nervePool.addressesSubscribed,
|
|
904
|
+
(_blockNumber: number) => fetchPoolState(nervePool, _blockNumber),
|
|
905
|
+
blockNumber,
|
|
906
|
+
Nerve.getIdentifier(dexKey, testPoolAddress),
|
|
907
|
+
dexHelper.provider,
|
|
908
|
+
);
|
|
909
|
+
});
|
|
910
|
+
});
|
|
911
|
+
});
|