summaryrefslogtreecommitdiff
path: root/examples/06-enum/output/rust/src/lib.rs
blob: ae0b67c773dd59f64e9314083b275aadfa8aa858 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
mod numbers;

use numbers::SmallNumber;

fn eval(small_number: SmallNumber) -> i32 {
    match small_number {
        SmallNumber::Zero => 0,
        SmallNumber::One => 1,
        SmallNumber::Two => 2,
    }
}

#[cfg(test)]
mod test {
    use super::numbers::SmallNumber;

    #[test]
    fn can_eval_small_numbers() {
        assert_eq!(super::eval(SmallNumber::Zero), 0);
        assert_eq!(super::eval(SmallNumber::One), 1);
        assert_eq!(super::eval(SmallNumber::Two), 2);
    }
}