]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/test/cintltst/capitst.c
ICU-66108.tar.gz
[apple/icu.git] / icuSources / test / cintltst / capitst.c
index 616e2e7eef83d7ea51fc710e2bde073b89c9b119..21521f5263b354d340f795faf0c5588a8fe9ed2b 100644 (file)
@@ -42,6 +42,7 @@ static void TestBengaliSortKey(void);
 
 
 static char* U_EXPORT2 ucol_sortKeyToString(const UCollator *coll, const uint8_t *sortkey, char *buffer, uint32_t len) {
+    (void)coll; // suppress compiler warnings about unused variable
     uint32_t position = 0;
     uint8_t b;
 
@@ -312,9 +313,13 @@ void TestProperty()
 
     /* Assume that the UCD and UCA versions are the same,
      * rather than hardcoding (and updating each time) a particular UCA version. */
+    // Apple variant: Assume that UCA first 2 versions are the same as UCD,
+    // and last two parts show an increase over UCD 
     u_getUnicodeVersion(versionUCDArray);
     ucol_getUCAVersion(col, versionUCAArray);
-    if (0!=uprv_memcmp(versionUCAArray, versionUCDArray, 4)) {
+    //if (0!=uprv_memcmp(versionUCAArray, versionUCDArray, 4)) {
+    if (versionUCAArray[0]!=versionUCDArray[0] || versionUCAArray[1]!=versionUCDArray[1] ||
+        (versionUCAArray[3]<=versionUCDArray[3] && (versionUCAArray[3]!=versionUCDArray[3] || versionUCAArray[4]<versionUCDArray[4]))) {
       log_err("Testing ucol_getUCAVersion() - unexpected result: %hu.%hu.%hu.%hu\n",
               versionUCAArray[0], versionUCAArray[1], versionUCAArray[2], versionUCAArray[3]);
     }
@@ -530,8 +535,8 @@ void TestRuleBasedColl()
     }
     while (TRUE) {
         /* testing with en since thai has its own tailoring */
-        uint32_t ce = ucol_next(iter1, &status);
-        uint32_t ce2 = ucol_next(iter2, &status);
+        int32_t ce = ucol_next(iter1, &status);
+        int32_t ce2 = ucol_next(iter2, &status);
         if(U_FAILURE(status)) {
             log_err("ERROR: CollationElement iterator creation failed.: %s\n", myErrorName(status));
             return;
@@ -848,7 +853,7 @@ void TestCloneBinary(){
         ucol_getSortKey(col, t, -1, k2, l2);
         if (strcmp((char *)k1,(char *)k2) != 0){
             log_err("ucol_openBinary - new collator should equal to old one\n");
-        };
+        }
         free(k1);
         free(k2);
     }
@@ -1544,64 +1549,64 @@ void TestBounds() {
     };
 
     struct teststruct tests[] = {
-        {"\\u010CAKI MIHALJ" } ,
-        {"\\u010CAKI MIHALJ" } ,
-        {"\\u010CAKI PIRO\\u0160KA" },
-        {"\\u010CABAI ANDRIJA" } ,
-        {"\\u010CABAI LAJO\\u0160" } ,
-        {"\\u010CABAI MARIJA" } ,
-        {"\\u010CABAI STEVAN" } ,
-        {"\\u010CABAI STEVAN" } ,
-        {"\\u010CABARKAPA BRANKO" } ,
-        {"\\u010CABARKAPA MILENKO" } ,
-        {"\\u010CABARKAPA MIROSLAV" } ,
-        {"\\u010CABARKAPA SIMO" } ,
-        {"\\u010CABARKAPA STANKO" } ,
-        {"\\u010CABARKAPA TAMARA" } ,
-        {"\\u010CABARKAPA TOMA\\u0160" } ,
-        {"\\u010CABDARI\\u0106 NIKOLA" } ,
-        {"\\u010CABDARI\\u0106 ZORICA" } ,
-        {"\\u010CABI NANDOR" } ,
-        {"\\u010CABOVI\\u0106 MILAN" } ,
-        {"\\u010CABRADI AGNEZIJA" } ,
-        {"\\u010CABRADI IVAN" } ,
-        {"\\u010CABRADI JELENA" } ,
-        {"\\u010CABRADI LJUBICA" } ,
-        {"\\u010CABRADI STEVAN" } ,
-        {"\\u010CABRDA MARTIN" } ,
-        {"\\u010CABRILO BOGDAN" } ,
-        {"\\u010CABRILO BRANISLAV" } ,
-        {"\\u010CABRILO LAZAR" } ,
-        {"\\u010CABRILO LJUBICA" } ,
-        {"\\u010CABRILO SPASOJA" } ,
-        {"\\u010CADE\\u0160 ZDENKA" } ,
-        {"\\u010CADESKI BLAGOJE" } ,
-        {"\\u010CADOVSKI VLADIMIR" } ,
-        {"\\u010CAGLJEVI\\u0106 TOMA" } ,
-        {"\\u010CAGOROVI\\u0106 VLADIMIR" } ,
-        {"\\u010CAJA VANKA" } ,
-        {"\\u010CAJI\\u0106 BOGOLJUB" } ,
-        {"\\u010CAJI\\u0106 BORISLAV" } ,
-        {"\\u010CAJI\\u0106 RADOSLAV" } ,
-        {"\\u010CAK\\u0160IRAN MILADIN" } ,
-        {"\\u010CAKAN EUGEN" } ,
-        {"\\u010CAKAN EVGENIJE" } ,
-        {"\\u010CAKAN IVAN" } ,
-        {"\\u010CAKAN JULIJAN" } ,
-        {"\\u010CAKAN MIHAJLO" } ,
-        {"\\u010CAKAN STEVAN" } ,
-        {"\\u010CAKAN VLADIMIR" } ,
-        {"\\u010CAKAN VLADIMIR" } ,
-        {"\\u010CAKAN VLADIMIR" } ,
-        {"\\u010CAKARA ANA" } ,
-        {"\\u010CAKAREVI\\u0106 MOMIR" } ,
-        {"\\u010CAKAREVI\\u0106 NEDELJKO" } ,
-        {"\\u010CAKI \\u0160ANDOR" } ,
-        {"\\u010CAKI AMALIJA" } ,
-        {"\\u010CAKI ANDRA\\u0160" } ,
-        {"\\u010CAKI LADISLAV" } ,
-        {"\\u010CAKI LAJO\\u0160" } ,
-        {"\\u010CAKI LASLO" } ,
+        {"\\u010CAKI MIHALJ", {0}},
+        {"\\u010CAKI MIHALJ", {0}},
+        {"\\u010CAKI PIRO\\u0160KA", {0}},
+        {"\\u010CABAI ANDRIJA", {0}},
+        {"\\u010CABAI LAJO\\u0160", {0}},
+        {"\\u010CABAI MARIJA", {0}},
+        {"\\u010CABAI STEVAN", {0}},
+        {"\\u010CABAI STEVAN", {0}},
+        {"\\u010CABARKAPA BRANKO", {0}},
+        {"\\u010CABARKAPA MILENKO", {0}},
+        {"\\u010CABARKAPA MIROSLAV", {0}},
+        {"\\u010CABARKAPA SIMO", {0}},
+        {"\\u010CABARKAPA STANKO", {0}},
+        {"\\u010CABARKAPA TAMARA", {0}},
+        {"\\u010CABARKAPA TOMA\\u0160", {0}},
+        {"\\u010CABDARI\\u0106 NIKOLA", {0}},
+        {"\\u010CABDARI\\u0106 ZORICA", {0}},
+        {"\\u010CABI NANDOR", {0}},
+        {"\\u010CABOVI\\u0106 MILAN", {0}},
+        {"\\u010CABRADI AGNEZIJA", {0}},
+        {"\\u010CABRADI IVAN", {0}},
+        {"\\u010CABRADI JELENA", {0}},
+        {"\\u010CABRADI LJUBICA", {0}},
+        {"\\u010CABRADI STEVAN", {0}},
+        {"\\u010CABRDA MARTIN", {0}},
+        {"\\u010CABRILO BOGDAN", {0}},
+        {"\\u010CABRILO BRANISLAV", {0}},
+        {"\\u010CABRILO LAZAR", {0}},
+        {"\\u010CABRILO LJUBICA", {0}},
+        {"\\u010CABRILO SPASOJA", {0}},
+        {"\\u010CADE\\u0160 ZDENKA", {0}},
+        {"\\u010CADESKI BLAGOJE", {0}},
+        {"\\u010CADOVSKI VLADIMIR", {0}},
+        {"\\u010CAGLJEVI\\u0106 TOMA", {0}},
+        {"\\u010CAGOROVI\\u0106 VLADIMIR", {0}},
+        {"\\u010CAJA VANKA", {0}},
+        {"\\u010CAJI\\u0106 BOGOLJUB", {0}},
+        {"\\u010CAJI\\u0106 BORISLAV", {0}},
+        {"\\u010CAJI\\u0106 RADOSLAV", {0}},
+        {"\\u010CAK\\u0160IRAN MILADIN", {0}},
+        {"\\u010CAKAN EUGEN", {0}},
+        {"\\u010CAKAN EVGENIJE", {0}},
+        {"\\u010CAKAN IVAN", {0}},
+        {"\\u010CAKAN JULIJAN", {0}},
+        {"\\u010CAKAN MIHAJLO", {0}},
+        {"\\u010CAKAN STEVAN", {0}},
+        {"\\u010CAKAN VLADIMIR", {0}},
+        {"\\u010CAKAN VLADIMIR", {0}},
+        {"\\u010CAKAN VLADIMIR", {0}},
+        {"\\u010CAKARA ANA", {0}},
+        {"\\u010CAKAREVI\\u0106 MOMIR", {0}},
+        {"\\u010CAKAREVI\\u0106 NEDELJKO", {0}},
+        {"\\u010CAKI \\u0160ANDOR", {0}},
+        {"\\u010CAKI AMALIJA", {0}},
+        {"\\u010CAKI ANDRA\\u0160", {0}},
+        {"\\u010CAKI LADISLAV", {0}},
+        {"\\u010CAKI LAJO\\u0160", {0}},
+        {"\\u010CAKI LASLO", {0}},
     };