tokio-seqpacket 0.8.2

unix seqpacket sockets for tokio
Documentation
use assert2::assert;
use tokio_seqpacket::UnixSeqpacket;

/// Test a simple send and recv call.
#[tokio::test]
#[allow(deprecated)] // It may be deprecated, but it should still work.
async fn send_recv() {
	assert!(let Ok((a, b)) = UnixSeqpacket::pair());

	let (read_a, write_a) = a.split();
	let (read_b, write_b) = b.split();

	assert!(let Ok(_) = write_a.send(b"Hello B!").await);
	assert!(let Ok(_) = write_b.send(b"Hello A!").await);

	let mut buffer = [0u8; 128];

	assert!(let Ok(len) = read_b.recv(&mut buffer).await);
	assert!(&buffer[..len] == b"Hello B!");

	assert!(let Ok(len) = read_a.recv(&mut buffer).await);
	assert!(&buffer[..len] == b"Hello A!");
}