]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/test/intltest/itutil.cpp
ICU-66108.tar.gz
[apple/icu.git] / icuSources / test / intltest / itutil.cpp
index 3cda39d1778b2381450d32540fcef604a5811a19..228dbf2f218aa1a6ac6860ec54ed67303b243699 100644 (file)
@@ -35,6 +35,7 @@
 #include "usettest.h"
 
 extern IntlTest *createBytesTrieTest();
+extern IntlTest *createLocaleMatcherTest();
 static IntlTest *createLocalPointerTest();
 extern IntlTest *createUCharsTrieTest();
 static IntlTest *createEnumSetTest();
@@ -46,113 +47,40 @@ extern IntlTest *createPluralMapTest();
 extern IntlTest *createStaticUnicodeSetsTest();
 #endif
 
-
-#define CASE(id, test) case id:                               \
-                          name = #test;                       \
-                          if (exec) {                         \
-                              logln(#test "---"); logln();    \
-                              test t;                         \
-                              callTest(t, par);               \
-                          }                                   \
-                          break
-
 void IntlTestUtilities::runIndexedTest( int32_t index, UBool exec, const char* &name, char* par )
 {
     if (exec) logln("TestSuite Utilities: ");
-    switch (index) {
-        CASE(0, MultithreadTest);
-        CASE(1, StringTest);
-        CASE(2, UnicodeStringTest);
-        CASE(3, LocaleTest);
-        CASE(4, CharIterTest);
-        CASE(5, UObjectTest);
-        CASE(6, UnicodeTest);
-        CASE(7, ResourceBundleTest);
-        CASE(8, NewResourceBundleTest);
-        CASE(9, PUtilTest);
-        CASE(10, UVector32Test);
-        CASE(11, UVectorTest);
-        CASE(12, UTextTest);
-        CASE(13, LocaleAliasTest);
-        CASE(14, UnicodeSetTest);
-        CASE(15, ErrorCodeTest);
-        case 16:
-            name = "LocalPointerTest";
-            if (exec) {
-                logln("TestSuite LocalPointerTest---"); logln();
-                LocalPointer<IntlTest> test(createLocalPointerTest());
-                callTest(*test, par);
-            }
-            break;
-        case 17:
-            name = "BytesTrieTest";
-            if (exec) {
-                logln("TestSuite BytesTrieTest---"); logln();
-                LocalPointer<IntlTest> test(createBytesTrieTest());
-                callTest(*test, par);
-            }
-            break;
-        case 18:
-            name = "UCharsTrieTest";
-            if (exec) {
-                logln("TestSuite UCharsTrieTest---"); logln();
-                LocalPointer<IntlTest> test(createUCharsTrieTest());
-                callTest(*test, par);
-            }
-            break;
-        case 19:
-            name = "EnumSetTest";
-            if (exec) {
-                logln("TestSuite EnumSetTest---"); logln();
-                LocalPointer<IntlTest> test(createEnumSetTest());
-                callTest(*test, par);
-            }
-            break;
-        case 20:
-            name = "SimpleFormatterTest";
-            if (exec) {
-                logln("TestSuite SimpleFormatterTest---"); logln();
-                LocalPointer<IntlTest> test(createSimpleFormatterTest());
-                callTest(*test, par);
-            }
-            break;
-        case 21:
-            name = "UnifiedCacheTest";
-            if (exec) {
-                logln("TestSuite UnifiedCacheTest---"); logln();
-                LocalPointer<IntlTest> test(createUnifiedCacheTest());
-                callTest(*test, par);
-            }
-            break;
-        case 22:
-            name = "QuantityFormatterTest";
-            if (exec) {
-                logln("TestSuite QuantityFormatterTest---"); logln();
-                LocalPointer<IntlTest> test(createQuantityFormatterTest());
-                callTest(*test, par);
-            }
-            break;
-        case 23: 
-            name = "PluralMapTest"; 
-            if (exec) { 
-                logln("TestSuite PluralMapTest---"); logln(); 
-                LocalPointer<IntlTest> test(createPluralMapTest()); 
-                callTest(*test, par); 
-            } 
-            break;
-        case 24:
-            name = "StaticUnicodeSetsTest";
+    TESTCASE_AUTO_BEGIN;
+    TESTCASE_AUTO_CLASS(MultithreadTest);
+    TESTCASE_AUTO_CLASS(StringTest);
+    TESTCASE_AUTO_CLASS(UnicodeStringTest);
+    TESTCASE_AUTO_CLASS(LocaleTest);
+    TESTCASE_AUTO_CLASS(CharIterTest);
+    TESTCASE_AUTO_CLASS(UObjectTest);
+    TESTCASE_AUTO_CLASS(UnicodeTest);
+    TESTCASE_AUTO_CLASS(ResourceBundleTest);
+    TESTCASE_AUTO_CLASS(NewResourceBundleTest);
+    TESTCASE_AUTO_CLASS(PUtilTest);
+    TESTCASE_AUTO_CLASS(UVector32Test);
+    TESTCASE_AUTO_CLASS(UVectorTest);
+    TESTCASE_AUTO_CLASS(UTextTest);
+    TESTCASE_AUTO_CLASS(LocaleAliasTest);
+    TESTCASE_AUTO_CLASS(UnicodeSetTest);
+    TESTCASE_AUTO_CLASS(ErrorCodeTest);
+    TESTCASE_AUTO_CREATE_CLASS(LocalPointerTest);
+    TESTCASE_AUTO_CREATE_CLASS(BytesTrieTest);
+    TESTCASE_AUTO_CREATE_CLASS(UCharsTrieTest);
+    TESTCASE_AUTO_CREATE_CLASS(EnumSetTest);
+    TESTCASE_AUTO_CREATE_CLASS(SimpleFormatterTest);
+    TESTCASE_AUTO_CREATE_CLASS(UnifiedCacheTest);
+    TESTCASE_AUTO_CREATE_CLASS(QuantityFormatterTest);
+    TESTCASE_AUTO_CREATE_CLASS(PluralMapTest);
 #if !UCONFIG_NO_FORMATTING
-            if (exec) {
-                logln("TestSuite StaticUnicodeSetsTest---"); logln();
-                LocalPointer<IntlTest> test(createStaticUnicodeSetsTest());
-                callTest(*test, par);
-            }
+    TESTCASE_AUTO_CREATE_CLASS(StaticUnicodeSetsTest);
 #endif
-            break;
-        CASE(25, LocaleBuilderTest);
-        default: name = ""; break; //needed to end loop
-    }
+    TESTCASE_AUTO_CLASS(LocaleBuilderTest);
+    TESTCASE_AUTO_CREATE_CLASS(LocaleMatcherTest);
+    TESTCASE_AUTO_END;
 }
 
 void ErrorCodeTest::runIndexedTest(int32_t index, UBool exec, const char* &name, char* /*par*/) {