Trait unimock::MockFn

source ·
pub trait MockFn: Sized + 'static {
    type Inputs<'i>;
    type OutputKind: Kind;
    type AnswerFn: ?Sized + Send + Sync;

    // Required method
    fn info() -> MockFnInfo;

    // Provided methods
    fn debug_inputs(inputs: &Self::Inputs<'_>) -> Box<[Option<String>]> { ... }
    fn stub<E>(self, each_fn: E) -> Each<Self>
       where E: FnOnce(&mut Each<Self>) { ... }
    fn some_call(
        self,
        matching_fn: &dyn Fn(&mut Matching<Self>)
    ) -> DefineResponse<'static, Self, InAnyOrder> { ... }
    fn each_call(
        self,
        matching_fn: &dyn Fn(&mut Matching<Self>)
    ) -> DefineMultipleResponses<'static, Self, InAnyOrder> { ... }
    fn next_call(
        self,
        matching_fn: &dyn Fn(&mut Matching<Self>)
    ) -> DefineResponse<'static, Self, InOrder> { ... }
}
Expand description

The main trait used for unimock configuration.

MockFn describes functional APIs that may be called via dispatch, a.k.a. Inversion of Control. Virtuality should be regarded as as test-time virtuality: A virtual function is either the real deal OR it is mocked.

In Rust, the most convenient way to perform a virtualized/dispatched function call is to call a trait method.

MockFn only provides metadata about an API, it is not directly callable.

As this is a trait itself, it needs to be implemented to be useful. Methods are not types, so we cannot implement MockFn for those. But a surrogate type can be introduced:

trait MockMe {
    fn method(&self);
}

// The method can be referred to via the following empty surrogate struct:
mod MockMeMock {
    pub struct method;
}

/* impl MockFn for MockMeMock::method ... */

Required Associated Types§

source

type Inputs<'i>

The inputs to a mockable function.

  • For a function with no parameters, the type should be the empty tuple ().
  • For a function with 1 parameter T, the type should be T.
  • For a function with N parameters, the type should be the tuple (T1, T2, ..).
source

type OutputKind: Kind

A type that describes how the mocked function responds.

The Kind trait describes a type used internally to store a response value.

The response value is Unimock’s internal representation of the function’s return value between two points it time:

  1. The user specifies it upfront as part of a Clause.
  2. The conversion of this value into the mocked function’s final output value.
source

type AnswerFn: ?Sized + Send + Sync

The function type used for function application on a call pattern.

Required Methods§

source

fn info() -> MockFnInfo

Static information about the mocked method

Provided Methods§

source

fn debug_inputs(inputs: &Self::Inputs<'_>) -> Box<[Option<String>]>

Compute some debug representation of the inputs.

source

fn stub<E>(self, each_fn: E) -> Each<Self>
where E: FnOnce(&mut Each<Self>),

Create a stubbing clause by grouping calls.

A stub sets up call patterns on a single function, that can be matched in any order.

For exact order verification, reach for MockFn::next_call instead.

source

fn some_call( self, matching_fn: &dyn Fn(&mut Matching<Self>) ) -> DefineResponse<'static, Self, InAnyOrder>

Define a stub-like call pattern directly on this MockFn.

This is a shorthand to avoid calling MockFn::stub if there is only one call pattern that needs to be specified on this MockFn.

As the method name suggests, this will not only configure mock behaviour, but also functions as an assertion that the call must happen.

This call pattern variant supports return values that do not implement Clone, therefore the call pattern can only be matched a single time.

source

fn each_call( self, matching_fn: &dyn Fn(&mut Matching<Self>) ) -> DefineMultipleResponses<'static, Self, InAnyOrder>

Define a stub-like call pattern directly on this MockFn.

This is a shorthand to avoid calling MockFn::stub if there is only one call pattern that needs to be specified on this MockFn.

This variant is specialized for functions called multiple times.

source

fn next_call( self, matching_fn: &dyn Fn(&mut Matching<Self>) ) -> DefineResponse<'static, Self, InOrder>

Initiate a call pattern builder intended to be used as a Clause with exact order verification.

This differens from MockFn::stub, in that that a stub defines all call patterns without any specific required call order. This function takes only single input matcher, that MUST be matched in the order specified, relative to other next calls.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl MockFn for unimock::mock::core::fmt::DebugMock::fmt

Available on crate feature mock-core only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Owning<Result<(), Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock, &mut Formatter<'_>) -> Result<(), Error> + Send + Sync

source§

impl MockFn for unimock::mock::core::fmt::DisplayMock::fmt

Available on crate feature mock-core only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Owning<Result<(), Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock, &mut Formatter<'_>) -> Result<(), Error> + Send + Sync

source§

impl MockFn for finish

Available on crate feature mock-core only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<u64>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock) -> u64 + Send + Sync

