use rhai::{Engine, EvalAltResult, INT}; #[test] fn test_if() -> Result<(), Box> { let engine = Engine::new(); assert_eq!(engine.eval::("if true { 55 }")?, 55); assert_eq!(engine.eval::("if false { 55 } else { 44 }")?, 44); assert_eq!(engine.eval::("if true { 55 } else { 44 }")?, 55); assert_eq!( engine.eval::("if false { 55 } else if true { 33 } else { 44 }")?, 33 ); assert_eq!( engine.eval::( " if false { 55 } else if false { 33 } else if false { 66 } else if false { 77 } else if false { 88 } else { 44 } " )?, 44 ); Ok(()) } #[test] fn test_if_expr() -> Result<(), Box> { let engine = Engine::new(); assert_eq!( engine.eval::( " let x = 42; let y = 1 + if x > 40 { 100 } else { 0 } / x; y " )?, 3 ); Ok(()) }