@@ -16,7 +16,7 @@ use apollo_starknet_client::reader::{
1616 StorageEntry ,
1717} ;
1818use apollo_starknet_client:: ClientError ;
19- use apollo_storage:: class_manager :: ClassManagerStorageWriter ;
19+ use apollo_storage:: header :: HeaderStorageWriter ;
2020use apollo_storage:: test_utils:: get_test_storage;
2121use apollo_test_utils:: { get_rng, GetTestInstance } ;
2222use assert_matches:: assert_matches;
@@ -28,7 +28,14 @@ use mockall::predicate;
2828use papyrus_common:: state:: MigratedCompiledClassHashEntry ;
2929use pretty_assertions:: assert_eq;
3030use reqwest:: StatusCode ;
31- use starknet_api:: block:: { BlockHash , BlockHashAndNumber , BlockNumber } ;
31+ use starknet_api:: block:: {
32+ BlockHash ,
33+ BlockHashAndNumber ,
34+ BlockHeader ,
35+ BlockHeaderWithoutHash ,
36+ BlockNumber ,
37+ StarknetVersion ,
38+ } ;
3239use starknet_api:: core:: { ClassHash , CompiledClassHash , GlobalRoot , Nonce , SequencerPublicKey } ;
3340use starknet_api:: crypto:: utils:: PublicKey ;
3441use starknet_api:: deprecated_contract_class:: ContractClass as DeprecatedContractClass ;
@@ -40,6 +47,7 @@ use tokio_stream::StreamExt;
4047use super :: state_update_stream:: StateUpdateStreamConfig ;
4148use super :: ApiContractClass ;
4249use crate :: sources:: central:: { CentralError , CentralSourceTrait , GenericCentralSource } ;
50+ use crate :: STARKNET_VERSION_TO_COMPILE_FROM ;
4351
4452const TEST_CONCURRENT_REQUESTS : usize = 300 ;
4553
@@ -395,13 +403,26 @@ async fn stream_state_updates() {
395403 Ok ( Some ( GenericContractClass :: Cairo0ContractClass ( contract_class3_clone. clone ( ) ) ) )
396404 } ) ;
397405 let ( ( reader, mut writer) , _temp_dir) = get_test_storage ( ) ;
398- writer
399- . begin_rw_txn ( )
400- . unwrap ( )
401- . update_compiler_backward_compatibility_marker ( & FIRST_BACKWARD_COMPATIBLE_BLOCK_NUMBER )
402- . unwrap ( )
403- . commit ( )
404- . unwrap ( ) ;
406+ let mut txn = writer. begin_rw_txn ( ) . unwrap ( ) ;
407+ for block_number in 0 ..END_BLOCK_NUMBER {
408+ let block_number = BlockNumber ( block_number) ;
409+ let starknet_version = if block_number < FIRST_BACKWARD_COMPATIBLE_BLOCK_NUMBER {
410+ StarknetVersion :: PreV0_9_1
411+ } else {
412+ STARKNET_VERSION_TO_COMPILE_FROM
413+ } ;
414+ let header = BlockHeader {
415+ block_hash : BlockHash ( StarkHash :: from ( block_number. 0 + 1 ) ) ,
416+ block_header_without_hash : BlockHeaderWithoutHash {
417+ block_number,
418+ starknet_version,
419+ ..Default :: default ( )
420+ } ,
421+ ..Default :: default ( )
422+ } ;
423+ txn = txn. append_header ( block_number, & header) . unwrap ( ) ;
424+ }
425+ txn. commit ( ) . unwrap ( ) ;
405426 let mut state_update_stream_config = state_update_stream_config_for_test ( ) ;
406427 // Ensure all state updates can be scheduled together.
407428 state_update_stream_config. max_state_updates_to_download =
0 commit comments