source§

impl MockFn for unimock::mock::core::hash::HasherMock::write

Available on crate feature mock-core only.
§

type Inputs<'__i> = &'__i [u8]

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &[u8]) + Send + Sync

source§

impl MockFn for write_i8

Available on crate feature mock-core only.
§

type Inputs<'__i> = i8

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, i8) + Send + Sync

source§

impl MockFn for write_i16

Available on crate feature mock-core only.
§

type Inputs<'__i> = i16

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, i16) + Send + Sync

source§

impl MockFn for write_i32

Available on crate feature mock-core only.
§

type Inputs<'__i> = i32

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, i32) + Send + Sync

source§

impl MockFn for write_i64

Available on crate feature mock-core only.
§

type Inputs<'__i> = i64

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, i64) + Send + Sync

source§

impl MockFn for write_i128

Available on crate feature mock-core only.
§

type Inputs<'__i> = i128

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, i128) + Send + Sync

source§

impl MockFn for write_isize

Available on crate feature mock-core only.
§

type Inputs<'__i> = isize

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, isize) + Send + Sync

source§

impl MockFn for write_u8

Available on crate feature mock-core only.
§

type Inputs<'__i> = u8

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u8) + Send + Sync

source§

impl MockFn for write_u16

Available on crate feature mock-core only.
§

type Inputs<'__i> = u16

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u16) + Send + Sync

source§

impl MockFn for write_u32

Available on crate feature mock-core only.
§

type Inputs<'__i> = u32

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u32) + Send + Sync

source§

impl MockFn for write_u64

Available on crate feature mock-core only.
§

type Inputs<'__i> = u64

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u64) + Send + Sync

source§

impl MockFn for write_u128

Available on crate feature mock-core only.
§

type Inputs<'__i> = u128

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u128) + Send + Sync

source§

impl MockFn for write_usize

Available on crate feature mock-core only.
§

type Inputs<'__i> = usize

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, usize) + Send + Sync

source§

impl MockFn for delay_ms

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = u32

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u32) + Send + Sync

source§

impl MockFn for delay_ns

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = u32

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u32) + Send + Sync

source§

impl MockFn for delay_us

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = u32

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u32) + Send + Sync

source§

impl MockFn for unimock::mock::embedded_hal_1::digital::ErrorMock::kind

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<ErrorKind>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock) -> ErrorKind + Send + Sync

source§

impl MockFn for is_high

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<bool, <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<bool, <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for is_low

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<bool, <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<bool, <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for set_high

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for set_low

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for set_state

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = PinState

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, PinState) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for is_set_high

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<bool, <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<bool, <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for is_set_low

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<bool, <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<bool, <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for toggle

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for unimock::mock::embedded_hal_1::i2c::ErrorMock::kind

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<ErrorKind>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock) -> ErrorKind + Send + Sync

source§

impl MockFn for unimock::mock::embedded_hal_1::pwm::ErrorMock::kind

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<ErrorKind>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock) -> ErrorKind + Send + Sync

source§

impl MockFn for max_duty_cycle

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<u16>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock) -> u16 + Send + Sync

source§

impl MockFn for set_duty_cycle

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = u16

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u16) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for set_duty_cycle_fraction

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = (u16, u16)

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u16, u16) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for set_duty_cycle_fully_off

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for set_duty_cycle_fully_on

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for set_duty_cycle_percent

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = u8

§

type OutputKind = Owning<Result<(), <Unimock as ErrorType>::Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u8) -> Result<(), <Unimock as ErrorType>::Error> + Send + Sync

source§

impl MockFn for unimock::mock::embedded_hal_1::spi::ErrorMock::kind

Available on crate feature mock-embedded-hal-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<ErrorKind>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock) -> ErrorKind + Send + Sync

source§

