Adapt test
This commit is contained in:
+3
-24
@@ -1,7 +1,7 @@
|
|||||||
use crate::dataopen::{open_expanded_files, open_files, OpenedFileSet};
|
use crate::dataopen::{open_expanded_files, open_files, OpenedFileSet};
|
||||||
use crate::eventchunker::{EventChunker, EventChunkerConf, EventFull};
|
use crate::eventchunker::{EventChunker, EventChunkerConf, EventFull};
|
||||||
|
use crate::file_content_stream;
|
||||||
use crate::merge::MergedStream;
|
use crate::merge::MergedStream;
|
||||||
use crate::{file_content_stream, HasSeenBeforeRangeCount};
|
|
||||||
use err::Error;
|
use err::Error;
|
||||||
use futures_core::Stream;
|
use futures_core::Stream;
|
||||||
use futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
@@ -14,9 +14,9 @@ use std::sync::atomic::AtomicU64;
|
|||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
use std::task::{Context, Poll};
|
use std::task::{Context, Poll};
|
||||||
|
|
||||||
pub trait InputTraits: Stream<Item = Sitemty<EventFull>> + HasSeenBeforeRangeCount {}
|
pub trait InputTraits: Stream<Item = Sitemty<EventFull>> {}
|
||||||
|
|
||||||
impl<T> InputTraits for T where T: Stream<Item = Sitemty<EventFull>> + HasSeenBeforeRangeCount {}
|
impl<T> InputTraits for T where T: Stream<Item = Sitemty<EventFull>> {}
|
||||||
|
|
||||||
pub struct EventChunkerMultifile {
|
pub struct EventChunkerMultifile {
|
||||||
channel_config: ChannelConfig,
|
channel_config: ChannelConfig,
|
||||||
@@ -31,8 +31,6 @@ pub struct EventChunkerMultifile {
|
|||||||
max_ts: Arc<AtomicU64>,
|
max_ts: Arc<AtomicU64>,
|
||||||
files_count: u32,
|
files_count: u32,
|
||||||
node_ix: usize,
|
node_ix: usize,
|
||||||
seen_before_range_count: usize,
|
|
||||||
seen_after_range_count: usize,
|
|
||||||
expand: bool,
|
expand: bool,
|
||||||
do_decompress: bool,
|
do_decompress: bool,
|
||||||
}
|
}
|
||||||
@@ -66,28 +64,10 @@ impl EventChunkerMultifile {
|
|||||||
max_ts: Arc::new(AtomicU64::new(0)),
|
max_ts: Arc::new(AtomicU64::new(0)),
|
||||||
files_count: 0,
|
files_count: 0,
|
||||||
node_ix,
|
node_ix,
|
||||||
seen_before_range_count: 0,
|
|
||||||
seen_after_range_count: 0,
|
|
||||||
expand,
|
expand,
|
||||||
do_decompress,
|
do_decompress,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn seen_before_range_count(&self) -> usize {
|
|
||||||
self.seen_before_range_count
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn seen_after_range_count(&self) -> usize {
|
|
||||||
self.seen_after_range_count
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO remove or use Drop impl?
|
|
||||||
pub fn close(&mut self) {
|
|
||||||
if let Some(evs) = &mut self.evs {
|
|
||||||
self.seen_before_range_count += evs.seen_before_range_count();
|
|
||||||
self.evs = None;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Stream for EventChunkerMultifile {
|
impl Stream for EventChunkerMultifile {
|
||||||
@@ -119,7 +99,6 @@ impl Stream for EventChunkerMultifile {
|
|||||||
Ready(Some(k))
|
Ready(Some(k))
|
||||||
}
|
}
|
||||||
Ready(None) => {
|
Ready(None) => {
|
||||||
self.seen_before_range_count += evs.seen_before_range_count();
|
|
||||||
self.evs = None;
|
self.evs = None;
|
||||||
continue 'outer;
|
continue 'outer;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
use crate::{FileChunkRead, HasSeenBeforeRangeCount, NeedMinBuffer};
|
use crate::{FileChunkRead, NeedMinBuffer};
|
||||||
use bitshuffle::bitshuffle_decompress;
|
use bitshuffle::bitshuffle_decompress;
|
||||||
use bytes::{Buf, BytesMut};
|
use bytes::{Buf, BytesMut};
|
||||||
use err::Error;
|
use err::Error;
|
||||||
@@ -428,10 +428,6 @@ impl EventChunker {
|
|||||||
parsed_bytes,
|
parsed_bytes,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn seen_before_range_count(&self) -> usize {
|
|
||||||
self.seen_before_range_count
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize)]
|
#[derive(Debug, Serialize, Deserialize)]
|
||||||
@@ -701,12 +697,6 @@ impl Stream for EventChunker {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl HasSeenBeforeRangeCount for EventChunker {
|
|
||||||
fn seen_before_range_count(&self) -> usize {
|
|
||||||
self.seen_before_range_count()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod test {
|
mod test {
|
||||||
//use err::Error;
|
//use err::Error;
|
||||||
|
|||||||
@@ -403,7 +403,3 @@ impl ChannelConfigExt for ChannelConfig {
|
|||||||
ret
|
ret
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub trait HasSeenBeforeRangeCount {
|
|
||||||
fn seen_before_range_count(&self) -> usize;
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
use crate::HasSeenBeforeRangeCount;
|
|
||||||
use err::Error;
|
use err::Error;
|
||||||
use futures_core::Stream;
|
use futures_core::Stream;
|
||||||
use futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
@@ -272,17 +271,6 @@ where
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<S, ITY> HasSeenBeforeRangeCount for MergedStream<S, ITY>
|
|
||||||
where
|
|
||||||
S: Stream<Item = Sitemty<ITY>> + Unpin,
|
|
||||||
ITY: Unpin,
|
|
||||||
{
|
|
||||||
fn seen_before_range_count(&self) -> usize {
|
|
||||||
// TODO (only for debug)
|
|
||||||
0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod test {
|
mod test {
|
||||||
use crate::dataopen::position_file_for_test;
|
use crate::dataopen::position_file_for_test;
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
use crate::HasSeenBeforeRangeCount;
|
|
||||||
use err::Error;
|
use err::Error;
|
||||||
use futures_core::Stream;
|
use futures_core::Stream;
|
||||||
use futures_util::StreamExt;
|
use futures_util::StreamExt;
|
||||||
@@ -277,14 +276,3 @@ where
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<S, I> HasSeenBeforeRangeCount for MergedBlobsStream<S, I>
|
|
||||||
where
|
|
||||||
S: Stream<Item = Sitemty<I>> + Unpin,
|
|
||||||
I: Unpin + Appendable + WithTimestamps + PushableIndex + WithLen + ByteEstimate,
|
|
||||||
{
|
|
||||||
fn seen_before_range_count(&self) -> usize {
|
|
||||||
// TODO (only for debug)
|
|
||||||
0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -339,6 +339,7 @@ mod test {
|
|||||||
let cwd = std::env::current_dir();
|
let cwd = std::env::current_dir();
|
||||||
netpod::log::info!("CWD: {:?}", cwd);
|
netpod::log::info!("CWD: {:?}", cwd);
|
||||||
let path = "../resources/sf-daqbuf-33-S10CB01-RLOD100-PUP10:SIG-AMPLT-latest-00000_Config";
|
let path = "../resources/sf-daqbuf-33-S10CB01-RLOD100-PUP10:SIG-AMPLT-latest-00000_Config";
|
||||||
|
//let path = "../resources/sf-daqbuf-21-S10CB01-RLOD100-PUP10:SIG-AMPLT-latest-00000_Config";
|
||||||
let mut f1 = std::fs::File::open(path).unwrap();
|
let mut f1 = std::fs::File::open(path).unwrap();
|
||||||
let mut buf = vec![];
|
let mut buf = vec![];
|
||||||
f1.read_to_end(&mut buf).unwrap();
|
f1.read_to_end(&mut buf).unwrap();
|
||||||
@@ -355,11 +356,11 @@ mod test {
|
|||||||
#[test]
|
#[test]
|
||||||
fn open_file() {
|
fn open_file() {
|
||||||
let config = parse_config(&read_data()).unwrap().1;
|
let config = parse_config(&read_data()).unwrap().1;
|
||||||
assert_eq!(0, config.format_version);
|
assert_eq!(config.format_version, 0);
|
||||||
assert_eq!(9, config.entries.len());
|
assert_eq!(config.entries.len(), 18);
|
||||||
for e in &config.entries {
|
for e in &config.entries {
|
||||||
assert!(e.ts >= 631152000000000000);
|
assert!(e.ts >= 631152000000000000);
|
||||||
assert!(e.ts <= 1591106812800073974);
|
assert!(e.ts <= 1613640673424172164);
|
||||||
assert!(e.shape.is_some());
|
assert!(e.shape.is_some());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user