42 lines
877 B
Rust
42 lines
877 B
Rust
|
// use evaluate library
|
||
|
#[cfg(test)]
|
||
|
|
||
|
mod tests
|
||
|
{
|
||
|
use expression_eval::parsemath::evaluate::evaluate;
|
||
|
|
||
|
#[test]
|
||
|
fn test_expression_one()
|
||
|
{
|
||
|
let value = evaluate("2*3+(4-5)+2^3/4".to_string());
|
||
|
assert_eq!(value.unwrap(), 7.0);
|
||
|
}
|
||
|
|
||
|
#[test]
|
||
|
fn test_expression_two()
|
||
|
{
|
||
|
let value = evaluate("5^7+8-33".to_string());
|
||
|
assert_eq!(value.unwrap(), 78100.00);
|
||
|
}
|
||
|
|
||
|
#[test]
|
||
|
fn test_expression_three()
|
||
|
{
|
||
|
let value = evaluate("2+2/4+10^2".to_string());
|
||
|
assert_eq!(value.unwrap(), 102.5);
|
||
|
}
|
||
|
|
||
|
#[test]
|
||
|
fn test_expression_four()
|
||
|
{
|
||
|
let value = evaluate("7^2+4*7".to_string());
|
||
|
assert_eq!(value.unwrap(), 77.0);
|
||
|
}
|
||
|
|
||
|
#[test]
|
||
|
fn test_expression_five()
|
||
|
{
|
||
|
let value = evaluate("5*2+(5/2)+5".to_string());
|
||
|
assert_eq!(value.unwrap(), 17.5);
|
||
|
}
|
||
|
}
|