reth_provider/test_utils/
noop.rs

1//! Additional testing support for `NoopProvider`.
2
3use crate::{
4    providers::{StaticFileProvider, StaticFileProviderRWRefMut},
5    StaticFileProviderFactory,
6};
7use reth_errors::{ProviderError, ProviderResult};
8use reth_primitives_traits::NodePrimitives;
9use std::path::PathBuf;
10
11/// Re-exported for convenience
12pub use reth_storage_api::noop::NoopProvider;
13
14impl<C: Send + Sync, N: NodePrimitives> StaticFileProviderFactory for NoopProvider<C, N> {
15    fn static_file_provider(&self) -> StaticFileProvider<Self::Primitives> {
16        StaticFileProvider::read_only(PathBuf::default(), false).unwrap()
17    }
18
19    fn get_static_file_writer(
20        &self,
21        _block: alloy_primitives::BlockNumber,
22        _segment: reth_static_file_types::StaticFileSegment,
23    ) -> ProviderResult<StaticFileProviderRWRefMut<'_, Self::Primitives>> {
24        Err(ProviderError::ReadOnlyStaticFileAccess)
25    }
26}