From 1ecd2d2a7f53fbd23f8d26ffe49c857321d548d3 Mon Sep 17 00:00:00 2001 From: tehhowch Date: Thu, 12 Aug 2021 00:41:20 -0500 Subject: [PATCH] test(format): add some basic unit tests for Format::Number --- tests/src/text/test_format.cpp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/tests/src/text/test_format.cpp b/tests/src/text/test_format.cpp index 71263834e275..f9250966c7c4 100644 --- a/tests/src/text/test_format.cpp +++ b/tests/src/text/test_format.cpp @@ -121,6 +121,24 @@ TEST_CASE( "Format::Capitalize", "[Format][Capitalize]") { } } +TEST_CASE( "Format::Number", "[Format][Number]") { + SECTION( "0-valued inputs" ) { + CHECK( Format::Number(-0) == "0" ); + CHECK( Format::Number(0) == "0" ); + CHECK( Format::Number(-.0) == "0" ); + CHECK( Format::Number(.0) == "0" ); + } + SECTION( "Integral inputs" ) { + CHECK( Format::Number(1) == "1" ); + CHECK( Format::Number(-1.) == "-1" ); + CHECK( Format::Number(1000.) == "1,000" ); + } + SECTION( "Decimals between 0 and 1" ) { + CHECK( Format::Number(0.51) == "0.5" ); + CHECK( Format::Number(0.56) == "0.6" ); + } +} + // #endregion unit tests // #region benchmarks @@ -136,6 +154,17 @@ TEST_CASE( "Benchmark Format::PlayTime", "[!benchmark][format]" ) { return Format::PlayTime(std::numeric_limits::max()); }; } +TEST_CASE( "Benchmark Format::Number", "[!benchmark][format]" ) { + BENCHMARK( "Format::Number(0.)" ) { + return Format::Number(0.); + }; + BENCHMARK( "Format::Number(100.)" ) { + return Format::Number(100.); + }; + BENCHMARK( "Format::Number(-10.312345)" ) { + return Format::Number(-10.312345); + }; +} #endif } // test namespace