From f24fa8efad247bdc296e4724b914f73f01ef2d0b Mon Sep 17 00:00:00 2001 From: Robert M Campbell Date: Wed, 13 Nov 2013 23:15:13 +0700 Subject: Add Lao breakiterator support for selecting and counting Lao words. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I6da721dc25394dfee12e3028aefbf0546d1be984 Reviewed-on: https://gerrit.libreoffice.org/6669 Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara --- i18npool/qa/cppunit/test_breakiterator.cxx | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'i18npool/qa') diff --git a/i18npool/qa/cppunit/test_breakiterator.cxx b/i18npool/qa/cppunit/test_breakiterator.cxx index 8d702501899a..a81475bc8896 100644 --- a/i18npool/qa/cppunit/test_breakiterator.cxx +++ b/i18npool/qa/cppunit/test_breakiterator.cxx @@ -39,6 +39,7 @@ public: void testWeak(); void testAsian(); void testThai(); + void testLao(); #ifdef TODO void testNorthernThai(); #endif @@ -58,6 +59,9 @@ public: CPPUNIT_TEST(testWordBoundaries); #if (U_ICU_VERSION_MAJOR_NUM > 4) CPPUNIT_TEST(testKhmer); +#endif +#if (U_ICU_VERSION_MAJOR_NUM > 51) + CPPUNIT_TEST(testLao); #endif CPPUNIT_TEST(testJapanese); CPPUNIT_TEST_SUITE_END(); @@ -784,6 +788,27 @@ void TestBreakIterator::testAsian() } } +//A test to ensure that our Lao word boundary detection is useful +void TestBreakIterator::testLao() +{ + lang::Locale aLocale; + aLocale.Language = OUString("lo"); + aLocale.Country = OUString("LA"); + //ຍິນດີຕ້ອນຮັບ + const sal_Unicode LAO[] = { 0x0e8d, 0x0eb4, 0x0e99, 0x0e94, 0x0eb5, 0x0e95, 0x0ec9, 0x0ead, 0x0e99, 0x0eae, 0x0eb1, 0x0e9a }; + OUString aTest(LAO, SAL_N_ELEMENTS(LAO)); + i18n::Boundary aBounds = m_xBreak->getWordBoundary(aTest, 0, aLocale, + i18n::WordType::DICTIONARY_WORD, true); + + CPPUNIT_ASSERT(aBounds.startPos == 0 && aBounds.endPos == 5); + + aBounds = m_xBreak->getWordBoundary(aTest, aBounds.endPos, aLocale, + i18n::WordType::DICTIONARY_WORD, true); + + CPPUNIT_ASSERT(aBounds.startPos == 5 && aBounds.endPos == 9); + +} + //A test to ensure that our thai word boundary detection is useful void TestBreakIterator::testThai() { -- cgit