Sha256: 680a6052e9a7ab6c0684f17f922243c24691dfe9e83dd099217d439b61d50838
Contents?: true
Size: 1.22 KB
Versions: 23
Compression:
Stored size: 1.22 KB
Contents
#![warn(rust_2018_idioms)] #![cfg(feature = "full")] use std::io::IoSlice; use tokio::io::{AsyncReadExt, AsyncWriteExt}; const HELLO: &[u8] = b"hello world..."; #[tokio::test] async fn write_vectored() { let (mut client, mut server) = tokio::io::duplex(64); let ret = client .write_vectored(&[IoSlice::new(HELLO), IoSlice::new(HELLO)]) .await .unwrap(); assert_eq!(ret, HELLO.len() * 2); client.flush().await.unwrap(); drop(client); let mut buf = Vec::with_capacity(HELLO.len() * 2); let bytes_read = server.read_to_end(&mut buf).await.unwrap(); assert_eq!(bytes_read, HELLO.len() * 2); assert_eq!(buf, [HELLO, HELLO].concat()); } #[tokio::test] async fn write_vectored_and_shutdown() { let (mut client, mut server) = tokio::io::duplex(64); let ret = client .write_vectored(&[IoSlice::new(HELLO), IoSlice::new(HELLO)]) .await .unwrap(); assert_eq!(ret, HELLO.len() * 2); client.shutdown().await.unwrap(); drop(client); let mut buf = Vec::with_capacity(HELLO.len() * 2); let bytes_read = server.read_to_end(&mut buf).await.unwrap(); assert_eq!(bytes_read, HELLO.len() * 2); assert_eq!(buf, [HELLO, HELLO].concat()); }
Version data entries
23 entries across 23 versions & 1 rubygems