Skip to content

Commit 761ae74

Browse files
committed
test: add extra sign tests to check +0.0 and -0.0
1 parent bf2694f commit 761ae74

File tree

1 file changed

+14
-0
lines changed
  • library/coretests/tests/num

1 file changed

+14
-0
lines changed

library/coretests/tests/num/mod.rs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -928,7 +928,9 @@ macro_rules! test_float {
928928
#[cfg(not(bootstrap))]
929929
fn floor() {
930930
$fassert!((0.0 as $fty).floor(), 0.0);
931+
$fassert!((0.0 as $fty).floor().is_sign_positive());
931932
$fassert!((-0.0 as $fty).floor(), -0.0);
933+
$fassert!((0.0 as $fty).floor().is_sign_negative());
932934
$fassert!((0.5 as $fty).floor(), 0.0);
933935
$fassert!((-0.5 as $fty).floor(), -1.0);
934936
$fassert!((1.5 as $fty).floor(), 1.0);
@@ -944,7 +946,9 @@ macro_rules! test_float {
944946
#[cfg(not(bootstrap))]
945947
fn ceil() {
946948
$fassert!((0.0 as $fty).ceil(), 0.0);
949+
$fassert!((0.0 as $fty).ceil().is_sign_positive());
947950
$fassert!((-0.0 as $fty).ceil(), 0.0);
951+
$fassert!((-0.0 as $fty).ceil().is_sign_negative());
948952
$fassert!((0.5 as $fty).ceil(), 1.0);
949953
$fassert!((-0.5 as $fty).ceil(), 0.0);
950954
$fassert!(($max as $fty).ceil(), $max);
@@ -959,7 +963,9 @@ macro_rules! test_float {
959963
#[cfg(not(bootstrap))]
960964
fn round() {
961965
$fassert!((0.0 as $fty).round(), 0.0);
966+
$fassert!((0.0 as $fty).round().is_sign_positive());
962967
$fassert!((-0.0 as $fty).round(), 0.0);
968+
$fassert!((-0.0 as $fty).round().is_sign_negative());
963969
$fassert!((0.5 as $fty).round(), 1.0);
964970
$fassert!((-0.5 as $fty).round(), -1.0);
965971
$fassert!(($max as $fty).round(), $max);
@@ -974,9 +980,13 @@ macro_rules! test_float {
974980
#[cfg(not(bootstrap))]
975981
fn round_ties_even() {
976982
$fassert!((0.0 as $fty).round_ties_even(), 0.0);
983+
$fassert!((0.0 as $fty).round_ties_even().is_sign_positive());
977984
$fassert!((-0.0 as $fty).round_ties_even(), 0.0);
985+
$fassert!((-0.0 as $fty).round_ties_even().is_sign_negative());
978986
$fassert!((0.5 as $fty).round_ties_even(), 0.0);
987+
$fassert!((0.5 as $fty).round_ties_even().is_sign_positive());
979988
$fassert!((-0.5 as $fty).round_ties_even(), -0.0);
989+
$fassert!((-0.5 as $fty).round_ties_even().is_sign_negative());
980990
$fassert!(($max as $fty).round_ties_even(), $max);
981991
$fassert!(($min as $fty).round_ties_even(), $min);
982992
$fassert!(($min_pos as $fty).round_ties_even(), 0.0);
@@ -989,9 +999,13 @@ macro_rules! test_float {
989999
#[cfg(not(bootstrap))]
9901000
fn trunc() {
9911001
$fassert!((0.0 as $fty).trunc(), 0.0);
1002+
$fassert!((0.0 as $fty).trunc().is_sign_positive());
9921003
$fassert!((-0.0 as $fty).trunc(), -0.0);
1004+
$fassert!((-0.0 as $fty).trunc().is_sign_negative());
9931005
$fassert!((0.5 as $fty).trunc(), 0.0);
1006+
$fassert!((0.5 as $fty).trunc().is_sign_positive());
9941007
$fassert!((-0.5 as $fty).trunc(), -0.0);
1008+
$fassert!((-0.5 as $fty).trunc().is_sign_negative());
9951009
$fassert!(($max as $fty).trunc(), $max);
9961010
$fassert!(($min as $fty).trunc(), $min);
9971011
$fassert!(($min_pos as $fty).trunc(), 0.0);

0 commit comments

Comments
 (0)