diff --git a/test/format-test.cc b/test/format-test.cc index 70bceee0..d4b54a00 100644 --- a/test/format-test.cc +++ b/test/format-test.cc @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include @@ -49,7 +50,6 @@ FILE *FOpen(const char *filename, const char *mode) { #include "util.h" #include "gtest-extra.h" -#include #include #undef min @@ -1229,11 +1229,17 @@ TEST(FormatterTest, FormatDouble) { EXPECT_EQ("+0000392.6", str(Format("{0:+010.4g}") << 392.65)); } +TEST(FormatterTest, SignBit) { +#ifndef signbit +# define signbit std::signbit +#endif + EXPECT_EQ(1, signbit(-std::numeric_limits::quiet_NaN())); +} + TEST(FormatterTest, FormatNaN) { double nan = std::numeric_limits::quiet_NaN(); EXPECT_EQ("nan", str(Format("{}") << nan)); EXPECT_EQ("+nan", str(Format("{:+}") << nan)); - EXPECT_EQ(1, signbit(-nan)); EXPECT_EQ("-nan", str(Format("{}") << -nan)); EXPECT_EQ(" nan", str(Format("{: }") << nan)); EXPECT_EQ("NAN", str(Format("{:F}") << nan));