use culpa::{throw, throws};

#[throws(as Option)]
fn foo(x: bool) -> i32 {
    if x {
        throw!();
    }
    0
}

#[test]
fn test_outcome_true() {
    assert!(foo(true).is_none())
}

#[test]
fn test_outcome_false() {
    assert_eq!(Some(0), foo(false))
}
