From 9ad93e0d591a386e3e229e09b39a58158d544069 Mon Sep 17 00:00:00 2001 From: Rudy Huyn Date: Sun, 10 Mar 2019 23:03:26 -0700 Subject: [PATCH] Increase the number of meaningfull digits (2->4) --- .../DataLoaders/CurrencyDataLoader.cpp | 2 +- .../CurrencyConverterUnitTests.cpp | 33 ++++++++++--------- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/src/CalcViewModel/DataLoaders/CurrencyDataLoader.cpp b/src/CalcViewModel/DataLoaders/CurrencyDataLoader.cpp index b92f71a0..139c5b60 100644 --- a/src/CalcViewModel/DataLoaders/CurrencyDataLoader.cpp +++ b/src/CalcViewModel/DataLoaders/CurrencyDataLoader.cpp @@ -41,7 +41,7 @@ static constexpr long long WEEK_DURATION = DAY_DURATION * 7; static constexpr int FORMATTER_DIGIT_COUNT = 4; static constexpr int FORMATTER_RATE_MIN_DIGIT_COUNT = 4; -static constexpr int FORMATTER_RATE_MIN_MEANINGFULL_DIGITS = 2; +static constexpr int FORMATTER_RATE_MIN_MEANINGFULL_DIGITS = 4; static constexpr auto CACHE_TIMESTAMP_KEY = L"CURRENCY_CONVERTER_TIMESTAMP"; static constexpr auto CACHE_LANGCODE_KEY = L"CURRENCY_CONVERTER_LANGCODE"; diff --git a/src/CalculatorUnitTests/CurrencyConverterUnitTests.cpp b/src/CalculatorUnitTests/CurrencyConverterUnitTests.cpp index 34f705f6..d0219296 100644 --- a/src/CalculatorUnitTests/CurrencyConverterUnitTests.cpp +++ b/src/CalculatorUnitTests/CurrencyConverterUnitTests.cpp @@ -613,21 +613,24 @@ namespace CalculatorUnitTests VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.1234), 0.1234); VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.12343), 0.1234); VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0321), 0.0321); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.03211), 0.0321); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.03219), 0.0322); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.003219), 0.0032); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.003269), 0.0033); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000269), 0.00027); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000069), 0.000069); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000061), 0.000061); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0000612), 0.000061); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0000616), 0.000062); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0000016), 0.0000016); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0000016134324), 0.0000016); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0000096134324), 0.0000096); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.00000169348392), 0.0000017); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0000000034987218), 0.0000000035); - VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0000000000000231445), 0.000000000000023); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.03211), 0.03211); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.03219), 0.03219); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.03219234), 0.03219); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.003219), 0.003219); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.00321964), 0.003220); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.00123269), 0.001233); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.00012269), 0.0001227); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.00003169), 0.00003169); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.00003161), 0.00003161); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000031612), 0.00003161); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000031616), 0.00003162); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.00000671), 0.00000671); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000006716), 0.000006716); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000008716134324), 0.000008716); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000006596134324), 0.000006596); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.0000012169348392), 0.000001217); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000000009034987218), 0.000000009035); + VERIFY_ARE_EQUAL(CurrencyDataLoader::RoundCurrencyRatio(0.000000000000012231445), 0.00000000000001223); } }; }