impl MockFn for unimock::mock::futures_0_3::io::AsyncBufReadMock::consume

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = usize

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, usize) + Send + Sync

source§

impl MockFn for unimock::mock::futures_0_3::io::AsyncBufReadMock::poll_fill_buf

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Deep<Poll<Shallow<Result<&'static [u8], Error>>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>) -> Poll<Result<&'__u [u8], Error>> + Send + Sync

source§

impl MockFn for unimock::mock::futures_0_3::io::AsyncReadMock::poll_read

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = (Impossible, &'__i mut [u8])

§

type OutputKind = Owning<Poll<Result<usize, Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>, &mut [u8]) -> Poll<Result<usize, Error>> + Send + Sync

source§

impl MockFn for poll_read_vectored

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = (Impossible, Impossible)

§

type OutputKind = Owning<Poll<Result<usize, Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>, &mut [IoSliceMut<'_>]) -> Poll<Result<usize, Error>> + Send + Sync

source§

impl MockFn for poll_seek

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = (Impossible, SeekFrom)

§

type OutputKind = Owning<Poll<Result<u64, Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>, SeekFrom) -> Poll<Result<u64, Error>> + Send + Sync

source§

impl MockFn for poll_close

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Owning<Poll<Result<(), Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>) -> Poll<Result<(), Error>> + Send + Sync

source§

impl MockFn for unimock::mock::futures_0_3::io::AsyncWriteMock::poll_flush

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Owning<Poll<Result<(), Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>) -> Poll<Result<(), Error>> + Send + Sync

source§

impl MockFn for unimock::mock::futures_0_3::io::AsyncWriteMock::poll_write

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = (Impossible, &'__i [u8])

§

type OutputKind = Owning<Poll<Result<usize, Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>, &[u8]) -> Poll<Result<usize, Error>> + Send + Sync

source§

impl MockFn for unimock::mock::futures_0_3::io::AsyncWriteMock::poll_write_vectored

Available on crate feature mock-futures-io-0-3 only.
§

type Inputs<'__i> = (Impossible, &'__i [IoSlice<'__i>])

§

type OutputKind = Owning<Poll<Result<usize, Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>, &[IoSlice<'_>]) -> Poll<Result<usize, Error>> + Send + Sync

source§

impl MockFn for source

Available on crate feature mock-std only.
§

type Inputs<'__i> = ()

§

type OutputKind = Shallow<Option<&'static dyn Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock) -> Option<&'__u (dyn Error + 'static)> + Send + Sync

source§

impl MockFn for unimock::mock::std::io::BufReadMock::consume

Available on crate feature mock-std only.
§

type Inputs<'__i> = usize

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, usize) + Send + Sync

source§

impl MockFn for fill_buf

Available on crate feature mock-std only.
§

type Inputs<'__i> = ()

§

type OutputKind = Shallow<Result<&'static [u8], Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<&'__u [u8], Error> + Send + Sync

source§

impl MockFn for read_line

Available on crate feature mock-std only.
§

type Inputs<'__i> = &'__i mut String

§

type OutputKind = Owning<Result<usize, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut String) -> Result<usize, Error> + Send + Sync

source§

impl MockFn for read_until

Available on crate feature mock-std only.
§

type Inputs<'__i> = (u8, &'__i mut Vec<u8>)

§

type OutputKind = Owning<Result<usize, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, u8, &mut Vec<u8>) -> Result<usize, Error> + Send + Sync

source§

impl MockFn for read

Available on crate feature mock-std only.
§

type Inputs<'__i> = &'__i mut [u8]

§

type OutputKind = Owning<Result<usize, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut [u8]) -> Result<usize, Error> + Send + Sync

source§

impl MockFn for read_exact

Available on crate feature mock-std only.
§

type Inputs<'__i> = &'__i mut [u8]

§

type OutputKind = Owning<Result<(), Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut [u8]) -> Result<(), Error> + Send + Sync

source§

impl MockFn for read_to_end

Available on crate feature mock-std only.
§

type Inputs<'__i> = &'__i mut Vec<u8>

§

type OutputKind = Owning<Result<usize, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Vec<u8>) -> Result<usize, Error> + Send + Sync

source§

impl MockFn for read_to_string

Available on crate feature mock-std only.
§

type Inputs<'__i> = &'__i mut String

§

type OutputKind = Owning<Result<usize, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut String) -> Result<usize, Error> + Send + Sync

