Factored into separate crate
This commit is contained in:
36
src/teststream.rs
Normal file
36
src/teststream.rs
Normal file
@@ -0,0 +1,36 @@
|
||||
use crate::timebin::cached::reader::EventsReadProvider;
|
||||
use crate::timebin::cached::reader::EventsReading;
|
||||
use futures_util::Stream;
|
||||
use items_0::streamitem::sitem_err2_from_string;
|
||||
use items_0::streamitem::Sitemty;
|
||||
use items_2::channelevents::ChannelEvents;
|
||||
use netpod::range::evrange::SeriesRange;
|
||||
use query::api4::events::EventsSubQuery;
|
||||
use std::pin::Pin;
|
||||
|
||||
fn make_stream(chname: &str, range: &SeriesRange) -> Pin<Box<dyn Stream<Item = Sitemty<ChannelEvents>> + Send>> {
|
||||
if chname == "unittest;scylla;cont;scalar;f32" {
|
||||
let e = sitem_err2_from_string(format!("unknown channel {chname}"));
|
||||
let ret = futures_util::stream::iter([Err(e)]);
|
||||
Box::pin(ret)
|
||||
} else {
|
||||
let e = sitem_err2_from_string(format!("unknown channel {chname}"));
|
||||
let ret = futures_util::stream::iter([Err(e)]);
|
||||
Box::pin(ret)
|
||||
}
|
||||
}
|
||||
|
||||
pub struct UnitTestStream {}
|
||||
|
||||
impl UnitTestStream {
|
||||
pub fn new() -> Self {
|
||||
Self {}
|
||||
}
|
||||
}
|
||||
|
||||
impl EventsReadProvider for UnitTestStream {
|
||||
fn read(&self, evq: EventsSubQuery) -> EventsReading {
|
||||
let stream = make_stream(evq.name(), evq.range());
|
||||
EventsReading::new(stream)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user