From 9d0a77634637cdf5ca1601afda20db6563dc541c Mon Sep 17 00:00:00 2001 From: Sebastian Schmidt Date: Thu, 13 Apr 2023 14:21:44 +0300 Subject: [PATCH] Add test for powers of negative numbers. --- tests/integration.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/integration.rs b/tests/integration.rs index 6748fe3..1496477 100644 --- a/tests/integration.rs +++ b/tests/integration.rs @@ -2145,3 +2145,13 @@ fn test_variable_assignment_and_iteration() { variables.sort_unstable(); assert_eq!(variables, vec!["a".to_string(), "b".to_string()],); } + +#[test] +fn test_negative_power() { + assert_eq!(eval("3^-2"), Ok(Value::Float(1.0/9.0))); + assert_eq!(eval("3^(-2)"), Ok(Value::Float(1.0/9.0))); + assert_eq!(eval("-3^2"), Ok(Value::Float(-9.0))); + assert_eq!(eval("-(3)^2"), Ok(Value::Float(-9.0))); + assert_eq!(eval("(-3)^-2"), Ok(Value::Float(1.0/9.0))); + assert_eq!(eval("-(3^-2)"), Ok(Value::Float(-1.0/9.0))); +} \ No newline at end of file