#![cfg(feature = "debug")]
use sparseio::debug::{ReaderHarness, ReaderHarnessConfig, WriterHarness, WriterHarnessConfig};
use sparseio::utils::{fixture, oracle, tracing};
#[tokio::test(flavor = "multi_thread", worker_threads = 2)]
async fn reader_harness_validates_oracle_reader_end_to_end() {
tracing::init();
let fixture = fixture::bytes(96);
let harness = ReaderHarness::new(
oracle::Reader::new(fixture.clone()),
ReaderHarnessConfig {
chunk_size: 16,
fixture,
},
);
harness.validate().await.expect("oracle reader should satisfy the harness");
}
#[tokio::test(flavor = "multi_thread", worker_threads = 2)]
async fn writer_harness_validates_oracle_writer_end_to_end() {
tracing::init();
let fixture = fixture::bytes(96);
let harness = WriterHarness::new(
oracle::Writer::default,
WriterHarnessConfig {
chunk_size: 16,
fixture,
},
);
harness.validate().await.expect("oracle writer should satisfy the harness");
}