mockiato 0.9.5

A strict, yet friendly mocking library for Rust 2018
Documentation
use mockiato::mockable;

#[mockable]
trait Greeter {
    fn greet(&self, name: &str) -> String;
}

#[test]
fn cloneable_mocks_work() {
    let mut greeter = GreeterMock::new();

    greeter
        .expect_greet(|arg| arg.partial_eq("Tom"))
        .times(2)
        .returns(String::from("Hello Tom"));

    greeter
        .expect_greet(|arg| arg.partial_eq(String::from("Peter")))
        .returns(String::from("Hello Peter"));

    assert_eq!("Hello Tom", greeter.greet("Tom"));
    assert_eq!("Hello Tom", greeter.greet("Tom"));

    assert_eq!("Hello Peter", greeter.greet("Peter"));
}