pub const NI_F64: f64 = 1.8893766604049191_f64;
pub const NI_F32: f32 = 1.8893767_f32;
pub const NI_50_DIGITS: &str = "1.88937666040491913115597775087642096081019761538215";
#[cfg(test)]
mod tests {
use super::*;
use crate::compute;
use serial_test::serial;
#[test]
#[serial]
fn test_ni_f64_value() {
assert!((NI_F64 - 1.8893767).abs() < 1e-7);
}
#[test]
#[serial]
fn test_ni_50_digits_prefix() {
assert!(NI_50_DIGITS.starts_with("1.889376660"));
}
#[cfg(feature = "backend-dashu")]
#[test]
#[serial]
fn verify_50_digits_exact() {
use crate::backend::NiFloat;
use crate::backend::dashu::DashuBackend;
let bits = compute::digits_to_bits(100);
let val = compute::compute::<DashuBackend>(bits);
let computed_str = val.to_decimal_string(50);
assert_eq!(
computed_str, NI_50_DIGITS,
"\nEXPECTED: {}\nCOMPUTED: {}",
NI_50_DIGITS, computed_str
);
}
}