use emlex::prelude::*;
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_zero_values() {
let zero: f64 = 0.0;
let (_, ln_result) = eml!((eml 1 (eml (eml 1 zero) 1)));
assert_eq!(ln_result, std::f64::NEG_INFINITY);
let (_, exp_result) = eml!((eml zero 1));
assert_eq!(exp_result, 1.0);
}
#[test]
fn test_negative_values() {
let neg: f64 = -5.0;
let (_, ln_result) = eml!((eml 1 (eml (eml 1 neg) 1)));
assert!(ln_result.is_nan());
}
#[test]
fn test_infinity() {
let inf: f64 = std::f64::INFINITY;
let (_, result) = eml!((eml inf 1));
assert_eq!(result, std::f64::INFINITY);
}
}