summaryrefslogtreecommitdiffstats
path: root/svl/qa
diff options
context:
space:
mode:
Diffstat (limited to 'svl/qa')
-rw-r--r--svl/qa/unit/svl.cxx20
1 files changed, 20 insertions, 0 deletions
diff --git a/svl/qa/unit/svl.cxx b/svl/qa/unit/svl.cxx
index 4fa56f4bcc..969dfa166b 100644
--- a/svl/qa/unit/svl.cxx
+++ b/svl/qa/unit/svl.cxx
@@ -1993,6 +1993,26 @@ CPPUNIT_TEST_FIXTURE(Test, testLanguageNone)
CPPUNIT_ASSERT_EQUAL(OUString("dd.mm.yyyy"), pFormat->GetMappedFormatstring(keywords, ldw));
}
+CPPUNIT_TEST_FIXTURE(Test, testTdf160306)
+{
+ // Check some cases, where the output of ROUND and of number formatter differed
+ SvNumberFormatter aFormatter(m_xContext, LANGUAGE_ENGLISH_US);
+ sal_uInt32 format = aFormatter.GetEntryKey(u"0.00", LANGUAGE_ENGLISH_US);
+ CPPUNIT_ASSERT(format != NUMBERFORMAT_ENTRY_NOT_FOUND);
+ OUString output;
+ const Color* color;
+ aFormatter.GetOutputString(2697.0649999999996, format, output, &color);
+ // Without the fix in place, this would fail with
+ // - Expected: 2697.07
+ // - Actual : 2697.06
+ CPPUNIT_ASSERT_EQUAL(u"2697.07"_ustr, output);
+ aFormatter.GetOutputString(57.374999999999993, format, output, &color);
+ // Without the fix in place, this would fail with
+ // - Expected: 57.38
+ // - Actual : 57.37
+ CPPUNIT_ASSERT_EQUAL(u"57.38"_ustr, output);
+}
+
CPPUNIT_TEST_SUITE_REGISTRATION(Test);
}