@@ -8,6 +8,12 @@ const initialAvalancheBlock = Number(
8
8
) ;
9
9
const initialCeloBlock = Number ( INITIAL_DEPLOYMENT_BLOCK_BY_NETWORK_AND_CHAIN [ 'Mainnet' ] . Celo ) ;
10
10
const initialOasisBlock = Number ( INITIAL_DEPLOYMENT_BLOCK_BY_NETWORK_AND_CHAIN [ 'Mainnet' ] . Oasis ) ;
11
+ const initialMoonbeamBlock = Number (
12
+ INITIAL_DEPLOYMENT_BLOCK_BY_NETWORK_AND_CHAIN [ 'Mainnet' ] . Moonbeam
13
+ ) ;
14
+ const initialPolygonBlock = Number (
15
+ INITIAL_DEPLOYMENT_BLOCK_BY_NETWORK_AND_CHAIN [ 'Mainnet' ] . Polygon
16
+ ) ;
11
17
12
18
jest . setTimeout ( 60000 ) ;
13
19
@@ -173,3 +179,30 @@ test.skip('getBlock (Karura compatibility)', async () => {
173
179
// block = await watcher.getBlock(4619551); // good luck
174
180
// console.log('block', block);
175
181
} ) ;
182
+
183
+ test ( 'getMessagesForBlocks' , async ( ) => {
184
+ const watcher = new EVMWatcher ( 'Mainnet' , 'Arbitrum' , 'finalized' , 'vaa' ) ;
185
+ const { vaasByBlock } = await watcher . getMessagesForBlocks ( 114500582 , 114500584 ) ;
186
+ const entries = Object . entries ( vaasByBlock ) ;
187
+ expect ( entries . length ) . toEqual ( 3 ) ;
188
+ expect ( entries . filter ( ( [ block , vaas ] ) => vaas . length === 0 ) . length ) . toEqual ( 2 ) ;
189
+ expect ( entries . filter ( ( [ block , vaas ] ) => vaas . length === 1 ) . length ) . toEqual ( 1 ) ;
190
+ expect ( entries . filter ( ( [ block , vaas ] ) => vaas . length === 2 ) . length ) . toEqual ( 0 ) ;
191
+ expect ( vaasByBlock [ '114500583/2023-07-24T15:12:14.000Z' ] ) . toBeDefined ( ) ;
192
+ expect ( vaasByBlock [ '114500583/2023-07-24T15:12:14.000Z' ] . length ) . toEqual ( 1 ) ;
193
+ expect ( vaasByBlock [ '114500583/2023-07-24T15:12:14.000Z' ] [ 0 ] ) . toEqual (
194
+ '0x39da3b500e5d65e82ca20cc8c4737fc0aa6c4e2c6c5f7e657834bd607c7109d9:23/0000000000000000000000000b2402144bb366a632d14b83f244d2e0e21bd39c/7628'
195
+ ) ;
196
+ } ) ;
197
+
198
+ test ( 'getFinalizedBlockNumber' , async ( ) => {
199
+ const watcher = new EVMWatcher ( 'Mainnet' , 'Moonbeam' , 'finalized' , 'vaa' ) ;
200
+ const blockNumber = await watcher . getFinalizedBlockNumber ( ) ;
201
+ expect ( blockNumber ) . toBeGreaterThan ( initialMoonbeamBlock ) ;
202
+ } ) ;
203
+
204
+ test ( 'getFinalizedBlockNumber' , async ( ) => {
205
+ const watcher = new EVMWatcher ( 'Mainnet' , 'Polygon' , 'finalized' , 'vaa' ) ;
206
+ const blockNumber = await watcher . getFinalizedBlockNumber ( ) ;
207
+ expect ( blockNumber ) . toBeGreaterThan ( initialPolygonBlock ) ;
208
+ } ) ;
0 commit comments