@@ -222,197 +222,3 @@ pub async fn cancel_create_new_task_retryable(
222222 "Receipt not found" . to_string ( ) ,
223223 ) ) )
224224}
225-
226- #[ cfg( test) ]
227- mod test {
228- use super :: * ;
229- use crate :: {
230- config:: { ContractDeploymentOutput , ECDSAConfig } ,
231- eth:: {
232- self , get_provider, payment_service:: BatcherPaymentService , utils:: get_batcher_signer,
233- } ,
234- } ;
235- use ethers:: {
236- contract:: abigen,
237- types:: { Address , U256 } ,
238- utils:: { Anvil , AnvilInstance } ,
239- } ;
240- use std:: str:: FromStr ;
241-
242- abigen ! (
243- BatcherPaymentServiceContract ,
244- "../aligned-sdk/abi/BatcherPaymentService.json"
245- ) ;
246-
247- async fn setup_anvil ( port : u16 ) -> ( AnvilInstance , BatcherPaymentService ) {
248- let anvil = Anvil :: new ( )
249- . port ( port)
250- . arg ( "--load-state" )
251- . arg ( "../../contracts/scripts/anvil/state/alignedlayer-deployed-anvil-state.json" )
252- . spawn ( ) ;
253-
254- let eth_rpc_provider = eth:: get_provider ( format ! ( "http://localhost:{}" , port) )
255- . expect ( "Failed to get provider" ) ;
256-
257- let deployment_output = ContractDeploymentOutput :: new (
258- "../../contracts/script/output/devnet/alignedlayer_deployment_output.json" . to_string ( ) ,
259- ) ;
260-
261- let payment_service_addr = deployment_output. addresses . batcher_payment_service . clone ( ) ;
262-
263- let batcher_signer = get_batcher_signer (
264- eth_rpc_provider,
265- ECDSAConfig {
266- private_key_store_path : "../../config-files/anvil.batcher.ecdsa.key.json"
267- . to_string ( ) ,
268- private_key_store_password : "" . to_string ( ) ,
269- } ,
270- )
271- . await
272- . unwrap ( ) ;
273-
274- let payment_service =
275- eth:: payment_service:: get_batcher_payment_service ( batcher_signer, payment_service_addr)
276- . await
277- . expect ( "Failed to get Batcher Payment Service contract" ) ;
278- ( anvil, payment_service)
279- }
280-
281- #[ tokio:: test]
282- async fn test_get_user_balance_retryable ( ) {
283- let payment_service;
284- let dummy_user_addr =
285- Address :: from_str ( "0x8969c5eD335650692Bc04293B07F5BF2e7A673C0" ) . unwrap ( ) ;
286- {
287- let _anvil;
288- ( _anvil, payment_service) = setup_anvil ( 8545u16 ) . await ;
289-
290- let balance =
291- get_user_balance_retryable ( & payment_service, & payment_service, & dummy_user_addr)
292- . await
293- . unwrap ( ) ;
294-
295- assert_eq ! ( balance, U256 :: zero( ) ) ;
296- // Anvil is killed when the scope is left
297- }
298-
299- let result =
300- get_user_balance_retryable ( & payment_service, & payment_service, & dummy_user_addr) . await ;
301- assert ! ( matches!( result, Err ( RetryError :: Transient ( _) ) ) ) ;
302-
303- // restart anvil
304- let ( _anvil, _) = setup_anvil ( 8545u16 ) . await ;
305- let balance =
306- get_user_balance_retryable ( & payment_service, & payment_service, & dummy_user_addr)
307- . await
308- . unwrap ( ) ;
309-
310- assert_eq ! ( balance, U256 :: zero( ) ) ;
311- }
312-
313- #[ tokio:: test]
314- async fn test_user_balance_is_unlocked_retryable ( ) {
315- let payment_service;
316- let dummy_user_addr =
317- Address :: from_str ( "0x8969c5eD335650692Bc04293B07F5BF2e7A673C0" ) . unwrap ( ) ;
318-
319- {
320- let _anvil;
321- ( _anvil, payment_service) = setup_anvil ( 8546u16 ) . await ;
322- let unlocked = user_balance_is_unlocked_retryable (
323- & payment_service,
324- & payment_service,
325- & dummy_user_addr,
326- )
327- . await
328- . unwrap ( ) ;
329-
330- assert_eq ! ( unlocked, false ) ;
331- // Anvil is killed when the scope is left
332- }
333-
334- let result = user_balance_is_unlocked_retryable (
335- & payment_service,
336- & payment_service,
337- & dummy_user_addr,
338- )
339- . await ;
340- assert ! ( matches!( result, Err ( RetryError :: Transient ( _) ) ) ) ;
341-
342- // restart Anvil
343- let ( _anvil, _) = setup_anvil ( 8546u16 ) . await ;
344- let unlocked = user_balance_is_unlocked_retryable (
345- & payment_service,
346- & payment_service,
347- & dummy_user_addr,
348- )
349- . await
350- . unwrap ( ) ;
351-
352- assert_eq ! ( unlocked, false ) ;
353- }
354-
355- #[ tokio:: test]
356- async fn test_get_user_nonce_retryable ( ) {
357- let payment_service;
358- let dummy_user_addr =
359- Address :: from_str ( "0x8969c5eD335650692Bc04293B07F5BF2e7A673C0" ) . unwrap ( ) ;
360- {
361- let _anvil;
362- ( _anvil, payment_service) = setup_anvil ( 8547u16 ) . await ;
363- let nonce = get_user_nonce_from_ethereum_retryable (
364- & payment_service,
365- & payment_service,
366- dummy_user_addr,
367- )
368- . await
369- . unwrap ( ) ;
370-
371- assert_eq ! ( nonce, U256 :: zero( ) ) ;
372- // Anvil is killed when the scope is left
373- }
374-
375- let result = get_user_nonce_from_ethereum_retryable (
376- & payment_service,
377- & payment_service,
378- dummy_user_addr,
379- )
380- . await ;
381- assert ! ( matches!( result, Err ( RetryError :: Transient ( _) ) ) ) ;
382-
383- // restart Anvil
384- let ( _anvil, _) = setup_anvil ( 8547u16 ) . await ;
385-
386- let nonce = get_user_nonce_from_ethereum_retryable (
387- & payment_service,
388- & payment_service,
389- dummy_user_addr,
390- )
391- . await
392- . unwrap ( ) ;
393-
394- assert_eq ! ( nonce, U256 :: zero( ) ) ;
395- }
396-
397- #[ tokio:: test]
398- async fn test_get_gas_price_retryable ( ) {
399- let eth_rpc_provider;
400- {
401- let ( _anvil, _payment_service) = setup_anvil ( 8548u16 ) . await ;
402- eth_rpc_provider = get_provider ( "http://localhost:8548" . to_string ( ) )
403- . expect ( "Failed to get ethereum websocket provider" ) ;
404- let result = get_gas_price_retryable ( & eth_rpc_provider, & eth_rpc_provider) . await ;
405-
406- assert ! ( result. is_ok( ) ) ;
407- // Anvil is killed when the scope is left
408- }
409- let result = get_gas_price_retryable ( & eth_rpc_provider, & eth_rpc_provider) . await ;
410- assert ! ( matches!( result, Err ( RetryError :: Transient ( _) ) ) ) ;
411-
412- // restart Anvil
413- let ( _anvil, _) = setup_anvil ( 8548u16 ) . await ;
414- let result = get_gas_price_retryable ( & eth_rpc_provider, & eth_rpc_provider) . await ;
415-
416- assert ! ( result. is_ok( ) ) ;
417- }
418- }
0 commit comments