| OLD | NEW |
| (Empty) |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "wtf/dtoa.h" | |
| 6 | |
| 7 #include "testing/gtest/include/gtest/gtest.h" | |
| 8 | |
| 9 namespace WTF { | |
| 10 | |
| 11 TEST(DtoaTest, TestNumberToFixedPrecisionString) { | |
| 12 NumberToStringBuffer buffer; | |
| 13 | |
| 14 // There should be no trailing decimal or zeros. | |
| 15 numberToFixedPrecisionString(0.0, 6, buffer); | |
| 16 EXPECT_STREQ("0", buffer); | |
| 17 | |
| 18 // Up to 6 leading zeros. | |
| 19 numberToFixedPrecisionString(0.00000123123123, 6, buffer); | |
| 20 EXPECT_STREQ("0.00000123123", buffer); | |
| 21 | |
| 22 numberToFixedPrecisionString(0.000000123123123, 6, buffer); | |
| 23 EXPECT_STREQ("1.23123e-7", buffer); | |
| 24 | |
| 25 // Up to 6 places before the decimal. | |
| 26 numberToFixedPrecisionString(123123.123, 6, buffer); | |
| 27 EXPECT_STREQ("123123", buffer); | |
| 28 | |
| 29 numberToFixedPrecisionString(1231231.23, 6, buffer); | |
| 30 EXPECT_STREQ("1.23123e+6", buffer); | |
| 31 | |
| 32 // Don't strip trailing zeros in exponents. | |
| 33 // http://crbug.com/545711 | |
| 34 numberToFixedPrecisionString(0.000000000123123, 6, buffer); | |
| 35 EXPECT_STREQ("1.23123e-10", buffer); | |
| 36 | |
| 37 // FIXME: Trailing zeros before exponents should be stripped. | |
| 38 numberToFixedPrecisionString(0.0000000001, 6, buffer); | |
| 39 EXPECT_STREQ("1.00000e-10", buffer); | |
| 40 } | |
| 41 | |
| 42 } // namespace WTF | |
| OLD | NEW |