blob: ed041349176f84f053fb7e9c5162d2de78b01340 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import core::*;
import result;
fn op1() -> result::t<int, str> { result::ok(666) }
fn op2(&&i: int) -> result::t<uint, str> { result::ok(i as uint + 1u) }
fn op3() -> result::t<int, str> { result::err("sadface") }
#[test]
fn chain_success() {
assert result::get(result::chain(op1(), op2)) == 667u;
}
#[test]
fn chain_failure() {
assert result::get_err(result::chain(op3(), op2)) == "sadface";
}
|