[]Struct mockall_examples::mock_ffi::__ffi_func::Expectation

pub struct Expectation { /* fields omitted */ }

Expectation type for methods that return a 'static type. This is the type returned by the expect_* methods.

Methods

impl Expectation

pub fn return_const<MockallOutput>(&mut self, c: MockallOutput) -> &mut Self where
    MockallOutput: Clone + Into<()> + Send + 'static, 

Return a constant value from the Expectation

The output type must be Clone. The compiler can't always infer the proper type to use with this method; you will usually need to specify it explicitly. i.e. return_const(42i32) instead of return_const(42).

pub fn return_once<F>(&mut self, f: F) -> &mut Self where
    F: FnOnce() + Send + 'static, 

Supply an FnOnce closure that will provide the return value for this Expectation. This is useful for return types that aren't Clone. It will be an error to call this method multiple times.

pub fn return_once_st<F>(&mut self, f: F) -> &mut Self where
    F: FnOnce() + 'static, 

Single-threaded version of return_once. This is useful for return types that are neither Send nor Clone.

It is a runtime error to call the mock method from a different thread than the one that originally called this method. It is also a runtime error to call the method more than once.

pub fn returning<F>(&mut self, f: F) -> &mut Self where
    F: FnMut() + Send + 'static, 

Supply a closure that will provide the return value for this Expectation. The method's arguments are passed to the closure by value.

pub fn returning_st<F>(&mut self, f: F) -> &mut Self where
    F: FnMut() + 'static, 

Single-threaded version of returning. Can be used when the argument or return type isn't Send.

It is a runtime error to call the mock method from a different thread than the one that originally called this method.

pub fn in_sequence(&mut self, seq: &mut Sequence) -> &mut Self

Add this expectation to a Sequence.

pub fn never(&mut self) -> &mut Self

Forbid this expectation from ever being called.

pub fn new() -> Self

Create a new, default, Expectation

pub fn once(&mut self) -> &mut Self

Expect this expectation to be called exactly once. Shortcut for times(1).

pub fn times(&mut self, n: usize) -> &mut Self

Expect this expectation to be called exactly n times.

pub fn times_any(&mut self) -> &mut Self

Allow this expectation to be called any number of times

This behavior is the default, but the method is provided in case the default behavior changes.

pub fn times_range(&mut self, range: Range<usize>) -> &mut Self

Allow this expectation to be called any number of times within a given range

pub fn with(&mut self) -> &mut Self

Set matching crieteria for this Expectation.

The matching predicate can be anything implemening the Predicate trait. Only one matcher can be set per Expectation at a time.

pub fn withf<F>(&mut self, f: F) -> &mut Self where
    F: Fn() -> bool + Send + 'static, 

Set a matching function for this Expectation.

This is equivalent to calling with with a function argument, like with(predicate::function(f)).

Trait Implementations

impl Default for Expectation

Auto Trait Implementations

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Any for T where
    T: Any + ?Sized
[src]

fn type_id_compat(&self) -> TypeId[src]

TODO: once 1.33.0 is the minimum supported compiler version, remove Any::type_id_compat and use StdAny::type_id instead. https://github.com/rust-lang/rust/issues/27745 Read more