source§

impl MockFn for read_vectored

Available on crate feature mock-std only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Owning<Result<usize, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut [IoSliceMut<'_>]) -> Result<usize, Error> + Send + Sync

source§

impl MockFn for rewind

Available on crate feature mock-std only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<(), Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<(), Error> + Send + Sync

source§

impl MockFn for seek

Available on crate feature mock-std only.
§

type Inputs<'__i> = SeekFrom

§

type OutputKind = Owning<Result<u64, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, SeekFrom) -> Result<u64, Error> + Send + Sync

source§

impl MockFn for stream_position

Available on crate feature mock-std only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<u64, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<u64, Error> + Send + Sync

source§

impl MockFn for flush

Available on crate feature mock-std only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<Result<(), Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock) -> Result<(), Error> + Send + Sync

source§

impl MockFn for unimock::mock::std::io::WriteMock::write

Available on crate feature mock-std only.
§

type Inputs<'__i> = &'__i [u8]

§

type OutputKind = Owning<Result<usize, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &[u8]) -> Result<usize, Error> + Send + Sync

source§

impl MockFn for write_all

Available on crate feature mock-std only.
§

type Inputs<'__i> = &'__i [u8]

§

type OutputKind = Owning<Result<(), Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &[u8]) -> Result<(), Error> + Send + Sync

source§

impl MockFn for write_vectored

Available on crate feature mock-std only.
§

type Inputs<'__i> = &'__i [IoSlice<'__i>]

§

type OutputKind = Owning<Result<usize, Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &[IoSlice<'_>]) -> Result<usize, Error> + Send + Sync

source§

impl MockFn for report

Available on crate feature mock-std only.
§

type Inputs<'i> = ()

§

type OutputKind = Owning<ExitCode>

§

type AnswerFn = dyn Fn() -> report + Send + Sync

source§

impl MockFn for unimock::mock::tokio_1::io::AsyncBufReadMock::consume

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = usize

§

type OutputKind = Owning<()>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, usize) + Send + Sync

source§

impl MockFn for unimock::mock::tokio_1::io::AsyncBufReadMock::poll_fill_buf

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Deep<Poll<Shallow<Result<&'static [u8], Error>>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>) -> Poll<Result<&'__u [u8], Error>> + Send + Sync

source§

impl MockFn for unimock::mock::tokio_1::io::AsyncReadMock::poll_read

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = (Impossible, Impossible)

§

type OutputKind = Owning<Poll<Result<(), Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>, &mut ReadBuf<'_>) -> Poll<Result<(), Error>> + Send + Sync

source§

impl MockFn for poll_complete

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Owning<Poll<Result<u64, Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>) -> Poll<Result<u64, Error>> + Send + Sync

source§

impl MockFn for start_seek

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = SeekFrom

§

type OutputKind = Owning<Result<(), Error>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, SeekFrom) -> Result<(), Error> + Send + Sync

source§

impl MockFn for is_write_vectored

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = ()

§

type OutputKind = Owning<bool>

§

type AnswerFn = dyn for<'__u> Fn(&'__u Unimock) -> bool + Send + Sync

source§

impl MockFn for unimock::mock::tokio_1::io::AsyncWriteMock::poll_flush

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Owning<Poll<Result<(), Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>) -> Poll<Result<(), Error>> + Send + Sync

source§

impl MockFn for poll_shutdown

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = Impossible

§

type OutputKind = Owning<Poll<Result<(), Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>) -> Poll<Result<(), Error>> + Send + Sync

source§

impl MockFn for unimock::mock::tokio_1::io::AsyncWriteMock::poll_write

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = (Impossible, &'__i [u8])

§

type OutputKind = Owning<Poll<Result<usize, Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>, &[u8]) -> Poll<Result<usize, Error>> + Send + Sync

source§

impl MockFn for unimock::mock::tokio_1::io::AsyncWriteMock::poll_write_vectored

Available on crate feature mock-tokio-1 only.
§

type Inputs<'__i> = (Impossible, &'__i [IoSlice<'__i>])

§

type OutputKind = Owning<Poll<Result<usize, Error>>>

§

type AnswerFn = dyn for<'__u> Fn(&'__u mut Unimock, &mut Context<'_>, &[IoSlice<'_>]) -> Poll<Result<usize, Error>> + Send + Sync