diff options
-rw-r--r-- | cmake/test-files.cmake | 1 | ||||
-rw-r--r-- | test/util/dtoa.test.cpp | 24 |
2 files changed, 25 insertions, 0 deletions
diff --git a/cmake/test-files.cmake b/cmake/test-files.cmake index 4dec9e403d..cdca1db280 100644 --- a/cmake/test-files.cmake +++ b/cmake/test-files.cmake @@ -120,6 +120,7 @@ set(MBGL_TEST_FILES # util test/util/async_task.test.cpp + test/util/dtoa.test.cpp test/util/geo.test.cpp test/util/http_timeout.test.cpp test/util/image.test.cpp diff --git a/test/util/dtoa.test.cpp b/test/util/dtoa.test.cpp new file mode 100644 index 0000000000..8d2fba1877 --- /dev/null +++ b/test/util/dtoa.test.cpp @@ -0,0 +1,24 @@ +#include <mbgl/test/util.hpp> + +#include <mbgl/util/dtoa.hpp> + +#include <cfloat> +#include <cmath> + +using namespace mbgl; + +TEST(Dtoa, Precision) { + EXPECT_EQ(M_E, std::stod(util::dtoa(M_E))); + EXPECT_EQ(M_LOG2E, std::stod(util::dtoa(M_LOG2E))); + EXPECT_EQ(M_LOG10E, std::stod(util::dtoa(M_LOG10E))); + EXPECT_EQ(M_LN2, std::stod(util::dtoa(M_LN2))); + EXPECT_EQ(M_LN10, std::stod(util::dtoa(M_LN10))); + EXPECT_EQ(M_PI, std::stod(util::dtoa(M_PI))); + EXPECT_EQ(M_PI_2, std::stod(util::dtoa(M_PI_2))); + EXPECT_EQ(M_PI_4, std::stod(util::dtoa(M_PI_4))); + EXPECT_EQ(M_1_PI, std::stod(util::dtoa(M_1_PI))); + EXPECT_EQ(M_2_PI, std::stod(util::dtoa(M_2_PI))); + EXPECT_EQ(M_2_SQRTPI, std::stod(util::dtoa(M_2_SQRTPI))); + EXPECT_EQ(M_SQRT2, std::stod(util::dtoa(M_SQRT2))); + EXPECT_EQ(M_SQRT1_2, std::stod(util::dtoa(M_SQRT1_2))); +} |