Skip to content

Commit

Permalink
test(sync): add test that checks StateSyncRunner runs sync future (#2120
Browse files Browse the repository at this point in the history
)
  • Loading branch information
ShahakShama authored Nov 21, 2024
1 parent 708c05c commit 0957e41
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 0 deletions.
3 changes: 3 additions & 0 deletions crates/starknet_state_sync/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,6 @@ starknet_sequencer_infra.workspace = true
starknet_state_sync_types.workspace = true
tokio.workspace = true
validator.workspace = true

[dev-dependencies]
papyrus_storage = { workspace = true, features = ["testing"] }
3 changes: 3 additions & 0 deletions crates/starknet_state_sync/src/runner/mod.rs
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
#[cfg(test)]
mod test;

use std::sync::Arc;

use async_trait::async_trait;
Expand Down
28 changes: 28 additions & 0 deletions crates/starknet_state_sync/src/runner/test.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
use futures::channel::mpsc;
use futures::future::ready;
use futures::FutureExt;
use papyrus_storage::test_utils::get_test_storage;
use papyrus_sync::StateSyncError as PapyrusStateSyncError;
use starknet_sequencer_infra::component_definitions::ComponentStarter;

use super::StateSyncRunner;

const BUFFER_SIZE: usize = 1000;

#[test]
fn run_returns_when_sync_future_returns() {
let (_request_sender, request_receiver) = mpsc::channel(BUFFER_SIZE);
let (storage_reader, _storage_writer) = get_test_storage().0;
let sync_future = ready(Ok(())).boxed();
let mut state_sync_runner = StateSyncRunner { request_receiver, storage_reader, sync_future };
state_sync_runner.start().now_or_never().unwrap().unwrap();
}

#[test]
fn run_returns_error_when_sync_future_returns_error() {
let (_request_sender, request_receiver) = mpsc::channel(BUFFER_SIZE);
let (storage_reader, _storage_writer) = get_test_storage().0;
let sync_future = ready(Err(PapyrusStateSyncError::NoProgress)).boxed();
let mut state_sync_runner = StateSyncRunner { request_receiver, storage_reader, sync_future };
state_sync_runner.start().now_or_never().unwrap().unwrap_err();
}

0 comments on commit 0957e41

Please sign in to comment.