From 521caa5774d7be04e9682091a251d8bc8721008f Mon Sep 17 00:00:00 2001 From: "A. Unique TensorFlower" Date: Sun, 18 Sep 2016 14:48:00 -0800 Subject: Add strings::HumanReadableNum to tensorflow/core/lib/strings/numbers.h Move HumanReadableElapsedTime from tensorflow/core/lib/strings/str_util.h to tensorflow/core/lib/strings/numbers.h to match the other HumanReadable* routines. Change: 133533798 --- tensorflow/core/lib/strings/numbers_test.cc | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'tensorflow/core/lib/strings/numbers_test.cc') diff --git a/tensorflow/core/lib/strings/numbers_test.cc b/tensorflow/core/lib/strings/numbers_test.cc index 66f820762f..e15161de66 100644 --- a/tensorflow/core/lib/strings/numbers_test.cc +++ b/tensorflow/core/lib/strings/numbers_test.cc @@ -58,6 +58,18 @@ TEST(Uint64ToHexString, Ints) { EXPECT_FALSE(HexStringToUint64("0000000000000000xyz", &dummy)); } +TEST(HumanReadableNum, Basic) { + EXPECT_EQ(HumanReadableNum(823), "823"); + EXPECT_EQ(HumanReadableNum(1024), "1.02k"); + EXPECT_EQ(HumanReadableNum(4000), "4.00k"); + EXPECT_EQ(HumanReadableNum(999499), "999.50k"); + EXPECT_EQ(HumanReadableNum(1000000), "1.00M"); + EXPECT_EQ(HumanReadableNum(1048575), "1.05M"); + EXPECT_EQ(HumanReadableNum(1048576), "1.05M"); + EXPECT_EQ(HumanReadableNum(23956812342), "23.96B"); + EXPECT_EQ(HumanReadableNum(123456789012345678), "1.23E+17"); +} + TEST(HumanReadableNumBytes, Bytes) { EXPECT_EQ("0B", HumanReadableNumBytes(0)); EXPECT_EQ("4B", HumanReadableNumBytes(4)); @@ -85,6 +97,25 @@ TEST(HumanReadableNumBytes, Bytes) { EXPECT_EQ("-8E", HumanReadableNumBytes(kint64min)); } +TEST(HumanReadableElapsedTime, Basic) { + EXPECT_EQ(HumanReadableElapsedTime(-10), "-10 s"); + EXPECT_EQ(HumanReadableElapsedTime(-0.001), "-1 ms"); + EXPECT_EQ(HumanReadableElapsedTime(-60.0), "-1 min"); + EXPECT_EQ(HumanReadableElapsedTime(0.00000001), "0.01 us"); + EXPECT_EQ(HumanReadableElapsedTime(0.0000012), "1.2 us"); + EXPECT_EQ(HumanReadableElapsedTime(0.0012), "1.2 ms"); + EXPECT_EQ(HumanReadableElapsedTime(0.12), "120 ms"); + EXPECT_EQ(HumanReadableElapsedTime(1.12), "1.12 s"); + EXPECT_EQ(HumanReadableElapsedTime(90.0), "1.5 min"); + EXPECT_EQ(HumanReadableElapsedTime(600.0), "10 min"); + EXPECT_EQ(HumanReadableElapsedTime(9000.0), "2.5 h"); + EXPECT_EQ(HumanReadableElapsedTime(87480.0), "1.01 days"); + EXPECT_EQ(HumanReadableElapsedTime(7776000.0), "2.96 months"); + EXPECT_EQ(HumanReadableElapsedTime(78840000.0), "2.5 years"); + EXPECT_EQ(HumanReadableElapsedTime(382386614.40), "12.1 years"); + EXPECT_EQ(HumanReadableElapsedTime(DBL_MAX), "5.7e+300 years"); +} + TEST(safe_strto32, Int32s) { int32 result; -- cgit v1.2.3