Skip to content

Commit c2e6b39

Browse files
committed
Consolidate neg_infinity tests
1 parent c5e67b4 commit c2e6b39

File tree

5 files changed

+18
-48
lines changed

5 files changed

+18
-48
lines changed

library/coretests/tests/floats/f128.rs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -40,18 +40,6 @@ const NAN_MASK2: u128 = 0x00005555555555555555555555555555;
4040
// FIXME(f16_f128,miri): many of these have to be disabled since miri does not yet support
4141
// the intrinsics.
4242

43-
#[test]
44-
fn test_neg_infinity() {
45-
let neg_inf: f128 = f128::NEG_INFINITY;
46-
assert!(neg_inf.is_infinite());
47-
assert!(!neg_inf.is_finite());
48-
assert!(!neg_inf.is_sign_positive());
49-
assert!(neg_inf.is_sign_negative());
50-
assert!(!neg_inf.is_nan());
51-
assert!(!neg_inf.is_normal());
52-
assert_eq!(Fp::Infinite, neg_inf.classify());
53-
}
54-
5543
#[test]
5644
fn test_zero() {
5745
let zero: f128 = 0.0f128;

library/coretests/tests/floats/f16.rs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -46,18 +46,6 @@ const NAN_MASK2: u16 = 0x0155;
4646
// FIXME(f16_f128,miri): many of these have to be disabled since miri does not yet support
4747
// the intrinsics.
4848

49-
#[test]
50-
fn test_neg_infinity() {
51-
let neg_inf: f16 = f16::NEG_INFINITY;
52-
assert!(neg_inf.is_infinite());
53-
assert!(!neg_inf.is_finite());
54-
assert!(!neg_inf.is_sign_positive());
55-
assert!(neg_inf.is_sign_negative());
56-
assert!(!neg_inf.is_nan());
57-
assert!(!neg_inf.is_normal());
58-
assert_eq!(Fp::Infinite, neg_inf.classify());
59-
}
60-
6149
#[test]
6250
fn test_zero() {
6351
let zero: f16 = 0.0f16;

library/coretests/tests/floats/f32.rs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,18 +30,6 @@ const NAN_MASK2: u32 = 0x0055_5555;
3030
/// They serve as a way to get an idea of the real precision of floating point operations on different platforms.
3131
const APPROX_DELTA: f32 = if cfg!(miri) { 1e-4 } else { 1e-6 };
3232

33-
#[test]
34-
fn test_neg_infinity() {
35-
let neg_inf: f32 = f32::NEG_INFINITY;
36-
assert!(neg_inf.is_infinite());
37-
assert!(!neg_inf.is_finite());
38-
assert!(!neg_inf.is_sign_positive());
39-
assert!(neg_inf.is_sign_negative());
40-
assert!(!neg_inf.is_nan());
41-
assert!(!neg_inf.is_normal());
42-
assert_eq!(Fp::Infinite, neg_inf.classify());
43-
}
44-
4533
#[test]
4634
fn test_zero() {
4735
let zero: f32 = 0.0f32;

library/coretests/tests/floats/f64.rs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,18 +25,6 @@ const NAN_MASK1: u64 = 0x000a_aaaa_aaaa_aaaa;
2525
/// Second pattern over the mantissa
2626
const NAN_MASK2: u64 = 0x0005_5555_5555_5555;
2727

28-
#[test]
29-
fn test_neg_infinity() {
30-
let neg_inf: f64 = f64::NEG_INFINITY;
31-
assert!(neg_inf.is_infinite());
32-
assert!(!neg_inf.is_finite());
33-
assert!(!neg_inf.is_sign_positive());
34-
assert!(neg_inf.is_sign_negative());
35-
assert!(!neg_inf.is_nan());
36-
assert!(!neg_inf.is_normal());
37-
assert_eq!(Fp::Infinite, neg_inf.classify());
38-
}
39-
4028
#[test]
4129
fn test_zero() {
4230
let zero: f64 = 0.0f64;

library/coretests/tests/floats/mod.rs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,24 @@ float_test! {
304304
}
305305
}
306306

307+
float_test! {
308+
name: neg_infinity,
309+
attrs: {
310+
f16: #[cfg(any(miri, target_has_reliable_f16))],
311+
f128: #[cfg(any(miri, target_has_reliable_f128))],
312+
},
313+
test<Float> {
314+
let neg_inf: Float = Float::NEG_INFINITY;
315+
assert!(neg_inf.is_infinite());
316+
assert!(!neg_inf.is_finite());
317+
assert!(!neg_inf.is_sign_positive());
318+
assert!(neg_inf.is_sign_negative());
319+
assert!(!neg_inf.is_nan());
320+
assert!(!neg_inf.is_normal());
321+
assert!(matches!(neg_inf.classify(), Fp::Infinite));
322+
}
323+
}
324+
307325
float_test! {
308326
name: min,
309327
attrs: {

0 commit comments

Comments
 (0)