options/validation/
outcome.rs1#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
3pub enum Outcome {
4 #[default]
6 Succeeded,
7
8 Skipped,
10}
11
12impl Outcome {
13 #[inline]
15 pub fn succeeded(&self) -> bool {
16 matches!(self, Self::Succeeded)
17 }
18
19 #[inline]
21 pub fn skipped(&self) -> bool {
22 matches!(self, Self::Skipped)
23 }
24}
25
26#[cfg(test)]
27mod tests {
28 use super::*;
29
30 #[test]
31 fn success_should_indicate_succeeded() {
32 let result = Outcome::Succeeded;
34
35 let succeeded = result.succeeded();
37
38 assert!(succeeded);
40 }
41
42 #[test]
43 fn skip_should_indicate_skipped() {
44 let result = Outcome::Skipped;
46
47 let skipped = result.skipped();
49
50 assert!(skipped);
52 }
53}