Skip to content

Commit 64e450d

Browse files
committed
Reduce precision in trig tests to not fail on different hardware
1 parent 1af7329 commit 64e450d

File tree

1 file changed

+66
-66
lines changed

1 file changed

+66
-66
lines changed

num/f32_unittest.cc

Lines changed: 66 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -484,9 +484,9 @@ TEST(f32, Abs) {
484484

485485
TEST(f32, Acos) {
486486
auto a = (0.767_f32).acos();
487-
F32_NEAR(a, 0.696643798_f32, 0.0000001_f32);
487+
F32_NEAR(a, 0.696643798_f32, 0.00001_f32);
488488
auto b = (1_f32).acos();
489-
F32_NEAR(b, 0_f32, 0.0000001_f32);
489+
F32_NEAR(b, 0_f32, 0.00001_f32);
490490
auto c = (1.1_f32).acos();
491491
EXPECT_TRUE(::isnan(c.primitive_value)); // TODO: is_nan().
492492
auto d = (-1.1_f32).acos();
@@ -495,9 +495,9 @@ TEST(f32, Acos) {
495495

496496
TEST(f32, Acosh) {
497497
auto a = (2.5_f32).acosh();
498-
F32_NEAR(a, 1.566799236972411_f32, 0.0000001_f32);
498+
F32_NEAR(a, 1.566799236972411_f32, 0.00001_f32);
499499
auto b = (1_f32).acosh();
500-
F32_NEAR(b, 0_f32, 0.0000001_f32);
500+
F32_NEAR(b, 0_f32, 0.00001_f32);
501501
auto c = (0.9999999_f32).acosh();
502502
EXPECT_TRUE(::isnan(c.primitive_value)); // TODO: is_nan().
503503
auto d = (0_f32).acosh();
@@ -508,9 +508,9 @@ TEST(f32, Acosh) {
508508

509509
TEST(f32, Asin) {
510510
auto a = (0.767_f32).asin();
511-
F32_NEAR(a, 0.874152528_f32, 0.0000001_f32);
511+
F32_NEAR(a, 0.874152528_f32, 0.00001_f32);
512512
auto b = (0_f32).asin();
513-
F32_NEAR(b, 0_f32, 0.0000001_f32);
513+
F32_NEAR(b, 0_f32, 0.00001_f32);
514514
auto c = (1.1_f32).asin();
515515
EXPECT_TRUE(::isnan(c.primitive_value)); // TODO: is_nan().
516516
auto d = (-1.1_f32).asin();
@@ -519,64 +519,64 @@ TEST(f32, Asin) {
519519

520520
TEST(f32, Asinh) {
521521
auto a = (2.5_f32).asinh();
522-
F32_NEAR(a, 1.6472311463711_f32, 0.0000001_f32);
522+
F32_NEAR(a, 1.6472311463711_f32, 0.00001_f32);
523523
auto b = (0_f32).asinh();
524-
F32_NEAR(b, 0_f32, 0.0000001_f32);
524+
F32_NEAR(b, 0_f32, 0.00001_f32);
525525
auto c = (0.9999999_f32).asinh();
526-
F32_NEAR(c, 0.88137351630886_f32, 0.0000001_f32);
526+
F32_NEAR(c, 0.88137351630886_f32, 0.00001_f32);
527527
}
528528

529529
TEST(f32, Atan) {
530530
auto a = (0.767_f32).atan();
531-
F32_NEAR(a, 0.654292628_f32, 0.0000001_f32);
531+
F32_NEAR(a, 0.654292628_f32, 0.00001_f32);
532532
auto b = (0_f32).atan();
533-
F32_NEAR(b, 0_f32, 0.0000001_f32);
533+
F32_NEAR(b, 0_f32, 0.00001_f32);
534534
auto c = (1.1_f32).atan();
535-
F32_NEAR(c, 0.832981267_f32, 0.0000001_f32);
535+
F32_NEAR(c, 0.832981267_f32, 0.00001_f32);
536536
auto d = (-1.1_f32).atan();
537-
F32_NEAR(d, -0.832981267_f32, 0.0000001_f32);
537+
F32_NEAR(d, -0.832981267_f32, 0.00001_f32);
538538
}
539539

540540
TEST(f32, Atan2) {
541541
auto a = (0_f32).atan2(0_f32);
542-
F32_NEAR(a, 0_f32, 0.0000001_f32);
542+
F32_NEAR(a, 0_f32, 0.00001_f32);
543543
auto b = (0.5_f32).atan2(1.2_f32);
544-
F32_NEAR(b, 0.39479112_f32, 0.0000001_f32);
544+
F32_NEAR(b, 0.39479112_f32, 0.00001_f32);
545545
auto c = (-0.5_f32).atan2(1.2_f32);
546-
F32_NEAR(c, -0.39479112_f32, 0.0000001_f32);
546+
F32_NEAR(c, -0.39479112_f32, 0.00001_f32);
547547
auto d = (-0.5_f32).atan2(-1.2_f32);
548-
F32_NEAR(d, 0.39479112_f32 - f32::consts::PI(), 0.0000001_f32);
548+
F32_NEAR(d, 0.39479112_f32 - f32::consts::PI(), 0.00001_f32);
549549
auto e = (0.5_f32).atan2(-1.2_f32);
550-
F32_NEAR(e, -0.39479112_f32 + f32::consts::PI(), 0.0000001_f32);
550+
F32_NEAR(e, -0.39479112_f32 + f32::consts::PI(), 0.00001_f32);
551551
}
552552

553553
TEST(f32, Atanh) {
554554
auto a = (2.5_f32).atanh();
555555
EXPECT_TRUE(::isnan(a.primitive_value)); // TODO: is_nan().
556556
auto b = (0_f32).atanh();
557-
F32_NEAR(b, 0_f32, 0.0000001_f32);
557+
F32_NEAR(b, 0_f32, 0.00001_f32);
558558
auto c = (0.75_f32).atanh();
559-
F32_NEAR(c, 0.97295507452766_f32, 0.0000001_f32);
559+
F32_NEAR(c, 0.97295507452766_f32, 0.00001_f32);
560560
auto d = (1_f32).atanh();
561561
EXPECT_TRUE(::isinf(d.primitive_value)); // TODO: is_infinite().
562562
}
563563

564564
TEST(f32, Cbrt) {
565565
auto a = (0.456_f32).cbrt();
566-
F32_NEAR(a, 0.76970022625_f32, 0.0000001_f32);
566+
F32_NEAR(a, 0.76970022625_f32, 0.00001_f32);
567567
auto b = (1_f32).cbrt();
568-
F32_NEAR(b, 1_f32, 0.0000001_f32);
568+
F32_NEAR(b, 1_f32, 0.00001_f32);
569569
auto c = (-1_f32).cbrt();
570-
F32_NEAR(c, -1_f32, 0.0000001_f32);
570+
F32_NEAR(c, -1_f32, 0.00001_f32);
571571
}
572572

573573
TEST(f32, Ceil) {
574574
auto a = (0.456_f32).ceil();
575-
F32_NEAR(a, 1_f32, 0.0000001_f32);
575+
F32_NEAR(a, 1_f32, 0.00001_f32);
576576
auto b = (-0.456_f32).ceil();
577577
EXPECT_EQ(b.total_cmp(-0_f32), std::strong_ordering::equal);
578578
auto c = (1.0001_f32).ceil();
579-
F32_NEAR(c, 2_f32, 0.0000001_f32);
579+
F32_NEAR(c, 2_f32, 0.00001_f32);
580580
}
581581

582582
TEST(f32, Copysign) {
@@ -594,32 +594,32 @@ TEST(f32, Copysign) {
594594

595595
TEST(f32, Cos) {
596596
auto a = (0.767_f32).cos();
597-
F32_NEAR(a, 0.71999584159_f32, 0.0000001_f32);
597+
F32_NEAR(a, 0.71999584159_f32, 0.00001_f32);
598598
auto b = (1_f32).cos();
599-
F32_NEAR(b, 0.54030230586_f32, 0.0000001_f32);
599+
F32_NEAR(b, 0.54030230586_f32, 0.00001_f32);
600600
auto c = (4_f32).cos();
601-
F32_NEAR(c, -0.65364362086_f32, 0.0000001_f32);
601+
F32_NEAR(c, -0.65364362086_f32, 0.00001_f32);
602602
}
603603

604604
TEST(f32, Cosh) {
605605
auto a = (0.767_f32).cosh();
606-
F32_NEAR(a, 1.30885042871_f32, 0.0000001_f32);
606+
F32_NEAR(a, 1.30885042871_f32, 0.00001_f32);
607607
auto b = (1_f32).cosh();
608-
F32_NEAR(b, 1.54308063482_f32, 0.0000001_f32);
608+
F32_NEAR(b, 1.54308063482_f32, 0.00001_f32);
609609
auto c = (4_f32).cosh();
610-
F32_NEAR(c, 27.308232836_f32, 0.0000001_f32);
610+
F32_NEAR(c, 27.308232836_f32, 0.00001_f32);
611611
}
612612

613613
TEST(f32, Exp) {
614614
auto a = (1_f32).exp();
615-
F32_NEAR(a, f32::consts::E(), 0.0000001_f32);
615+
F32_NEAR(a, f32::consts::E(), 0.00001_f32);
616616
auto b = (2.4_f32).exp();
617617
F32_NEAR(b, 11.0231763806_f32, 0.00001_f32);
618618
}
619619

620620
TEST(f32, Exp2) {
621621
auto a = (1_f32).exp2();
622-
F32_NEAR(a, 2_f32, 0.0000001_f32);
622+
F32_NEAR(a, 2_f32, 0.00001_f32);
623623
auto b = (2.4_f32).exp2();
624624
F32_NEAR(b, 5.27803164309_f32, 0.00001_f32);
625625
}
@@ -635,39 +635,39 @@ TEST(f32, Floor) {
635635
auto a = (0.456_f32).floor();
636636
EXPECT_EQ(a.total_cmp(0_f32), std::strong_ordering::equal);
637637
auto b = (-0.456_f32).floor();
638-
F32_NEAR(b, -1_f32, 0.0000001_f32);
638+
F32_NEAR(b, -1_f32, 0.00001_f32);
639639
auto c = (1.0001_f32).floor();
640-
F32_NEAR(c, 1_f32, 0.0000001_f32);
640+
F32_NEAR(c, 1_f32, 0.00001_f32);
641641
}
642642

643643
TEST(f32, Hypot) {
644644
auto a = (0.456_f32).hypot(0.567_f32);
645-
F32_NEAR(a, 0.72761597013_f32, 0.0000001_f32);
645+
F32_NEAR(a, 0.72761597013_f32, 0.00001_f32);
646646
}
647647

648648
TEST(f32, Ln) {
649649
auto a = (0.456_f32).ln();
650-
F32_NEAR(a, -0.78526246946_f32, 0.0000001_f32);
650+
F32_NEAR(a, -0.78526246946_f32, 0.00001_f32);
651651
}
652652

653653
TEST(f32, Ln1p) {
654654
auto a = (0.456_f32).ln_1p();
655-
F32_NEAR(a, 0.37569294977_f32, 0.0000001_f32);
655+
F32_NEAR(a, 0.37569294977_f32, 0.00001_f32);
656656
}
657657

658658
TEST(f32, Log10) {
659659
auto a = (0.456_f32).log10();
660-
F32_NEAR(a, -0.34103515733_f32, 0.0000001_f32);
660+
F32_NEAR(a, -0.34103515733_f32, 0.00001_f32);
661661
}
662662

663663
TEST(f32, Log2) {
664664
auto a = (0.456_f32).log2();
665-
F32_NEAR(a, -1.1328942705_f32, 0.0000001_f32);
665+
F32_NEAR(a, -1.1328942705_f32, 0.00001_f32);
666666
}
667667

668668
TEST(f32, Log) {
669669
auto a = (25_f32).log(5_f32);
670-
F32_NEAR(a, 2_f32, 0.0000001_f32);
670+
F32_NEAR(a, 2_f32, 0.00001_f32);
671671
}
672672

673673
TEST(f32, Max) {
@@ -694,22 +694,22 @@ TEST(f32, Min) {
694694

695695
TEST(f32, MulAdd) {
696696
auto a = (0.456_f32).mul_add(2_f32, 3.1_f32);
697-
F32_NEAR(a, 0.456_f32 * 2_f32 + 3.1_f32, 0.0000001_f32);
697+
F32_NEAR(a, 0.456_f32 * 2_f32 + 3.1_f32, 0.00001_f32);
698698
}
699699

700700
TEST(f32, Powf) {
701701
auto a = (0.456_f32).powf(4.6_f32);
702-
F32_NEAR(a, 0.02699219956_f32, 0.0000001_f32);
702+
F32_NEAR(a, 0.02699219956_f32, 0.00001_f32);
703703
}
704704

705705
TEST(f32, Powi) {
706706
auto a = (0.456_f32).powi(5_i32);
707-
F32_NEAR(a, 0.01971624532_f32, 0.0000001_f32);
707+
F32_NEAR(a, 0.01971624532_f32, 0.00001_f32);
708708
}
709709

710710
TEST(f32, Recip) {
711711
auto a = (0.456_f32).recip();
712-
F32_NEAR(a, 2.19298245614_f32, 0.0000001_f32);
712+
F32_NEAR(a, 2.19298245614_f32, 0.00001_f32);
713713
auto b = f32::TODO_NAN().recip();
714714
EXPECT_TRUE(::isnan(b.primitive_value)); // TODO: is_nan()
715715
}
@@ -720,9 +720,9 @@ TEST(f32, Round) {
720720
auto b = (-0.456_f32).round();
721721
EXPECT_EQ(a.total_cmp(0_f32), std::strong_ordering::equal);
722722
auto c = (1.546_f32).round();
723-
F32_NEAR(c, 2_f32, 0.0000001_f32);
723+
F32_NEAR(c, 2_f32, 0.00001_f32);
724724
auto d = (-1.546_f32).round();
725-
F32_NEAR(d, -2_f32, 0.0000001_f32);
725+
F32_NEAR(d, -2_f32, 0.00001_f32);
726726
}
727727

728728
TEST(f32, Signum) {
@@ -738,54 +738,54 @@ TEST(f32, Signum) {
738738

739739
TEST(f32, Sin) {
740740
auto a = (0.767_f32).sin();
741-
F32_NEAR(a, 0.69397837724_f32, 0.0000001_f32);
741+
F32_NEAR(a, 0.69397837724_f32, 0.00001_f32);
742742
auto b = (1_f32).sin();
743-
F32_NEAR(b, 0.8414709848_f32, 0.0000001_f32);
743+
F32_NEAR(b, 0.8414709848_f32, 0.00001_f32);
744744
auto c = (4_f32).sin();
745-
F32_NEAR(c, -0.7568024953_f32, 0.0000001_f32);
745+
F32_NEAR(c, -0.7568024953_f32, 0.00001_f32);
746746
}
747747

748748
TEST(f32, Sinh) {
749749
auto a = (0.767_f32).sinh();
750-
F32_NEAR(a, 0.84444623555_f32, 0.0000001_f32);
750+
F32_NEAR(a, 0.84444623555_f32, 0.00001_f32);
751751
auto b = (1_f32).sinh();
752-
F32_NEAR(b, 1.17520119364_f32, 0.0000001_f32);
752+
F32_NEAR(b, 1.17520119364_f32, 0.00001_f32);
753753
auto c = (4_f32).sinh();
754-
F32_NEAR(c, 27.2899171971_f32, 0.0000001_f32);
754+
F32_NEAR(c, 27.2899171971_f32, 0.00001_f32);
755755
}
756756

757757
TEST(f32, Sqrt) {
758758
auto a = (4.68_f32).sqrt();
759-
F32_NEAR(a, 2.16333076528_f32, 0.0000001_f32);
759+
F32_NEAR(a, 2.16333076528_f32, 0.00001_f32);
760760
}
761761

762762
TEST(f32, Tan) {
763763
auto a = (0.767_f32).tan();
764-
F32_NEAR(a, 0.96386442413_f32, 0.0000001_f32);
764+
F32_NEAR(a, 0.96386442413_f32, 0.00001_f32);
765765
auto b = (1_f32).tan();
766-
F32_NEAR(b, 1.55740772465_f32, 0.0000001_f32);
766+
F32_NEAR(b, 1.55740772465_f32, 0.00001_f32);
767767
auto c = (4_f32).tan();
768-
F32_NEAR(c, 1.15782128235_f32, 0.0000001_f32);
768+
F32_NEAR(c, 1.15782128235_f32, 0.00001_f32);
769769
}
770770

771771
TEST(f32, Tanh) {
772772
auto a = (0.767_f32).tanh();
773-
F32_NEAR(a, 0.64518161665_f32, 0.0000001_f32);
773+
F32_NEAR(a, 0.64518161665_f32, 0.00001_f32);
774774
auto b = (1_f32).tanh();
775-
F32_NEAR(b, 0.76159415595_f32, 0.0000001_f32);
775+
F32_NEAR(b, 0.76159415595_f32, 0.00001_f32);
776776
auto c = (4_f32).tanh();
777-
F32_NEAR(c, 0.99932929973_f32, 0.0000001_f32);
777+
F32_NEAR(c, 0.99932929973_f32, 0.00001_f32);
778778
}
779779

780780
TEST(f32, Fract) {
781781
auto a = (3.767_f32).fract();
782-
F32_NEAR(a, 0.767_f32, 0.0000001_f32);
782+
F32_NEAR(a, 0.767_f32, 0.00001_f32);
783783
auto b = (1_f32).fract();
784-
F32_NEAR(b, 0_f32, 0.0000001_f32);
784+
F32_NEAR(b, 0_f32, 0.00001_f32);
785785
auto c = (0.12345_f32).fract();
786-
F32_NEAR(c, 0.12345_f32, 0.0000001_f32);
786+
F32_NEAR(c, 0.12345_f32, 0.00001_f32);
787787
auto d = (-3.767_f32).fract();
788-
F32_NEAR(d, -0.767_f32, 0.0000001_f32);
788+
F32_NEAR(d, -0.767_f32, 0.00001_f32);
789789
}
790790

791791
TEST(f32, Trunc) {
@@ -801,12 +801,12 @@ TEST(f32, Trunc) {
801801

802802
TEST(f32, ToDegrees) {
803803
auto a = (3.4567_f32).to_degrees();
804-
F32_NEAR(a, 198.054321_f32, 0.0000001_f32);
804+
F32_NEAR(a, 198.054321_f32, 0.00001_f32);
805805
}
806806

807807
TEST(f32, ToRadians) {
808808
auto a = (198.054321_f32).to_radians();
809-
F32_NEAR(a, 3.4567_f32, 0.0000001_f32);
809+
F32_NEAR(a, 3.4567_f32, 0.00001_f32);
810810
}
811811

812812
TEST(f32, ToIntUnchecked) {

0 commit comments

Comments
 (0)