@@ -2,6 +2,7 @@ open Async
22open  Core 
33open  Mina_automation 
44open  Mina_automation_fixture.Archive 
5+ open  Common 
56
67(* *
78 * Test the basic functionality of the mina archive with mocked deamon 
@@ -118,11 +119,8 @@ let test_case (test_data : t) =
118119  let  archive_uri =  test_data.archive.config.postgres_uri in 
119120  let  output =  test_data.temp_dir in 
120121  let % bind precomputed_blocks = 
121-     Network_data. untar_precomputed_blocks test_data.network_data output
122-   in 
123-   let  precomputed_blocks = 
124-     List. map precomputed_blocks ~f: (fun  file  -> output ^  " /"   ^  file)
125-     |>  List. filter ~f: (fun  file  -> String. is_suffix file ~suffix: " .json"  )
122+     unpack_precomputed_blocks test_data.network_data
123+       ~temp_dir: test_data.temp_dir
126124  in 
127125  let  log_file =  output ^  " /precomputed_blocks_test.log"   in 
128126  Archive.Process. start_logging test_data.archive ~log_file  ;
@@ -136,32 +134,13 @@ let test_case (test_data : t) =
136134    assert_archived_blocks ~archive_uri 
137135      ~expected: (List. length precomputed_blocks)
138136  in 
139-   let  connection =  Psql. Conn_str  archive_uri in 
140-   let % bind latest_state_hash = 
141-     Psql. run_command ~connection 
142-       " SELECT state_hash FROM blocks ORDER BY id DESC LIMIT 1" 
143-   in 
144-   let  latest_state_hash = 
145-     match  latest_state_hash with 
146-     |  Ok  hash  ->
147-         hash
148-     |  Error  err  ->
149-         failwith
150-           (" Failed to query latest state hash: "   ^  Error. to_string_hum err)
151-   in 
152-   let  output_ledger =  output ^  " /output_ledger.json"   in 
153-   let  replayer =  Replayer. default in 
154-   let % bind replayer_output = 
155-     Replayer. run replayer ~archive_uri 
156-       ~input_config: 
137+ 
138+   let % bind ()  = 
139+     assert_replayer_run_against_last_block
140+       ~replayer_input_file_path: 
157141        (Network_data. replayer_input_file_path test_data.network_data)
158-       ~target_state_hash: latest_state_hash ~interval_checkpoint: 10 
159-       ~output_ledger  () 
142+       archive_uri test_data.temp_dir
160143  in 
161-   let  ()  =  print_endline replayer_output in 
162-   let  output_ledger =  Replayer.Output. of_json_file_exn output_ledger in 
163-   assert  (
164-     String. equal output_ledger.target_epoch_ledgers_state_hash latest_state_hash ) ;
165144
166145  let % bind perf_data =  extract_perf_metrics log_file in 
167146  perf_metrics_to_yojson perf_data |>  Yojson. to_file " archive.perf"   ;
0 commit comments