Increase test coverage.
Implement more tests and exclude modules from test that do not make sense to be tested.
This commit is contained in:
parent
7ebf7e61d5
commit
8b493be1dd
@ -433,13 +433,17 @@ mod tests {
|
|||||||
];
|
];
|
||||||
|
|
||||||
for char in chars {
|
for char in chars {
|
||||||
assert_eq!(format!("{}", char), format!("{}", char_to_partial_token(char)));
|
assert_eq!(
|
||||||
|
format!("{}", char),
|
||||||
|
format!("{}", char_to_partial_token(char))
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_token_display() {
|
fn test_token_display() {
|
||||||
let token_string = "+ - * / % ^ == != > < >= <= && || ! ( ) = += -= *= /= %= ^= &&= ||= , ; ";
|
let token_string =
|
||||||
|
"+ - * / % ^ == != > < >= <= && || ! ( ) = += -= *= /= %= ^= &&= ||= , ; ";
|
||||||
let tokens = tokenize(token_string).unwrap();
|
let tokens = tokenize(token_string).unwrap();
|
||||||
let mut result_string = String::new();
|
let mut result_string = String::new();
|
||||||
|
|
||||||
|
@ -279,7 +279,10 @@ fn test_builtin_functions() {
|
|||||||
// Powers
|
// Powers
|
||||||
assert_eq!(eval("math::exp(2)"), Ok(Value::Float(2.0_f64.exp())));
|
assert_eq!(eval("math::exp(2)"), Ok(Value::Float(2.0_f64.exp())));
|
||||||
assert_eq!(eval("math::exp2(2)"), Ok(Value::Float(2.0_f64.exp2())));
|
assert_eq!(eval("math::exp2(2)"), Ok(Value::Float(2.0_f64.exp2())));
|
||||||
assert_eq!(eval("math::pow(1.5, 1.3)"), Ok(Value::Float(1.5_f64.powf(1.3))));
|
assert_eq!(
|
||||||
|
eval("math::pow(1.5, 1.3)"),
|
||||||
|
Ok(Value::Float(1.5_f64.powf(1.3)))
|
||||||
|
);
|
||||||
// Cos
|
// Cos
|
||||||
assert_eq!(eval("math::cos(0)"), Ok(Value::Float(1.0)));
|
assert_eq!(eval("math::cos(0)"), Ok(Value::Float(1.0)));
|
||||||
assert_eq!(eval("math::acos(1)"), Ok(Value::Float(0.0)));
|
assert_eq!(eval("math::acos(1)"), Ok(Value::Float(0.0)));
|
||||||
@ -295,12 +298,18 @@ fn test_builtin_functions() {
|
|||||||
assert_eq!(eval("math::atan(0)"), Ok(Value::Float(0.0)));
|
assert_eq!(eval("math::atan(0)"), Ok(Value::Float(0.0)));
|
||||||
assert_eq!(eval("math::tanh(0)"), Ok(Value::Float(0.0)));
|
assert_eq!(eval("math::tanh(0)"), Ok(Value::Float(0.0)));
|
||||||
assert_eq!(eval("math::atanh(0)"), Ok(Value::Float(0.0)));
|
assert_eq!(eval("math::atanh(0)"), Ok(Value::Float(0.0)));
|
||||||
assert_eq!(eval("math::atan2(1.2, -5.5)"), Ok(Value::Float(1.2_f64.atan2(-5.5))));
|
assert_eq!(
|
||||||
|
eval("math::atan2(1.2, -5.5)"),
|
||||||
|
Ok(Value::Float(1.2_f64.atan2(-5.5)))
|
||||||
|
);
|
||||||
// Root
|
// Root
|
||||||
assert_eq!(eval("math::sqrt(25)"), Ok(Value::Float(5.0)));
|
assert_eq!(eval("math::sqrt(25)"), Ok(Value::Float(5.0)));
|
||||||
assert_eq!(eval("math::cbrt(8)"), Ok(Value::Float(2.0)));
|
assert_eq!(eval("math::cbrt(8)"), Ok(Value::Float(2.0)));
|
||||||
// Hypotenuse
|
// Hypotenuse
|
||||||
assert_eq!(eval("math::hypot(8.2, 1.1)"), Ok(Value::Float(8.2_f64.hypot(1.1))));
|
assert_eq!(
|
||||||
|
eval("math::hypot(8.2, 1.1)"),
|
||||||
|
Ok(Value::Float(8.2_f64.hypot(1.1)))
|
||||||
|
);
|
||||||
// Rounding
|
// Rounding
|
||||||
assert_eq!(eval("floor(1.1)"), Ok(Value::Float(1.0)));
|
assert_eq!(eval("floor(1.1)"), Ok(Value::Float(1.0)));
|
||||||
assert_eq!(eval("floor(1.9)"), Ok(Value::Float(1.0)));
|
assert_eq!(eval("floor(1.9)"), Ok(Value::Float(1.0)));
|
||||||
|
Loading…
Reference in New Issue
Block a user