use demonstrate::demonstrate;
fn is_4() -> u8 {
4
}
demonstrate! {
describe "module" {
use super::*;
before {
let four = 4;
}
#[should_panic]
it "can fail" {
assert!(four != 4)
}
test "is returnable" -> Result<(), &'static str> {
if is_4() == four {
Ok(())
} else {
Err("It isn't 4! :o")
}
}
#[async_attributes::test]
async context "asynchronous" {
before {
let is_4_task = async_std::task::spawn(async {
is_4()
});
}
it "awaits" {
assert_eq!(four, is_4_task.await)
}
}
}
}