Skip to content

Commit 2f9ebd5

Browse files
committed
silence some of the tests
1 parent 3f0a661 commit 2f9ebd5

File tree

5 files changed

+71
-42
lines changed

5 files changed

+71
-42
lines changed

src/api/downloader.rs

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -563,9 +563,7 @@ mod tests {
563563
.download(request, Shuffled::new(vec![node1_id, node2_id]))
564564
.stream()
565565
.await?;
566-
while let Some(item) = progress.next().await {
567-
println!("Got item: {item:?}");
568-
}
566+
while let Some(_) = progress.next().await {}
569567
assert_eq!(store3.get_bytes(tt1.hash).await?.deref(), b"hello world");
570568
assert_eq!(store3.get_bytes(tt2.hash).await?.deref(), b"hello world 2");
571569
Ok(())
@@ -608,9 +606,7 @@ mod tests {
608606
))
609607
.stream()
610608
.await?;
611-
while let Some(item) = progress.next().await {
612-
println!("Got item: {item:?}");
613-
}
609+
while let Some(_) = progress.next().await {}
614610
}
615611
if false {
616612
let conn = r3.endpoint().connect(node1_addr, crate::ALPN).await?;
@@ -672,9 +668,7 @@ mod tests {
672668
))
673669
.stream()
674670
.await?;
675-
while let Some(item) = progress.next().await {
676-
println!("Got item: {item:?}");
677-
}
671+
while let Some(_) = progress.next().await {}
678672
Ok(())
679673
}
680674
}

src/api/remote.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -759,7 +759,6 @@ impl Remote {
759759
Err(at_closing) => break at_closing,
760760
};
761761
let offset = at_start_child.offset();
762-
println!("offset {offset}");
763762
let Some(hash) = hash_seq.get(offset as usize) else {
764763
break at_start_child.finish();
765764
};

src/get.rs

Lines changed: 65 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,20 @@
1818
//! [iroh]: https://docs.rs/iroh
1919
use std::{
2020
fmt::{self, Debug},
21+
io,
2122
time::{Duration, Instant},
2223
};
2324

2425
use anyhow::Result;
2526
use bao_tree::{io::fsm::BaoContentItem, ChunkNum};
2627
use fsm::RequestCounters;
27-
use iroh::endpoint::{RecvStream, SendStream};
28-
use iroh_io::{TokioStreamReader, TokioStreamWriter};
28+
use iroh_io::{AsyncStreamReader, AsyncStreamWriter};
2929
use n0_snafu::SpanTrace;
3030
use nested_enum_utils::common_fields;
31+
use quinn::ReadExactError;
3132
use serde::{Deserialize, Serialize};
3233
use snafu::{Backtrace, IntoError, ResultExt, Snafu};
34+
use tokio::io::AsyncWriteExt;
3335
use tracing::{debug, error};
3436

3537
use crate::{protocol::ChunkRangesSeq, store::IROH_BLOCK_SIZE, Hash};
@@ -39,8 +41,49 @@ pub mod request;
3941
pub(crate) use error::get_error;
4042
pub use error::{GetError, GetResult};
4143

42-
type DefaultReader = TokioStreamReader<RecvStream>;
43-
type DefaultWriter = TokioStreamWriter<SendStream>;
44+
pub struct IrohStreamWriter(iroh::endpoint::SendStream);
45+
46+
impl AsyncStreamWriter for IrohStreamWriter {
47+
async fn write(&mut self, data: &[u8]) -> io::Result<()> {
48+
Ok(self.0.write_all(data).await?)
49+
}
50+
51+
async fn write_bytes(&mut self, data: bytes::Bytes) -> io::Result<()> {
52+
Ok(self.0.write_chunk(data).await?)
53+
}
54+
55+
async fn sync(&mut self) -> io::Result<()> {
56+
Ok(self.0.flush().await?)
57+
}
58+
}
59+
60+
pub struct IrohStreamReader(iroh::endpoint::RecvStream);
61+
62+
impl AsyncStreamReader for IrohStreamReader {
63+
async fn read<const N: usize>(&mut self) -> io::Result<[u8; N]> {
64+
let mut buf = [0u8; N];
65+
match self.0.read_exact(&mut buf).await {
66+
Ok(()) => Ok(buf),
67+
Err(ReadExactError::ReadError(e)) => Err(e.into()),
68+
Err(ReadExactError::FinishedEarly(_)) => Err(io::ErrorKind::UnexpectedEof.into()),
69+
}
70+
}
71+
72+
async fn read_bytes(&mut self, len: usize) -> io::Result<bytes::Bytes> {
73+
let mut buf = vec![0u8; len];
74+
match self.0.read_exact(&mut buf).await {
75+
Ok(()) => Ok(buf.into()),
76+
Err(ReadExactError::ReadError(e)) => Err(e.into()),
77+
Err(ReadExactError::FinishedEarly(n)) => {
78+
buf.truncate(n);
79+
Ok(buf.into())
80+
}
81+
}
82+
}
83+
}
84+
85+
type DefaultReader = IrohStreamReader;
86+
type DefaultWriter = IrohStreamWriter;
4487

