2018-06-13 10:56:29 +02:00
|
|
|
extern crate rhai;
|
|
|
|
|
|
|
|
use rhai::Engine;
|
2017-11-03 17:58:51 +01:00
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn test_not() {
|
|
|
|
let mut engine = Engine::new();
|
|
|
|
|
|
|
|
assert_eq!(engine.eval::<bool>("let not_true = !true; not_true").unwrap(), false);
|
|
|
|
|
|
|
|
assert_eq!(engine.eval::<bool>("fn not(x) { !x } not(false)").unwrap(), true);
|
|
|
|
|
|
|
|
// TODO - do we allow stacking unary operators directly? e.g '!!!!!!!true'
|
|
|
|
assert_eq!(engine.eval::<bool>("!(!(!(!(true))))").unwrap(), true)
|
|
|
|
}
|