]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/test/intltest/rbbitst.h
ICU-59117.0.1.tar.gz
[apple/icu.git] / icuSources / test / intltest / rbbitst.h
index cb8efa48ec87c85cdb4774c00d89ef8209733c78..6809376647e9c22484427e19f5a65757b3c8ad88 100644 (file)
@@ -1,5 +1,7 @@
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /*************************************************************************
- * Copyright (c) 1999-2008, International Business Machines
+ * Copyright (c) 1999-2016, International Business Machines
  * Corporation and others. All Rights Reserved.
  *************************************************************************
  *   Date        Name        Description
@@ -17,7 +19,7 @@
 
 #include "intltest.h"
 #include "unicode/brkiter.h"
-
+#include "unicode/rbbi.h"
 
 class  Enumeration;
 class  BITestData;
@@ -53,11 +55,11 @@ public:
     void TestThaiLineBreak();
     void TestMixedThaiLineBreak();
     void TestMaiyamok();
-    void TestMonkey(char *params);
+    void TestMonkey();
 
     void TestExtended();
     UChar *ReadAndConvertFile(const char *fileName, int &ulen, const char *encoding, UErrorCode &status);
-    void executeTest(TestParams *);
+    void executeTest(TestParams *, UErrorCode &status);
 
     void TestWordBreaks();
     void TestWordBoundary();
@@ -68,10 +70,18 @@ public:
     void TestTrieDict();
     void TestUnicodeFiles();
     void TestBug5775();
-    void TestThaiBreaks();
+    void TestTailoredBreaks();
+    void TestDictRules();
+    void TestBug5532();
+    void TestBug9983();
+    void TestBug7547();
+    void TestBug12797();
+    void TestBug12918();
+    void TestBug12932();
+    void TestEmoji();
 
     void TestDebug();
-
+    void TestProperties();
 
 /***********************/
 private:
@@ -124,6 +134,22 @@ private:
                          const UnicodeString &testString,
                          UVector32 *breakPositions,
                          RuleBasedBreakIterator *bi);
+
+    // Run the actual tests for TestTailoredBreaks()
+    void TBTest(BreakIterator* brkitr, int type, const char *locale, const char* escapedText,
+                const int32_t *expectOffsets, int32_t expectOffsetsCount);
+
+    /** Filter for test cases from the Unicode test data files.
+     *  Some need to be skipped because ICU is unable to fully implement the
+     *  Unicode boundary specifications.
+     *  @param testCase the test data string.
+     *  @param fileName the Unicode test data file name.
+     *  @return FALSE if the test case should be run, TRUE if it should be skipped.
+     */
+    UBool testCaseIsKnownIssue(const UnicodeString &testCase, const char *fileName);
+
+    // Test parameters, from the test framework and test invocation.
+    const char* fTestParams;
 };
 
 #endif /* #if !UCONFIG_NO_BREAK_ITERATION */