use super::super::*;
use crate::types::Value;
fn approx(a: Value, b: f64, tol: f64) -> bool {
if let Value::Number(n) = a { (n - b).abs() < tol } else { false }
}
#[test]
fn pricedisc_zero_discount_returns_redemption() {
let args = [
Value::Number(44927.0), Value::Number(45108.0), Value::Number(0.0), Value::Number(100.0),
];
assert!(approx(pricedisc_fn(&args), 100.0, 1e-9));
}
#[test]
fn coupdays_annual_frequency() {
let args = [
Value::Number(44927.0), Value::Number(45658.0), Value::Number(1.0), Value::Number(0.0), ];
assert!(approx(coupdays_fn(&args), 360.0, 1e-4));
}