use hypercpu::prelude::*; use hypercpu::cond::If; #[tokio::test] async fn is_true() { let c = true; let t = 1; let f = 2; let i = If::new(c, t, f); let r = i.resolve().await; assert_eq!(r.to_then().await, Some(1)); } #[tokio::test] async fn is_false() { let c = false; let t = 1; let f = 2; let i = If::new(c, t, f); let r = i.resolve().await; assert_eq!(r.to_otherwise().await, Some(2)); } #[tokio::test] async fn nested() { let a = 10; let b = 20; let c: i32 = If::new(a > b, a, b) .resolve() .await .to_otherwise() .await .unwrap(); assert_eq!(c, 20); }