Struct rust_uart::mock::WriteStruct[][src]

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

Methods

impl WriteStruct
[src]

Set the result to be returned for any write() calls

Note: This will be ignored if set_input is also used

Arguments

  • result - The UartResult to return in future write() calls

Examples

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

Arguments

  • input - The input data expected from write() calls

Examples

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(()));
}

Auto Trait Implementations

impl Send for WriteStruct

impl !Sync for WriteStruct