Improve handling of large durations

This commit is contained in:
Victor Zverovich
2019-05-08 12:40:33 -07:00
parent f52c09f924
commit e9bab6d028
2 changed files with 24 additions and 2 deletions
+5 -1
View File
@@ -307,13 +307,17 @@ TEST(ChronoTest, InvalidColons) {
}
TEST(ChronoTest, SpecialDurations) {
EXPECT_EQ("40", fmt::format("{:%S}", std::chrono::duration<double>(1e20)));
EXPECT_EQ(
"40.",
fmt::format("{:%S}", std::chrono::duration<double>(1e20)).substr(0, 3));
EXPECT_EQ("-00:01",
fmt::format("{:%M:%S}", std::chrono::duration<double>(-1)));
auto nan = std::numeric_limits<double>::quiet_NaN();
EXPECT_EQ(
"nan nan nan nan.nan nan:nan nan",
fmt::format("{:%I %H %M %S %R %r}", std::chrono::duration<double>(nan)));
fmt::format("{:%S}",
std::chrono::duration<float, std::atto>(1.79400457e+31f));
}
#endif // FMT_STATIC_THOUSANDS_SEPARATOR