added tests near pi for rem_pio2

This commit is contained in:
Igor null 2019-05-13 17:42:18 +03:00
parent f42e570772
commit d3d68a031c
2 changed files with 15 additions and 0 deletions

View File

@ -185,3 +185,11 @@ pub(crate) fn rem_pio2(x: f64) -> (i32, f64, f64) {
}
(n, ty[0], ty[1])
}
#[test]
fn test_near_pi() {
assert_eq!(rem_pio2(3.141592025756836), (2, -6.278329573009626e-7, -2.1125998133974653e-23));
assert_eq!(rem_pio2(3.141592033207416), (2, -6.20382377148128e-7, -2.1125998133974653e-23));
assert_eq!(rem_pio2(3.141592144966125), (2, -5.086236681942706e-7, -2.1125998133974653e-23));
assert_eq!(rem_pio2(3.141592979431152), (2, 3.2584135866119817e-7, -2.1125998133974653e-23));
}

View File

@ -77,3 +77,10 @@ pub fn sin(x: f64) -> f64 {
_ => -k_cos(y0, y1),
}
}
#[test]
fn test_near_pi() {
let x = f64::from_bits(0x400921fb000FD5DD); // 3.141592026217707
let sx = f64::from_bits(0x3ea50d15ced1a4a2); // 6.273720864039205e-7
assert_eq!(sin(x), sx);
}