kaos 0.1.1-alpha.2

Chaotic testing harness
Documentation
///
/// Macro to define a point to flunk
#[macro_export]
macro_rules! flunk {
    ($name:expr) => {{
        $crate::flunker($name, |_| {
            panic!("KAOS: Flunking at \"{}\"", $name);
        });
    }};
}

///
/// Define kaos tests
#[macro_export]
macro_rules! kaostest {
    ($name:expr, $body:block) => {{
        let scenario = $crate::KaosFailScenario::setup();
        $crate::flunker_cfg($name, "panic").unwrap();

        $body

        scenario.teardown();
    }};
}


#[cfg(test)]
mod macro_tests {
    #[test]
    fn kaostest() {
        kaostest!("potato", {
            println!("potato");
        });
    }
}