11use {
22 crate :: {
3- chain:: ethereum:: { SignablePythContract , RevealedWithCallbackFilter } ,
3+ chain:: ethereum:: { RevealedWithCallbackFilter , SignablePythContract } ,
44 config:: { Config , GenerateOptions } ,
5- } , anyhow:: Result , base64:: { engine:: general_purpose:: STANDARD as base64_standard_engine, Engine as _} , ethers:: providers:: Middleware , std:: sync:: Arc ,
5+ } ,
6+ anyhow:: Result ,
7+ base64:: { engine:: general_purpose:: STANDARD as base64_standard_engine, Engine as _} ,
8+ ethers:: providers:: Middleware ,
9+ std:: sync:: Arc ,
610 tokio:: time:: { self , Duration } ,
711} ;
812
@@ -19,19 +23,19 @@ pub async fn generate(opts: &GenerateOptions) -> Result<()> {
1923 let user_randomness = rand:: random :: < [ u8 ; 32 ] > ( ) ;
2024 let provider = opts. provider ;
2125
22- tracing:: info!( "starting" ) ;
23-
2426 let mut last_block_number = contract. provider ( ) . get_block_number ( ) . await ?;
2527 tracing:: info!( block_number = last_block_number. as_u64( ) , "block number" ) ;
2628
29+ tracing:: info!( "Requesting random number..." ) ;
30+
2731 // Request a random number on the contract
2832 let sequence_number = contract
2933 . request_with_callback_wrapper ( & provider, & user_randomness)
3034 . await ?;
3135
32- tracing:: info!( sequence_number = sequence_number, "random number requested" , ) ;
36+ tracing:: info!( sequence_number = sequence_number, "Random number requested" , ) ;
3337
34- for _i in [ 0 ..10 ] {
38+ for _i in 0 ..10 {
3539 let current_block_number = contract. provider ( ) . get_block_number ( ) . await ?;
3640 tracing:: info!(
3741 start_block = last_block_number. as_u64( ) ,
@@ -40,7 +44,10 @@ pub async fn generate(opts: &GenerateOptions) -> Result<()> {
4044 ) ;
4145
4246 let mut event = contract. revealed_with_callback_filter ( ) ;
43- event. filter = event. filter . from_block ( last_block_number) . to_block ( current_block_number) ;
47+ event. filter = event
48+ . filter
49+ . from_block ( last_block_number)
50+ . to_block ( current_block_number) ;
4451
4552 let res: Vec < RevealedWithCallbackFilter > = event. query ( ) . await ?;
4653
@@ -58,5 +65,7 @@ pub async fn generate(opts: &GenerateOptions) -> Result<()> {
5865 time:: sleep ( Duration :: from_secs ( 1 ) ) . await ;
5966 }
6067
68+ tracing:: info!( "Failed to receive a callback with the random number." ) ;
69+
6170 Ok ( ( ) )
6271}
0 commit comments