diff options
author | Manjunath Kudlur <keveman@google.com> | 2016-06-21 20:53:46 -0800 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2016-06-21 22:02:58 -0700 |
commit | e57750551e4aecea2ecc7f9339f00ca84997514c (patch) | |
tree | 7c431648703d0c8fefcf7b781e7fd7579d0192bf /tensorflow/core/lib/strings/numbers_test.cc | |
parent | 75919978d545473846b11eb1db0081dc2870b974 (diff) |
Make floating point number parsing functions locale independent.
Fixes #2974
Change: 125530598
Diffstat (limited to 'tensorflow/core/lib/strings/numbers_test.cc')
-rw-r--r-- | tensorflow/core/lib/strings/numbers_test.cc | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tensorflow/core/lib/strings/numbers_test.cc b/tensorflow/core/lib/strings/numbers_test.cc index 99c76f0121..66f820762f 100644 --- a/tensorflow/core/lib/strings/numbers_test.cc +++ b/tensorflow/core/lib/strings/numbers_test.cc @@ -233,8 +233,20 @@ TEST(safe_strtof, Float) { // Overflow to infinity, underflow to 0. EXPECT_TRUE(safe_strtof("1e39", &result)); EXPECT_EQ(std::numeric_limits<float>::infinity(), result); + + EXPECT_TRUE(safe_strtof("-1e39", &result)); + EXPECT_EQ(-std::numeric_limits<float>::infinity(), result); + EXPECT_TRUE(safe_strtof("1e-50", &result)); EXPECT_EQ(0, result); + + EXPECT_TRUE(safe_strtof("0xF", &result)); + EXPECT_EQ(0xF, result); + + EXPECT_TRUE(safe_strtof("-0x2A", &result)); + EXPECT_EQ(-42.0f, result); + + EXPECT_FALSE(safe_strtof("-infinity is awesome", &result)); } TEST(safe_strtod, Double) { @@ -247,6 +259,10 @@ TEST(safe_strtod, Double) { // Overflow to infinity, underflow to 0. EXPECT_TRUE(safe_strtod("1e310", &result)); EXPECT_EQ(std::numeric_limits<double>::infinity(), result); + + EXPECT_TRUE(safe_strtod("-1e310", &result)); + EXPECT_EQ(-std::numeric_limits<double>::infinity(), result); + EXPECT_TRUE(safe_strtod("1e-325", &result)); EXPECT_EQ(0, result); } |