blackout_target

Trait Test

Source
pub trait Test {
    // Required methods
    fn setup<'async_trait>(
        self: Arc<Self>,
        device_label: String,
        device_path: Option<String>,
        seed: u64,
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
       where Self: 'async_trait;
    fn test<'async_trait>(
        self: Arc<Self>,
        device_label: String,
        device_path: Option<String>,
        seed: u64,
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
       where Self: 'async_trait;
    fn verify<'async_trait>(
        self: Arc<Self>,
        device_label: String,
        device_path: Option<String>,
        seed: u64,
    ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
       where Self: 'async_trait;
}
Expand description

The three steps the target-side of a blackout test needs to implement.

Required Methods§

Source

fn setup<'async_trait>( self: Arc<Self>, device_label: String, device_path: Option<String>, seed: u64, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,

Setup the test run on the given block_device.

Source

fn test<'async_trait>( self: Arc<Self>, device_label: String, device_path: Option<String>, seed: u64, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,

Run the test body on the given device_path.

Source

fn verify<'async_trait>( self: Arc<Self>, device_label: String, device_path: Option<String>, seed: u64, ) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>
where Self: 'async_trait,

Verify the consistency of the filesystem on the device_path.

Implementors§