@@ -634,14 +634,18 @@ assume_usize_width! {
634
634
macro_rules! test_float {
635
635
( $modname: ident, $fty: ty, $inf: expr, $neginf: expr, $nan: expr) => {
636
636
mod $modname {
637
- // FIXME(nagisa): these tests should test for sign of -0.0
638
637
#[ test]
639
638
fn min( ) {
640
639
assert_eq!( ( 0.0 as $fty) . min( 0.0 ) , 0.0 ) ;
640
+ assert!( ( 0.0 as $fty) . min( 0.0 ) . is_sign_positive( ) ) ;
641
641
assert_eq!( ( -0.0 as $fty) . min( -0.0 ) , -0.0 ) ;
642
+ assert!( ( -0.0 as $fty) . min( -0.0 ) . is_sign_negative( ) ) ;
642
643
assert_eq!( ( 9.0 as $fty) . min( 9.0 ) , 9.0 ) ;
643
644
assert_eq!( ( -9.0 as $fty) . min( 0.0 ) , -9.0 ) ;
644
645
assert_eq!( ( 0.0 as $fty) . min( 9.0 ) , 0.0 ) ;
646
+ assert!( ( 0.0 as $fty) . min( 9.0 ) . is_sign_positive( ) ) ;
647
+ assert_eq!( ( -0.0 as $fty) . min( 9.0 ) , -0.0 ) ;
648
+ assert!( ( -0.0 as $fty) . min( 9.0 ) . is_sign_negative( ) ) ;
645
649
assert_eq!( ( -0.0 as $fty) . min( -9.0 ) , -9.0 ) ;
646
650
assert_eq!( ( $inf as $fty) . min( 9.0 ) , 9.0 ) ;
647
651
assert_eq!( ( 9.0 as $fty) . min( $inf) , 9.0 ) ;
@@ -660,11 +664,19 @@ macro_rules! test_float {
660
664
#[ test]
661
665
fn max( ) {
662
666
assert_eq!( ( 0.0 as $fty) . max( 0.0 ) , 0.0 ) ;
667
+ assert!( ( 0.0 as $fty) . max( 0.0 ) . is_sign_positive( ) ) ;
663
668
assert_eq!( ( -0.0 as $fty) . max( -0.0 ) , -0.0 ) ;
669
+ assert!( ( -0.0 as $fty) . max( -0.0 ) . is_sign_negative( ) ) ;
664
670
assert_eq!( ( 9.0 as $fty) . max( 9.0 ) , 9.0 ) ;
665
671
assert_eq!( ( -9.0 as $fty) . max( 0.0 ) , 0.0 ) ;
672
+ assert!( ( -9.0 as $fty) . max( 0.0 ) . is_sign_positive( ) ) ;
673
+ assert_eq!( ( -9.0 as $fty) . max( -0.0 ) , -0.0 ) ;
674
+ assert!( ( -9.0 as $fty) . max( -0.0 ) . is_sign_negative( ) ) ;
666
675
assert_eq!( ( 0.0 as $fty) . max( 9.0 ) , 9.0 ) ;
676
+ assert_eq!( ( 0.0 as $fty) . max( -9.0 ) , 0.0 ) ;
677
+ assert!( ( 0.0 as $fty) . max( -9.0 ) . is_sign_positive( ) ) ;
667
678
assert_eq!( ( -0.0 as $fty) . max( -9.0 ) , -0.0 ) ;
679
+ assert!( ( -0.0 as $fty) . max( -9.0 ) . is_sign_negative( ) ) ;
668
680
assert_eq!( ( $inf as $fty) . max( 9.0 ) , $inf) ;
669
681
assert_eq!( ( 9.0 as $fty) . max( $inf) , $inf) ;
670
682
assert_eq!( ( $inf as $fty) . max( -9.0 ) , $inf) ;
0 commit comments