4588
/// Stats about the transfer.
4689
#[derive(
@@ -96,7 +139,7 @@ pub mod fsm {
96139
};
97140
use derive_more::From;
98141
use iroh::endpoint::Connection;
99-
use iroh_io::{AsyncSliceWriter, AsyncStreamReader, AsyncStreamWriter, TokioStreamReader};
142+
use iroh_io::{AsyncSliceWriter, AsyncStreamReader, AsyncStreamWriter};
100143

101144
use super::*;
102145
use crate::{
@@ -134,8 +177,8 @@ pub mod fsm {
134177
.open_bi()
135178
.await
136179
.map_err(|e| OpenSnafu.into_error(e.into()))?;
137-
let reader = TokioStreamReader::new(reader);
138-
let mut writer = TokioStreamWriter(writer);
180+
let reader = IrohStreamReader(reader);
181+
let mut writer = IrohStreamWriter(writer);
139182
let request = Request::GetMany(request);
140183
let request_bytes = postcard::to_stdvec(&request)
141184
.map_err(|source| BadRequestSnafu.into_error(source.into()))?;
@@ -227,8 +270,8 @@ pub mod fsm {
227270
.open_bi()
228271
.await
229272
.map_err(|e| OpenSnafu.into_error(e.into()))?;
230-
let reader = TokioStreamReader::new(reader);
231-
let writer = TokioStreamWriter(writer);
273+
let reader = IrohStreamReader(reader);
274+
let writer = IrohStreamWriter(writer);
232275
Ok(AtConnected {
233276
start,
234277
reader,
@@ -375,7 +418,7 @@ pub mod fsm {
375418

376419
/// State of the get response when we start reading a collection
377420
#[derive(Debug)]
378-
pub struct AtStartRoot<R: AsyncStreamReader = TokioStreamReader<RecvStream>> {
421+
pub struct AtStartRoot<R: AsyncStreamReader = DefaultReader> {
379422
ranges: ChunkRanges,
380423
reader: R,
381424
misc: Box<Misc>,
@@ -384,7 +427,7 @@ pub mod fsm {
384427

385428
/// State of the get response when we start reading a child
386429
#[derive(Debug)]
387-
pub struct AtStartChild<R: AsyncStreamReader = TokioStreamReader<RecvStream>> {
430+
pub struct AtStartChild<R: AsyncStreamReader = DefaultReader> {
388431
ranges: ChunkRanges,
389432
reader: R,
390433
misc: Box<Misc>,
@@ -459,7 +502,7 @@ pub mod fsm {
459502

460503
/// State before reading a size header
461504
#[derive(Debug)]
462-
pub struct AtBlobHeader<R: AsyncStreamReader = TokioStreamReader<RecvStream>> {
505+
pub struct AtBlobHeader<R: AsyncStreamReader = DefaultReader> {
463506
ranges: ChunkRanges,
464507
reader: R,
465508
misc: Box<Misc>,
@@ -587,7 +630,7 @@ pub mod fsm {
587630

588631
/// State while we are reading content
589632
#[derive(Debug)]
590-
pub struct AtBlobContent<R: AsyncStreamReader = TokioStreamReader<RecvStream>> {
633+
pub struct AtBlobContent<R: AsyncStreamReader = DefaultReader> {
591634
stream: ResponseDecoder<R>,
592635
misc: Box<Misc>,
593636
}
@@ -683,17 +726,17 @@ pub mod fsm {
683726
impl From<bao_tree::io::DecodeError> for DecodeError {
684727
fn from(value: bao_tree::io::DecodeError) -> Self {
685728
match value {
686-
bao_tree::io::DecodeError::ParentNotFound(x) => {
687-
decode_error::ParentNotFoundSnafu { node: x }.build()
729+
bao_tree::io::DecodeError::ParentNotFound(node) => {
730+
decode_error::ParentNotFoundSnafu { node }.build()
688731
}
689-
bao_tree::io::DecodeError::LeafNotFound(x) => {
690-
decode_error::LeafNotFoundSnafu { num: x }.build()
732+
bao_tree::io::DecodeError::LeafNotFound(num) => {
733+
decode_error::LeafNotFoundSnafu { num }.build()
691734
}
692735
bao_tree::io::DecodeError::ParentHashMismatch(node) => {
693736
decode_error::ParentHashMismatchSnafu { node }.build()
694737
}
695-
bao_tree::io::DecodeError::LeafHashMismatch(chunk) => {
696-
decode_error::LeafHashMismatchSnafu { num: chunk }.build()
738+
bao_tree::io::DecodeError::LeafHashMismatch(num) => {
739+
decode_error::LeafHashMismatchSnafu { num }.build()
697740
}
698741
bao_tree::io::DecodeError::Io(cause) => decode_error::ReadSnafu.into_error(cause),
699742
}
@@ -876,14 +919,14 @@ pub mod fsm {
876919

877920
/// State after we have read all the content for a blob
878921
#[derive(Debug)]
879-
pub struct AtEndBlob<R: AsyncStreamReader = TokioStreamReader<RecvStream>> {
922+
pub struct AtEndBlob<R: AsyncStreamReader = DefaultReader> {
880923
stream: R,
881924
misc: Box<Misc>,
882925
}
883926

884927
/// The next state after the end of a blob
885928
#[derive(Debug, From)]
886-
pub enum EndBlobNext<R: AsyncStreamReader = TokioStreamReader<RecvStream>> {
929+
pub enum EndBlobNext<R: AsyncStreamReader = DefaultReader> {
887930
/// Response is expected to have more children
888931
MoreChildren(AtStartChild<R>),
889932
/// No more children expected
@@ -909,7 +952,7 @@ pub mod fsm {
909952

910953
/// State when finishing the get response
911954
#[derive(Debug)]
912-
pub struct AtClosing<R: AsyncStreamReader = TokioStreamReader<RecvStream>> {
955+
pub struct AtClosing<R: AsyncStreamReader = DefaultReader> {
913956
misc: Box<Misc>,
914957
reader: R,
915958
check_extra_data: bool,

src/store/fs/util/entity_manager.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1186,10 +1186,6 @@ mod tests {
11861186
.spawn(id, move |arg| async move {
11871187
match arg {
11881188
SpawnArg::Active(state) => {
1189-
println!(
1190-
"Adding value {} to entity actor with id {:?}",
1191-
value, state.id
1192-
);
11931189
state
11941190
.with_value(|v| *v = v.wrapping_add(value))
11951191
.await

src/tests.rs

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -556,6 +556,7 @@ async fn two_nodes_hash_seq(
556556
}
557557

558558
#[tokio::test]
559+
559560
async fn two_nodes_hash_seq_fs() -> TestResult<()> {
560561
tracing_subscriber::fmt::try_init().ok();
561562
let (_testdir, (r1, store1, _), (r2, store2, _)) = two_node_test_setup_fs().await?;
@@ -578,9 +579,7 @@ async fn two_nodes_hash_seq_progress() -> TestResult<()> {
578579
let root = add_test_hash_seq(&store1, sizes).await?;
579580
let conn = r2.endpoint().connect(addr1, crate::ALPN).await?;
580581
let mut stream = store2.remote().fetch(conn, root).stream();
581-
while let Some(item) = stream.next().await {
582-
println!("{item:?}");
583-
}
582+
while let Some(_) = stream.next().await {}
584583
check_presence(&store2, &sizes).await?;
585584
Ok(())
586585
}
@@ -648,9 +647,7 @@ async fn node_serve_blobs() -> TestResult<()> {
648647
let expected = test_data(size);
649648
let hash = Hash::new(&expected);
650649
let mut stream = get::request::get_blob(conn.clone(), hash);
651-
while let Some(item) = stream.next().await {
652-
println!("{item:?}");
653-
}
650+
while let Some(_) = stream.next().await {}
654651
let actual = get::request::get_blob(conn.clone(), hash).await?;
655652
assert_eq!(actual.len(), expected.len(), "size: {size}");
656653
}

0 commit comments

Comments
 (0)