WIP on make tests run again
This commit is contained in:
@@ -103,7 +103,9 @@ async fn go() -> Result<(), Error> {
|
|||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
// TODO test data needs to be generated
|
||||||
|
//#[test]
|
||||||
|
#[allow(unused)]
|
||||||
fn simple_fetch() {
|
fn simple_fetch() {
|
||||||
use daqbuffer::err::ErrConv;
|
use daqbuffer::err::ErrConv;
|
||||||
use netpod::Nanos;
|
use netpod::Nanos;
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ where
|
|||||||
let tyid = u32::from_le_bytes(*arrayref::array_ref![buf, 8, 4]);
|
let tyid = u32::from_le_bytes(*arrayref::array_ref![buf, 8, 4]);
|
||||||
let len = u32::from_le_bytes(*arrayref::array_ref![buf, 12, 4]);
|
let len = u32::from_le_bytes(*arrayref::array_ref![buf, 12, 4]);
|
||||||
if magic != INMEM_FRAME_MAGIC {
|
if magic != INMEM_FRAME_MAGIC {
|
||||||
let z = nb.min(32);
|
let z = nb.min(256);
|
||||||
let u = String::from_utf8_lossy(&buf[0..z]);
|
let u = String::from_utf8_lossy(&buf[0..z]);
|
||||||
let e = Error::with_msg("INCORRECT MAGIC");
|
let e = Error::with_msg("INCORRECT MAGIC");
|
||||||
error!("incorrect magic buf as utf8: {:?} error: {:?}", u, e);
|
error!("incorrect magic buf as utf8: {:?} error: {:?}", u, e);
|
||||||
|
|||||||
@@ -2,20 +2,12 @@ use crate::ChannelConfigExt;
|
|||||||
use bitshuffle::bitshuffle_compress;
|
use bitshuffle::bitshuffle_compress;
|
||||||
use bytes::{BufMut, BytesMut};
|
use bytes::{BufMut, BytesMut};
|
||||||
use err::Error;
|
use err::Error;
|
||||||
use netpod::{timeunits::*, ByteOrder, Channel, ChannelConfig, GenVar, Node, SfDatabuffer, Shape};
|
use netpod::log::*;
|
||||||
use netpod::{Nanos, ScalarType};
|
use netpod::timeunits::*;
|
||||||
|
use netpod::{ByteOrder, Channel, ChannelConfig, GenVar, Nanos, Node, ScalarType, SfDatabuffer, Shape};
|
||||||
use std::path::{Path, PathBuf};
|
use std::path::{Path, PathBuf};
|
||||||
use tokio::fs::{File, OpenOptions};
|
use tokio::fs::{File, OpenOptions};
|
||||||
use tokio::io::AsyncWriteExt;
|
use tokio::io::AsyncWriteExt;
|
||||||
#[allow(unused_imports)]
|
|
||||||
use tracing::{debug, error, info, trace, warn};
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
pub fn gen_test_data_test() {
|
|
||||||
if false {
|
|
||||||
taskrun::run(gen_test_data()).unwrap();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
pub async fn gen_test_data() -> Result<(), Error> {
|
pub async fn gen_test_data() -> Result<(), Error> {
|
||||||
let homedir = std::env::var("HOME").unwrap();
|
let homedir = std::env::var("HOME").unwrap();
|
||||||
|
|||||||
@@ -1,3 +1,6 @@
|
|||||||
|
#[cfg(test)]
|
||||||
|
mod test;
|
||||||
|
|
||||||
use dbconn::events_scylla::make_scylla_stream;
|
use dbconn::events_scylla::make_scylla_stream;
|
||||||
use disk::frame::inmem::InMemoryFrameAsyncReadStream;
|
use disk::frame::inmem::InMemoryFrameAsyncReadStream;
|
||||||
use err::Error;
|
use err::Error;
|
||||||
@@ -44,27 +47,6 @@ async fn events_conn_handler(stream: TcpStream, addr: SocketAddr, node_config: N
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn events_conn_handler_inner(
|
|
||||||
stream: TcpStream,
|
|
||||||
addr: SocketAddr,
|
|
||||||
node_config: &NodeConfigCached,
|
|
||||||
) -> Result<(), Error> {
|
|
||||||
match events_conn_handler_inner_try(stream, addr, node_config).await {
|
|
||||||
Ok(_) => (),
|
|
||||||
Err(ce) => {
|
|
||||||
// Try to pass the error over the network.
|
|
||||||
// If that fails, give error to the caller.
|
|
||||||
let mut out = ce.netout;
|
|
||||||
let e = ce.err;
|
|
||||||
let buf = items::frame::make_error_frame(&e)?;
|
|
||||||
//type T = StreamItem<items::RangeCompletableItem<items::scalarevents::ScalarEvents<u32>>>;
|
|
||||||
//let buf = Err::<T, _>(e).make_frame()?;
|
|
||||||
out.write_all(&buf).await?;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Ok(())
|
|
||||||
}
|
|
||||||
|
|
||||||
struct ConnErr {
|
struct ConnErr {
|
||||||
err: Error,
|
err: Error,
|
||||||
#[allow(dead_code)]
|
#[allow(dead_code)]
|
||||||
@@ -202,3 +184,24 @@ async fn events_conn_handler_inner_try(
|
|||||||
debug!("events_conn_handler_inner_try buf_len_histo: {:?}", buf_len_histo);
|
debug!("events_conn_handler_inner_try buf_len_histo: {:?}", buf_len_histo);
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async fn events_conn_handler_inner(
|
||||||
|
stream: TcpStream,
|
||||||
|
addr: SocketAddr,
|
||||||
|
node_config: &NodeConfigCached,
|
||||||
|
) -> Result<(), Error> {
|
||||||
|
match events_conn_handler_inner_try(stream, addr, node_config).await {
|
||||||
|
Ok(_) => (),
|
||||||
|
Err(ce) => {
|
||||||
|
// Try to pass the error over the network.
|
||||||
|
// If that fails, give error to the caller.
|
||||||
|
let mut out = ce.netout;
|
||||||
|
let e = ce.err;
|
||||||
|
let buf = items::frame::make_error_frame(&e)?;
|
||||||
|
//type T = StreamItem<items::RangeCompletableItem<items::scalarevents::ScalarEvents<u32>>>;
|
||||||
|
//let buf = Err::<T, _>(e).make_frame()?;
|
||||||
|
out.write_all(&buf).await?;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|||||||
54
nodenet/src/conn/test.rs
Normal file
54
nodenet/src/conn/test.rs
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
use netpod::{Cluster, Database, FileIoBufferSize, Node, NodeConfig, SfDatabuffer};
|
||||||
|
use tokio::net::TcpListener;
|
||||||
|
|
||||||
|
use super::*;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn raw_data_00() {
|
||||||
|
//taskrun::run(disk::gen::gen_test_data()).unwrap();
|
||||||
|
let fut = async {
|
||||||
|
let lis = TcpListener::bind("127.0.0.1:0").await.unwrap();
|
||||||
|
let con = TcpStream::connect(lis.local_addr().unwrap()).await.unwrap();
|
||||||
|
let (client, addr) = lis.accept().await.unwrap();
|
||||||
|
let cfg = NodeConfigCached {
|
||||||
|
node_config: NodeConfig {
|
||||||
|
name: "node_name_dummy".into(),
|
||||||
|
cluster: Cluster {
|
||||||
|
backend: "backend_dummy".into(),
|
||||||
|
nodes: vec![],
|
||||||
|
database: Database {
|
||||||
|
name: "".into(),
|
||||||
|
host: "".into(),
|
||||||
|
port: 5432,
|
||||||
|
user: "".into(),
|
||||||
|
pass: "".into(),
|
||||||
|
},
|
||||||
|
run_map_pulse_task: false,
|
||||||
|
is_central_storage: false,
|
||||||
|
file_io_buffer_size: FileIoBufferSize(1024 * 8),
|
||||||
|
scylla: None,
|
||||||
|
cache_scylla: None,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
node: Node {
|
||||||
|
host: "empty".into(),
|
||||||
|
listen: "listen_dummy".into(),
|
||||||
|
port: 9090,
|
||||||
|
port_raw: 9090,
|
||||||
|
cache_base_path: "".into(),
|
||||||
|
sf_databuffer: Some(SfDatabuffer {
|
||||||
|
data_base_path: "/home/dominik/daqbuffer-testdata/databuffer/node00".into(),
|
||||||
|
ksprefix: "ks".into(),
|
||||||
|
splits: None,
|
||||||
|
}),
|
||||||
|
archiver_appliance: None,
|
||||||
|
channel_archiver: None,
|
||||||
|
prometheus_api_bind: None,
|
||||||
|
},
|
||||||
|
ix: 0,
|
||||||
|
};
|
||||||
|
events_conn_handler(client, addr, cfg).await.unwrap();
|
||||||
|
Ok(())
|
||||||
|
};
|
||||||
|
taskrun::run(fut).unwrap();
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user