pub struct WriteStruct { /* fields omitted */ }
Structure containing the input data to verify and/or result to return
when the MockStream's write function is called
Set the result to be returned for any write() calls
Note: This will be ignored if set_input is also used
- result - The UartResult to return in future write() calls
use rust_uart::*;
use rust_uart::mock::*;
fn test_write_error() {
let mut mock = MockStream::default();
mock.write
.set_result(Err(UartError::GenericError.into()));
let connection = Connection {
stream: Box::new(mock),
};
let packet: [u8; 40] = [0; 40];
assert_eq!(
connection.write(&packet).unwrap_err(),
UartError::GenericError
);
}
Set the input to validate for any write() calls
- input - The input data expected from write() calls
use rust_uart::*;
use rust_uart::mock::*;
fn test_write_good() {
let mut mock = MockStream::default();
mock.write.set_input(vec![0, 1, 2, 3]);
let connection = Connection {
stream: Box::new(mock),
};
let packet: [u8; 4] = [0, 1, 2, 3];
assert_eq!(connection.write(&packet), Ok(()));
}