Skip to content

Commit f66e7dc

Browse files
blockifier_reexecution: rename test state reader
1 parent b5cd7df commit f66e7dc

File tree

5 files changed

+50
-52
lines changed

5 files changed

+50
-52
lines changed

crates/blockifier_reexecution/src/main.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ use blockifier_reexecution::state_reader::cli::{
1313
};
1414
use blockifier_reexecution::state_reader::offline_state_reader::OfflineConsecutiveStateReaders;
1515
use blockifier_reexecution::state_reader::reexecution_state_reader::ConsecutiveReexecutionStateReaders;
16-
use blockifier_reexecution::state_reader::test_state_reader::ConsecutiveTestStateReaders;
16+
use blockifier_reexecution::state_reader::rpc_state_reader::ConsecutiveRpcStateReaders;
1717
use clap::Parser;
1818
use google_cloud_storage::client::{Client, ClientConfig};
1919
use google_cloud_storage::http::objects::download::Range;
@@ -68,7 +68,7 @@ async fn main() {
6868
// for details), so should be executed in a blocking thread.
6969
// TODO(Aner): make only the RPC calls blocking, not the whole function.
7070
tokio::task::spawn_blocking(move || {
71-
ConsecutiveTestStateReaders::new(
71+
ConsecutiveRpcStateReaders::new(
7272
BlockNumber(block_number - 1),
7373
Some(rpc_state_reader_config),
7474
rpc_args.parse_chain_id(),
@@ -104,7 +104,7 @@ async fn main() {
104104
// for details), so should be executed in a blocking thread.
105105
// TODO(Aner): make only the RPC calls blocking, not the whole function.
106106
tokio::task::spawn_blocking(move || {
107-
ConsecutiveTestStateReaders::new(
107+
ConsecutiveRpcStateReaders::new(
108108
BlockNumber(block_number - 1),
109109
Some(rpc_state_reader_config),
110110
chain_id,
@@ -139,7 +139,7 @@ async fn main() {
139139
task_set.spawn(async move {
140140
println!("Computing reexecution data for block {block_number}.");
141141
tokio::task::spawn_blocking(move || {
142-
ConsecutiveTestStateReaders::new(
142+
ConsecutiveRpcStateReaders::new(
143143
block_number.prev().expect("Should not run with block 0"),
144144
Some(rpc_state_reader_config),
145145
chain_id,

crates/blockifier_reexecution/src/state_reader.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@ pub mod reexecution_state_reader;
99
pub mod reexecution_test;
1010
#[cfg(all(test, feature = "blockifier_regression_https_testing"))]
1111
pub mod rpc_https_test;
12+
pub mod rpc_state_reader;
1213
pub mod serde_utils;
13-
pub mod test_state_reader;
1414
pub mod utils;

crates/blockifier_reexecution/src/state_reader/offline_state_reader.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ use crate::state_reader::reexecution_state_reader::{
3535
ConsecutiveReexecutionStateReaders,
3636
ReexecutionStateReader,
3737
};
38-
use crate::state_reader::test_state_reader::StarknetContractClassMapping;
38+
use crate::state_reader::rpc_state_reader::StarknetContractClassMapping;
3939
use crate::state_reader::utils::{get_chain_info, ReexecutionStateMaps};
4040

4141
pub struct OfflineReexecutionData {

crates/blockifier_reexecution/src/state_reader/rpc_https_test.rs

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ use std::env;
1313
use std::sync::{Arc, Mutex};
1414

1515
use apollo_gateway::rpc_objects::BlockId;
16-
use apollo_gateway::rpc_state_reader::RpcStateReader;
16+
use apollo_gateway::rpc_state_reader::RpcStateReader as GatewayRpcStateReader;
1717
use apollo_gateway_config::config::RpcStateReaderConfig;
1818
use assert_matches::assert_matches;
1919
use blockifier::blockifier::config::ContractClassManagerConfig;
@@ -30,12 +30,12 @@ use starknet_api::transaction::{
3030
};
3131
use starknet_core::types::ContractClass::{Legacy, Sierra};
3232

33-
use super::test_state_reader::RetryConfig;
33+
use super::rpc_state_reader::RetryConfig;
3434
use super::utils::RPC_NODE_URL;
3535
use crate::state_reader::cli::guess_chain_id_from_node_url;
3636
use crate::state_reader::compile::legacy_to_contract_class_v0;
3737
use crate::state_reader::reexecution_state_reader::ReexecutionStateReader;
38-
use crate::state_reader::test_state_reader::{ConsecutiveTestStateReaders, TestStateReader};
38+
use crate::state_reader::rpc_state_reader::{ConsecutiveRpcStateReaders, RpcStateReader};
3939

4040
const EXAMPLE_INVOKE_TX_HASH: &str =
4141
"0xa7c7db686c7f756ceb7ca85a759caef879d425d156da83d6a836f86851983";
@@ -95,9 +95,9 @@ pub fn get_test_rpc_config() -> RpcStateReaderConfig {
9595
}
9696

9797
#[fixture]
98-
pub fn test_state_reader() -> TestStateReader {
99-
TestStateReader {
100-
rpc_state_reader: RpcStateReader {
98+
pub fn test_state_reader() -> RpcStateReader {
99+
RpcStateReader {
100+
rpc_state_reader: GatewayRpcStateReader {
101101
config: get_test_rpc_config(),
102102
block_id: get_test_block_id(),
103103
},
@@ -108,7 +108,7 @@ pub fn test_state_reader() -> TestStateReader {
108108
}
109109

110110
#[fixture]
111-
pub fn test_block_number(test_state_reader: TestStateReader) -> BlockNumber {
111+
pub fn test_block_number(test_state_reader: RpcStateReader) -> BlockNumber {
112112
test_state_reader.get_block_info().unwrap().block_number
113113
}
114114

@@ -126,8 +126,8 @@ pub fn contract_class_manager() -> ContractClassManager {
126126
pub fn test_state_readers_last_and_current_block(
127127
last_constructed_block: BlockNumber,
128128
contract_class_manager: ContractClassManager,
129-
) -> ConsecutiveTestStateReaders {
130-
ConsecutiveTestStateReaders::new(
129+
) -> ConsecutiveRpcStateReaders {
130+
ConsecutiveRpcStateReaders::new(
131131
last_constructed_block,
132132
None,
133133
ChainId::Mainnet,
@@ -138,17 +138,17 @@ pub fn test_state_readers_last_and_current_block(
138138

139139
/// Test that the block info can be retrieved from the RPC server.
140140
#[rstest]
141-
pub fn test_get_block_info(test_state_reader: TestStateReader) {
141+
pub fn test_get_block_info(test_state_reader: RpcStateReader) {
142142
assert_matches!(test_state_reader.get_block_info(), Ok(BlockInfo { .. }));
143143
}
144144

145145
#[rstest]
146-
pub fn test_get_starknet_version(test_state_reader: TestStateReader) {
146+
pub fn test_get_starknet_version(test_state_reader: RpcStateReader) {
147147
test_state_reader.get_starknet_version().unwrap();
148148
}
149149

150150
#[rstest]
151-
pub fn test_get_contract_class(test_state_reader: TestStateReader, test_block_number: BlockNumber) {
151+
pub fn test_get_contract_class(test_state_reader: RpcStateReader, test_block_number: BlockNumber) {
152152
// An example of existing class hash in Mainnet.
153153
let class_hash = class_hash!(EXAMPLE_CONTACT_CLASS_HASH);
154154

@@ -174,14 +174,14 @@ pub fn test_get_contract_class(test_state_reader: TestStateReader, test_block_nu
174174
}
175175

176176
#[rstest]
177-
pub fn test_get_tx_hashes(test_state_reader: TestStateReader) {
177+
pub fn test_get_tx_hashes(test_state_reader: RpcStateReader) {
178178
test_state_reader.get_tx_hashes().unwrap_or_else(|err| {
179179
panic!("Error retrieving txs hash: {err}");
180180
});
181181
}
182182

183183
#[rstest]
184-
pub fn test_get_invoke_tx_by_hash(test_state_reader: TestStateReader) {
184+
pub fn test_get_invoke_tx_by_hash(test_state_reader: RpcStateReader) {
185185
let actual_tx = test_state_reader.get_tx_by_hash(EXAMPLE_INVOKE_TX_HASH).unwrap();
186186
assert_matches!(actual_tx, Transaction::Invoke(..));
187187
}
@@ -203,7 +203,7 @@ pub fn test_get_deploy_account_tx_by_hash(
203203
#[case] version: TransactionVersion,
204204
) {
205205
// Create StateReader with block number that contain the deploy account tx.
206-
let state_reader = TestStateReader::new_for_testing(BlockNumber(block_number));
206+
let state_reader = RpcStateReader::new_for_testing(BlockNumber(block_number));
207207
let actual_tx = state_reader.get_tx_by_hash(tx_hash).unwrap();
208208
if version == TransactionVersion::ONE {
209209
assert_matches!(actual_tx, Transaction::DeployAccount(DeployAccountTransaction::V1(..)))
@@ -224,7 +224,7 @@ pub fn test_get_declare_tx_by_hash(
224224
#[case] expected_version: TransactionVersion,
225225
) {
226226
// Create StateReader with block number that contain the declare tx.
227-
let state_reader = TestStateReader::new_for_testing(BlockNumber(block_number));
227+
let state_reader = RpcStateReader::new_for_testing(BlockNumber(block_number));
228228
let actual_tx = state_reader.get_tx_by_hash(tx_hash).unwrap();
229229
if expected_version == TransactionVersion::ONE {
230230
assert_matches!(actual_tx, Transaction::Declare(DeclareTransaction::V1(..)))
@@ -241,13 +241,13 @@ pub fn test_get_declare_tx_by_hash(
241241
pub fn test_get_l1_handler_tx_by_hash() {
242242
// Create StateReader with block number that contain the l1 handler tx.
243243
let state_reader =
244-
TestStateReader::new_for_testing(BlockNumber(EXAMPLE_L1_HANDLER_BLOCK_NUMBER));
244+
RpcStateReader::new_for_testing(BlockNumber(EXAMPLE_L1_HANDLER_BLOCK_NUMBER));
245245
let actual_tx = state_reader.get_tx_by_hash(EXAMPLE_L1_HANDLER_TX_HASH).unwrap();
246246
assert_matches!(actual_tx, Transaction::L1Handler(..))
247247
}
248248

249249
#[rstest]
250-
pub fn test_get_statediff_rpc(test_state_reader: TestStateReader) {
250+
pub fn test_get_statediff_rpc(test_state_reader: RpcStateReader) {
251251
assert!(test_state_reader.get_state_diff().is_ok());
252252
}
253253

@@ -257,25 +257,25 @@ pub fn test_get_statediff_rpc(test_state_reader: TestStateReader) {
257257
#[case(EXAMPLE_DECLARE_V2_BLOCK_NUMBER)]
258258
#[case(EXAMPLE_DECLARE_V3_BLOCK_NUMBER)]
259259
pub fn test_get_all_blockifier_tx_in_block(#[case] block_number: u64) {
260-
let state_reader = TestStateReader::new_for_testing(BlockNumber(block_number));
260+
let state_reader = RpcStateReader::new_for_testing(BlockNumber(block_number));
261261
state_reader
262262
.api_txs_to_blockifier_txs_next_block(state_reader.get_all_txs_in_block().unwrap())
263263
.unwrap();
264264
}
265265

266266
#[rstest]
267-
pub fn test_get_versioned_constants(test_state_reader: TestStateReader) {
267+
pub fn test_get_versioned_constants(test_state_reader: RpcStateReader) {
268268
test_state_reader.get_versioned_constants().unwrap();
269269
}
270270

271271
#[rstest]
272-
pub fn test_get_block_context(test_state_reader: TestStateReader) {
272+
pub fn test_get_block_context(test_state_reader: RpcStateReader) {
273273
test_state_reader.get_block_context().unwrap();
274274
}
275275

276276
#[rstest]
277277
pub fn test_get_old_block_hash(
278-
test_state_reader: TestStateReader,
278+
test_state_reader: RpcStateReader,
279279
last_constructed_block: BlockNumber,
280280
) {
281281
test_state_reader.get_old_block_hash(last_constructed_block).unwrap();

crates/blockifier_reexecution/src/state_reader/test_state_reader.rs renamed to crates/blockifier_reexecution/src/state_reader/rpc_state_reader.rs

Lines changed: 22 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use std::sync::{Arc, Mutex};
44

55
use apollo_gateway::errors::{serde_err_to_state_err, RPCStateReaderError};
66
use apollo_gateway::rpc_objects::{BlockHeader, BlockId, GetBlockWithTxHashesParams};
7-
use apollo_gateway::rpc_state_reader::RpcStateReader;
7+
use apollo_gateway::rpc_state_reader::RpcStateReader as GatewayRpcStateReader;
88
use apollo_gateway_config::config::RpcStateReaderConfig;
99
use assert_matches::assert_matches;
1010
use blockifier::abi::constants;
@@ -104,26 +104,26 @@ impl Default for RetryConfig {
104104
}
105105

106106
#[derive(Clone)]
107-
pub struct TestStateReader {
108-
pub(crate) rpc_state_reader: RpcStateReader,
107+
pub struct RpcStateReader {
108+
pub(crate) rpc_state_reader: GatewayRpcStateReader,
109109
pub(crate) retry_config: RetryConfig,
110110
pub(crate) chain_id: ChainId,
111111
#[allow(dead_code)]
112112
pub(crate) contract_class_mapping_dumper: Arc<Mutex<Option<StarknetContractClassMapping>>>,
113113
}
114114

115-
impl Default for TestStateReader {
115+
impl Default for RpcStateReader {
116116
fn default() -> Self {
117117
Self {
118-
rpc_state_reader: RpcStateReader::from_latest(&get_rpc_state_reader_config()),
118+
rpc_state_reader: GatewayRpcStateReader::from_latest(&get_rpc_state_reader_config()),
119119
retry_config: RetryConfig::default(),
120120
chain_id: ChainId::Mainnet,
121121
contract_class_mapping_dumper: Arc::new(Mutex::new(None)),
122122
}
123123
}
124124
}
125125

126-
impl StateReader for TestStateReader {
126+
impl StateReader for RpcStateReader {
127127
fn get_nonce_at(&self, contract_address: ContractAddress) -> StateResult<Nonce> {
128128
retry_request!(self.retry_config, || self.rpc_state_reader.get_nonce_at(contract_address))
129129
}
@@ -167,7 +167,7 @@ impl StateReader for TestStateReader {
167167
}
168168
}
169169

170-
impl FetchCompiledClasses for TestStateReader {
170+
impl FetchCompiledClasses for RpcStateReader {
171171
fn get_compiled_classes(&self, class_hash: ClassHash) -> StateResult<CompiledClasses> {
172172
let contract_class =
173173
retry_request!(self.retry_config, || self.get_contract_class(&class_hash))?;
@@ -182,7 +182,7 @@ impl FetchCompiledClasses for TestStateReader {
182182
}
183183
}
184184

185-
impl TestStateReader {
185+
impl RpcStateReader {
186186
pub fn new(
187187
config: &RpcStateReaderConfig,
188188
chain_id: ChainId,
@@ -194,15 +194,15 @@ impl TestStateReader {
194194
false => None,
195195
}));
196196
Self {
197-
rpc_state_reader: RpcStateReader::from_number(config, block_number),
197+
rpc_state_reader: GatewayRpcStateReader::from_number(config, block_number),
198198
retry_config: RetryConfig::default(),
199199
chain_id,
200200
contract_class_mapping_dumper,
201201
}
202202
}
203203

204204
pub fn new_for_testing(block_number: BlockNumber) -> Self {
205-
TestStateReader::new(&get_rpc_state_reader_config(), ChainId::Mainnet, block_number, false)
205+
RpcStateReader::new(&get_rpc_state_reader_config(), ChainId::Mainnet, block_number, false)
206206
}
207207

208208
/// Get the block info of the current block.
@@ -301,8 +301,7 @@ impl TestStateReader {
301301
block_context_next_block: BlockContext,
302302
transaction_executor_config: Option<TransactionExecutorConfig>,
303303
contract_class_manager: &ContractClassManager,
304-
) -> ReexecutionResult<TransactionExecutor<StateReaderAndContractManager<TestStateReader>>>
305-
{
304+
) -> ReexecutionResult<TransactionExecutor<StateReaderAndContractManager<RpcStateReader>>> {
306305
let old_block_number = BlockNumber(
307306
block_context_next_block.block_info().block_number.0
308307
- constants::STORED_BLOCK_HASH_BUFFER,
@@ -315,7 +314,7 @@ impl TestStateReader {
315314
contract_class_manager.clone(),
316315
class_cache_metrics,
317316
);
318-
Ok(TransactionExecutor::<StateReaderAndContractManager<TestStateReader>>::pre_process_and_create(
317+
Ok(TransactionExecutor::<StateReaderAndContractManager<RpcStateReader>>::pre_process_and_create(
319318
state_reader_and_contract_manager,
320319
block_context_next_block,
321320
Some(BlockHashAndNumber { number: old_block_number, hash: old_block_hash }),
@@ -377,7 +376,7 @@ impl TestStateReader {
377376
}
378377
}
379378

380-
impl ReexecutionStateReader for TestStateReader {
379+
impl ReexecutionStateReader for RpcStateReader {
381380
fn get_contract_class(&self, class_hash: &ClassHash) -> StateResult<StarknetContractClass> {
382381
let params = json!({
383382
"block_id": self.rpc_state_reader.block_id,
@@ -412,13 +411,13 @@ impl ReexecutionStateReader for TestStateReader {
412411
}
413412
}
414413

415-
pub struct ConsecutiveTestStateReaders {
416-
pub last_block_state_reader: TestStateReader,
417-
pub next_block_state_reader: TestStateReader,
414+
pub struct ConsecutiveRpcStateReaders {
415+
pub last_block_state_reader: RpcStateReader,
416+
pub next_block_state_reader: RpcStateReader,
418417
contract_class_manager: ContractClassManager,
419418
}
420419

421-
impl ConsecutiveTestStateReaders {
420+
impl ConsecutiveRpcStateReaders {
422421
pub fn new(
423422
last_constructed_block_number: BlockNumber,
424423
config: Option<RpcStateReaderConfig>,
@@ -428,13 +427,13 @@ impl ConsecutiveTestStateReaders {
428427
) -> Self {
429428
let config = config.unwrap_or(get_rpc_state_reader_config());
430429
Self {
431-
last_block_state_reader: TestStateReader::new(
430+
last_block_state_reader: RpcStateReader::new(
432431
&config,
433432
chain_id.clone(),
434433
last_constructed_block_number,
435434
dump_mode,
436435
),
437-
next_block_state_reader: TestStateReader::new(
436+
next_block_state_reader: RpcStateReader::new(
438437
&config,
439438
chain_id,
440439
last_constructed_block_number.next().expect("Overflow in block number"),
@@ -573,14 +572,13 @@ impl ConsecutiveTestStateReaders {
573572
}
574573
}
575574

576-
impl ConsecutiveReexecutionStateReaders<StateReaderAndContractManager<TestStateReader>>
577-
for ConsecutiveTestStateReaders
575+
impl ConsecutiveReexecutionStateReaders<StateReaderAndContractManager<RpcStateReader>>
576+
for ConsecutiveRpcStateReaders
578577
{
579578
fn pre_process_and_create_executor(
580579
self,
581580
transaction_executor_config: Option<TransactionExecutorConfig>,
582-
) -> ReexecutionResult<TransactionExecutor<StateReaderAndContractManager<TestStateReader>>>
583-
{
581+
) -> ReexecutionResult<TransactionExecutor<StateReaderAndContractManager<RpcStateReader>>> {
584582
self.last_block_state_reader.get_transaction_executor(
585583
self.next_block_state_reader.get_block_context()?,
586584
transaction_executor_config,

0 commit comments

Comments
 (0)