about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRoger Curley <rocurley@gmail.com>2025-07-13 22:46:18 -0400
committerRoger Curley <rocurley@gmail.com>2025-08-07 22:06:56 -0400
commit951ef57b85bfa119b34378fdd55bdabd6d22e6d6 (patch)
tree6e5c5dc68d676715e66daa74c48eb0d90c9a422a
parent83878ea2286f2b2e21411d134f390b31bbfaec7b (diff)
downloadrust-951ef57b85bfa119b34378fdd55bdabd6d22e6d6.tar.gz
rust-951ef57b85bfa119b34378fdd55bdabd6d22e6d6.zip
Consolidate is_positive tests
-rw-r--r--library/coretests/tests/floats/f128.rs13
-rw-r--r--library/coretests/tests/floats/f16.rs13
-rw-r--r--library/coretests/tests/floats/f32.rs13
-rw-r--r--library/coretests/tests/floats/f64.rs13
-rw-r--r--library/coretests/tests/floats/mod.rs21
5 files changed, 21 insertions, 52 deletions
diff --git a/library/coretests/tests/floats/f128.rs b/library/coretests/tests/floats/f128.rs
index bd064443b2a..d67cae19bb7 100644
--- a/library/coretests/tests/floats/f128.rs
+++ b/library/coretests/tests/floats/f128.rs
@@ -40,19 +40,6 @@ const NAN_MASK2: u128 = 0x00005555555555555555555555555555;
 // the intrinsics.
 
 #[test]
-fn test_is_sign_positive() {
-    assert!(f128::INFINITY.is_sign_positive());
-    assert!(1f128.is_sign_positive());
-    assert!(0f128.is_sign_positive());
-    assert!(!(-0f128).is_sign_positive());
-    assert!(!(-1f128).is_sign_positive());
-    assert!(!f128::NEG_INFINITY.is_sign_positive());
-    assert!(!(1f128 / f128::NEG_INFINITY).is_sign_positive());
-    assert!(f128::NAN.is_sign_positive());
-    assert!(!(-f128::NAN).is_sign_positive());
-}
-
-#[test]
 fn test_is_sign_negative() {
     assert!(!f128::INFINITY.is_sign_negative());
     assert!(!1f128.is_sign_negative());
diff --git a/library/coretests/tests/floats/f16.rs b/library/coretests/tests/floats/f16.rs
index 11b4a38a7ed..9ec43f012a2 100644
--- a/library/coretests/tests/floats/f16.rs
+++ b/library/coretests/tests/floats/f16.rs
@@ -46,19 +46,6 @@ const NAN_MASK2: u16 = 0x0155;
 // the intrinsics.
 
 #[test]
-fn test_is_sign_positive() {
-    assert!(f16::INFINITY.is_sign_positive());
-    assert!(1f16.is_sign_positive());
-    assert!(0f16.is_sign_positive());
-    assert!(!(-0f16).is_sign_positive());
-    assert!(!(-1f16).is_sign_positive());
-    assert!(!f16::NEG_INFINITY.is_sign_positive());
-    assert!(!(1f16 / f16::NEG_INFINITY).is_sign_positive());
-    assert!(f16::NAN.is_sign_positive());
-    assert!(!(-f16::NAN).is_sign_positive());
-}
-
-#[test]
 fn test_is_sign_negative() {
     assert!(!f16::INFINITY.is_sign_negative());
     assert!(!1f16.is_sign_negative());
diff --git a/library/coretests/tests/floats/f32.rs b/library/coretests/tests/floats/f32.rs
index 23af02cada0..c4597438250 100644
--- a/library/coretests/tests/floats/f32.rs
+++ b/library/coretests/tests/floats/f32.rs
@@ -30,19 +30,6 @@ const NAN_MASK2: u32 = 0x0055_5555;
 const APPROX_DELTA: f32 = if cfg!(miri) { 1e-4 } else { 1e-6 };
 
 #[test]
-fn test_is_sign_positive() {
-    assert!(f32::INFINITY.is_sign_positive());
-    assert!(1f32.is_sign_positive());
-    assert!(0f32.is_sign_positive());
-    assert!(!(-0f32).is_sign_positive());
-    assert!(!(-1f32).is_sign_positive());
-    assert!(!f32::NEG_INFINITY.is_sign_positive());
-    assert!(!(1f32 / f32::NEG_INFINITY).is_sign_positive());
-    assert!(f32::NAN.is_sign_positive());
-    assert!(!(-f32::NAN).is_sign_positive());
-}
-
-#[test]
 fn test_is_sign_negative() {
     assert!(!f32::INFINITY.is_sign_negative());
     assert!(!1f32.is_sign_negative());
diff --git a/library/coretests/tests/floats/f64.rs b/library/coretests/tests/floats/f64.rs
index cc3311aaa7b..d20f45d872d 100644
--- a/library/coretests/tests/floats/f64.rs
+++ b/library/coretests/tests/floats/f64.rs
@@ -25,19 +25,6 @@ const NAN_MASK1: u64 = 0x000a_aaaa_aaaa_aaaa;
 const NAN_MASK2: u64 = 0x0005_5555_5555_5555;
 
 #[test]
-fn test_is_sign_positive() {
-    assert!(f64::INFINITY.is_sign_positive());
-    assert!(1f64.is_sign_positive());
-    assert!(0f64.is_sign_positive());
-    assert!(!(-0f64).is_sign_positive());
-    assert!(!(-1f64).is_sign_positive());
-    assert!(!f64::NEG_INFINITY.is_sign_positive());
-    assert!(!(1f64 / f64::NEG_INFINITY).is_sign_positive());
-    assert!(f64::NAN.is_sign_positive());
-    assert!(!(-f64::NAN).is_sign_positive());
-}
-
-#[test]
 fn test_is_sign_negative() {
     assert!(!f64::INFINITY.is_sign_negative());
     assert!(!1f64.is_sign_negative());
diff --git a/library/coretests/tests/floats/mod.rs b/library/coretests/tests/floats/mod.rs
index 26735bbeb0d..d45cc73174a 100644
--- a/library/coretests/tests/floats/mod.rs
+++ b/library/coretests/tests/floats/mod.rs
@@ -977,3 +977,24 @@ float_test! {
         assert!(Float::NAN.signum().is_nan());
     }
 }
+
+float_test! {
+    name: is_sign_positive,
+    attrs: {
+        f16: #[cfg(any(miri, target_has_reliable_f16))],
+        f128: #[cfg(any(miri, target_has_reliable_f128))],
+    },
+    test<Float> {
+        let one: Float = 1.0;
+        let zero: Float = 0.0;
+        assert!(Float::INFINITY.is_sign_positive());
+        assert!(one.is_sign_positive());
+        assert!(zero.is_sign_positive());
+        assert!(!(-zero).is_sign_positive());
+        assert!(!(-one).is_sign_positive());
+        assert!(!Float::NEG_INFINITY.is_sign_positive());
+        assert!(!(one / Float::NEG_INFINITY).is_sign_positive());
+        assert!(Float::NAN.is_sign_positive());
+        assert!(!(-Float::NAN).is_sign_positive());
+    }
+}