[ITC][base-utils][ACR-1493][Added TCs for new APIs] 63/230863/2
authorMOHIT MIGLANI <mohit.m@samsung.com>
Wed, 15 Apr 2020 08:19:47 +0000 (13:49 +0530)
committerMOHIT MIGLANI <mohit.m@samsung.com>
Wed, 15 Apr 2020 08:46:54 +0000 (14:16 +0530)
Change-Id: Ida9af0d3e3c7b530f859aaff1dfc5381dd9e87fe
Signed-off-by: MOHIT MIGLANI <mohit.m@samsung.com>
src/itc/base-utils/ITs-base-utils-unormalization.c
src/itc/base-utils/tct-base-utils-native_mobile.h
src/itc/base-utils/tct-base-utils-native_tizeniot.h
src/itc/base-utils/tct-base-utils-native_wearable.h

index 1e19446047900aea3b75bf04b80e9de5a30261df..6c684057e18ad79269dda476d96d1612c6fb27ce 100755 (executable)
@@ -110,5 +110,719 @@ int ITc_i18n_unormalization_get_instance_normalize_p(void)
        }
        return 0;
 }
+/*
+ * @testcase           ITc_i18n_unormalization_get_nfc_instance_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_get_nfc_instance
+ * @apicovered         i18n_unormalization_get_nfc_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_get_nfc_instance
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_get_nfc_instance
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_get_nfc_instance_p(void)
+{
+        START_TEST_PRINT;
+        int nRet = -1;
+        i18n_unormalizer_h h_normalizer = NULL;
+
+        //Target API
+        nRet = i18n_unormalization_get_nfc_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfc_instance");
+        return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_get_nfd_instance_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_get_nfd_instance
+ * @apicovered         i18n_unormalization_get_nfd_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_get_nfd_instance
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_get_nfd_instance
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_get_nfd_instance_p(void)
+{
+        START_TEST_PRINT;
+        int nRet = -1;
+        i18n_unormalizer_h h_normalizer = NULL;
+
+        //Target API
+        nRet = i18n_unormalization_get_nfd_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfd_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfd_instance");
+        return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_get_nfkc_instance_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_get_nfkc_instance
+ * @apicovered         i18n_unormalization_get_nfkc_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_get_nfkc_instance
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_get_nfkc_instance
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_get_nfkc_instance_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+        //Target API
+       nRet = i18n_unormalization_get_nfkc_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfkc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfkc_instance");
+       return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_get_nfkc_casefold_instance_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_get_nfkc_casefold_instance
+ * @apicovered         i18n_unormalization_get_nfkc_casefold_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_get_nfkc_casefold_instance
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_get_nfkc_casefold_instance
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_get_nfkc_casefold_instance_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+        //Target API
+       nRet = i18n_unormalization_get_nfkc_casefold_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfkc_casefold_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfkc_casefold_instance");
+       return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_get_nfkd_instance_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_get_nfkd_instance
+ * @apicovered         i18n_unormalization_get_nfkd_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_get_nfkd_instance
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_get_nfkd_instance
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_get_nfkd_instance_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+        //Target API
+       nRet = i18n_unormalization_get_nfkd_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfkd_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfkd_instance");
+       return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_create_filtered_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_create_filtered
+ * @apicovered         i18n_unormalization_create_filtered, i18n_unormalization_get_nfc_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_create_filtered
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_create_filtered
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_create_filtered_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_nfc = NULL;
+        i18n_unormalizer_h h_normalizer = NULL;
+        i18n_uset_h filter_set;
+        int nRet = -1;
+       nRet = i18n_unormalization_get_nfc_instance(&h_nfc);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_nfc, "i18n_unormalization_get_nfc_instance");
+
+        //Target API
+       nRet = i18n_unormalization_create_filtered(h_nfc, &filter_set, &h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_create_filtered", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_create_filtered");
+       return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_destroy_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_destroy
+ * @apicovered         i18n_unormalization_destroy, i18n_unormalization_get_nfc_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_destroy
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_destroy
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_destroy_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_nfc = NULL;
+        i18n_unormalizer_h h_normalizer = NULL;
+        i18n_uset_h filter_set;
+        int nRet = -1;
+       nRet = i18n_unormalization_get_nfc_instance(&h_nfc);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_nfc, "i18n_unormalization_get_nfc_instance");
+
+       nRet = i18n_unormalization_create_filtered(h_nfc, &filter_set, &h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_create_filtered", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_create_filtered");
+
+        //Target API
+        nRet = i18n_unormalization_destroy(h_normalizer);
+        PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_destroy", BaseUtilsGetError(nRet));
+
+       return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_normalize_second_and_append_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_normalize_second_and_append
+ * @apicovered         i18n_unormalization_normalize_second_and_append, i18n_unormalization_get_nfc_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_normalize_second_and_append
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_normalize_second_and_append
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_normalize_second_and_append_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_nfc_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfc_instance");
+
+        i18n_uchar a[20] = { 0x61, 0x62, 0x63, 0x41, 0x327, 0 };
+       i18n_uchar b[]={ 0x30A, 0x64, 0x65, 0x66, 0 };
+        i18n_uchar expected[]={ 0x61, 0x62, 0x63, 0xC5, 0x327, 0x64, 0x65, 0x66 };
+
+        int32_t length = -1;
+        int32_t len_of_array = (int32_t)(sizeof(a)/sizeof(a[0]));
+        int32_t len_of_expected = (int32_t)(sizeof(expected)/sizeof(expected[0]));
+
+        //Target API
+       nRet = i18n_unormalization_normalize_second_and_append(h_normalizer, a, -1, len_of_array, b, -1, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_normalize_second_and_append", BaseUtilsGetError(nRet));
+       PRINT_RESULT(length, len_of_expected, "i18n_unormalization_normalize_second_and_append", "obtained length is incorrect");
+
+        int i;
+        for(i = 0; i < length; i++)
+        {
+                PRINT_RESULT(a[i], expected[i], "i18n_unormalization_normalize_second_and_append", "values obtained are not correct");
+        }
+        return 0;
+
+}
+/*
+ * @testcase           ITc_i18n_unormalization_append_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_append
+ * @apicovered         i18n_unormalization_append
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_append
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_append
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_append_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_nfc_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfc_instance");
+
+        i18n_uchar a[20] = { 0x61, 0x62, 0x63, 0x41, 0x327, 0 };
+        i18n_uchar b[]={ 0x30A, 0x64, 0x65, 0x66, 0 };
+        i18n_uchar expected[]={ 0x61, 0x62, 0x63, 0xC5, 0x327, 0x64, 0x65, 0x66 };
+
+        int32_t length = -1;
+        int32_t len_of_array = (int32_t)(sizeof(a)/sizeof(a[0]));
+        int32_t len_of_expected = (int32_t)(sizeof(expected)/sizeof(expected[0]));
+
+        //Target API
+       nRet = i18n_unormalization_append(h_normalizer, a, -1, len_of_array, b, -1, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_append", BaseUtilsGetError(nRet));
+       PRINT_RESULT(length, len_of_expected, "i18n_unormalization_append", "obtained length is incorrect");
+
+        int i;
+        for(i = 0; i < length; i++)
+        {
+                PRINT_RESULT(a[i], expected[i], "i18n_unormalization_append", "values obtained are not correct");
+        }
+        return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_get_decomposition_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_get_decomposition
+ * @apicovered         i18n_unormalization_get_decomposition
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_get_decomposition
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_get_decomposition
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_get_decomposition_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_instance(NULL, "nfc", I18N_UNORMALIZATION_COMPOSE_CONTIGUOUS, &h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfc_instance");
+
+        i18n_uchar decomp[I18N_UCHAR_CAPACITY];
+       int32_t length = -1;
+        int32_t expected_length;
+        int i;
+        //Target API
+       nRet = i18n_unormalization_get_decomposition(h_normalizer, 0x20, decomp, I18N_UCHAR_CAPACITY, &length);
+        PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_decomposition", BaseUtilsGetError(nRet));
+
+        length = -1;
+        nRet = i18n_unormalization_get_decomposition(h_normalizer, 0xe4, decomp, I18N_UCHAR_CAPACITY, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_decomposition", BaseUtilsGetError(nRet));
+        if(length < 0)
+        {
+                FPRINTF("[Line : %d][%s] error returned = length returned is not valid\\n", __LINE__, API_NAMESPACE);
+                return 1;
+        }
+        i18n_uchar expected[] = {0x61, 0x308, 0};
+        expected_length = 2;
+
+        PRINT_RESULT(length, expected_length, "i18n_unormalization_get_decomposition", "returned length is not correct");
+        for(i = 0; i <= length; i++)
+        {
+                PRINT_RESULT(decomp[i], expected[i], "i18n_unormalization_get_decomposition", "obtained values are not correct");
+        }
+
+
+        length = -1;
+        nRet = i18n_unormalization_get_decomposition(h_normalizer, 0xac01, decomp, I18N_UCHAR_CAPACITY, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_decomposition", BaseUtilsGetError(nRet));
+        if(length < 0)
+        {
+                FPRINTF("[Line : %d][%s] error returned = length returned is invalid\\n", __LINE__, API_NAMESPACE);
+                return 1;
+        }
+        i18n_uchar expected_new[] = {0x1100, 0x1161, 0x11a8, 0};
+        expected_length = 3;
+
+        PRINT_RESULT(length, expected_length, "i18n_unormalization_get_decomposition", "returned length is not correct");
+        for(i = 0; i <= length; i++)
+        {
+                PRINT_RESULT(decomp[i], expected_new[i], "i18n_unormalization_get_decomposition", "obtained values are not correct");
+        }
+
+        return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_get_raw_decomposition_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_get_raw_decomposition
+ * @apicovered         i18n_unormalization_get_raw_decomposition, i18n_unormalization_get_nfkc_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_get_raw_decomposition
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_get_raw_decomposition
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_get_raw_decomposition_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
 
+       nRet = i18n_unormalization_get_nfkc_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfkc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfkc_instance");
+
+        i18n_uchar decomp[I18N_UCHAR_CAPACITY];
+       int32_t length = -1;
+        int32_t expected_length;
+        int i;
+        //Target API
+       nRet = i18n_unormalization_get_raw_decomposition(h_normalizer, 0x20, decomp, I18N_UCHAR_CAPACITY, &length);
+        PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_raw_decomposition", BaseUtilsGetError(nRet));
+
+        length = -1;
+        nRet = i18n_unormalization_get_raw_decomposition(h_normalizer, 0xe4, decomp, I18N_UCHAR_CAPACITY, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_raw_decomposition", BaseUtilsGetError(nRet));
+        if(length < 0)
+        {
+                FPRINTF("[Line : %d][%s] error returned = length returned is invalid\\n", __LINE__, API_NAMESPACE);
+                return 1;
+        }
+        i18n_uchar expected[] = {0x61, 0x308, 0};
+        expected_length = 2;
+
+        PRINT_RESULT(length, expected_length, "i18n_unormalization_get_raw_decomposition", "returned length is not correct");
+        for(i = 0; i <= length; i++)
+        {
+                PRINT_RESULT(decomp[i], expected[i], "i18n_unormalization_get_raw_decomposition", "obtained values are not correct");
+        }
+
+        length = -1;
+        nRet = i18n_unormalization_get_raw_decomposition(h_normalizer, 0x1e08, decomp, I18N_UCHAR_CAPACITY, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_raw_decomposition", BaseUtilsGetError(nRet));
+        if(length < 0)
+        {
+                FPRINTF("[Line : %d][%s] error returned = length returned is invalid\\n", __LINE__, API_NAMESPACE);
+                return 1;
+        }
+        i18n_uchar expected_2[] = {0xc7, 0x301, 0};
+        expected_length = 2;
+
+        PRINT_RESULT(length, expected_length, "i18n_unormalization_get_raw_decomposition", "returned length is not correct");
+        for(i = 0; i <= length; i++)
+        {
+                PRINT_RESULT(decomp[i], expected_2[i], "i18n_unormalization_get_raw_decomposition", "obtained values are not correct");
+        }
+
+        length = -1;
+        nRet = i18n_unormalization_get_raw_decomposition(h_normalizer, 0x212b, decomp, I18N_UCHAR_CAPACITY, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_raw_decomposition", BaseUtilsGetError(nRet));
+        if(length < 0)
+        {
+                FPRINTF("[Line : %d][%s] error returned = length returned is invalid\\n", __LINE__, API_NAMESPACE);
+                return 1;
+        }
+        i18n_uchar expected_3[] = {0xc5, 0};
+        expected_length = 1;
+
+        PRINT_RESULT(length, expected_length, "i18n_unormalization_get_raw_decomposition", "returned length is not correct");
+        for(i = 0; i <= length; i++)
+        {
+                PRINT_RESULT(decomp[i], expected_3[i], "i18n_unormalization_get_raw_decomposition", "obtained values are not correct");
+        }
+
+        length = -1;
+        nRet = i18n_unormalization_get_raw_decomposition(h_normalizer, 0xac00, decomp, I18N_UCHAR_CAPACITY, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_raw_decomposition", BaseUtilsGetError(nRet));
+        if(length < 0)
+        {
+                FPRINTF("[Line : %d][%s] error returned = length returned is invalid\\n", __LINE__, API_NAMESPACE);
+                return 1;
+        }
+        i18n_uchar expected_4[] = {0x1100, 0x1161, 0};
+        expected_length = 2;
+
+        PRINT_RESULT(length, expected_length, "i18n_unormalization_get_raw_decomposition", "returned length is not correct");
+        for(i = 0; i <= length; i++)
+        {
+                PRINT_RESULT(decomp[i], expected_4[i], "i18n_unormalization_get_raw_decomposition", "obtained values are not correct");
+        }
+
+        length = -1;
+        nRet = i18n_unormalization_get_raw_decomposition(h_normalizer, 0xac01, decomp, I18N_UCHAR_CAPACITY, &length);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_raw_decomposition", BaseUtilsGetError(nRet));
+        if(length < 0)
+        {
+                FPRINTF("[Line : %d][%s] error returned = length returned is invalid\\n", __LINE__, API_NAMESPACE);
+                return 1;
+        }
+        i18n_uchar expected_5[] = {0xac00, 0x11a8, 0};
+        expected_length = 2;
+
+        PRINT_RESULT(length, expected_length, "i18n_unormalization_get_raw_decomposition", "returned length is not correct");
+        for(i = 0; i <= length; i++)
+        {
+                PRINT_RESULT(decomp[i], expected_5[i], "i18n_unormalization_get_raw_decomposition", "obtained values are not correct");
+        }
+
+        return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_compose_pair_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_compose_pair
+ * @apicovered         i18n_unormalization_compose_pair
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_compose_pair
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_compose_pair
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_compose_pair_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_nfc_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfc_instance");
+
+        i18n_uchar a = 0x1100;
+       i18n_uchar b = 0x1161;
+       i18n_uchar composite = 0xac00;
+        i18n_uchar32 result;
+
+        //Target API
+       nRet = i18n_unormalization_compose_pair(h_normalizer, a, b, &result);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_compose_pair", BaseUtilsGetError(nRet));
+       PRINT_RESULT(result, composite, "i18n_unormalization_compose_pair", "obtained value is incorrect");
+        return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_is_normalized_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_is_normalized
+ * @apicovered         i18n_unormalization_is_normalized, i18n_unormalization_get_nfc_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_is_normalized
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_is_normalized
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_is_normalized_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_nfc_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfc_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfc_instance");
+
+        i18n_uchar src[3] = {0xAC00, 0xAC01, 0};
+        i18n_ubool result = false;
+
+        //Target API
+       nRet = i18n_unormalization_is_normalized(h_normalizer, src, 1, &result);
+        PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_is_normalized", BaseUtilsGetError(nRet));
+       PRINT_RESULT(true, result, "i18n_unormalization_is_normalized", "obtained value is not correct");
+
+        return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_quick_check_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_quick_check
+ * @apicovered         i18n_unormalization_quick_check, i18n_unormalization_get_nfd_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_quick_check
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_quick_check
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_quick_check_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+        int nCount = 10;
+
+       nRet = i18n_unormalization_get_nfd_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfd_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfd_instance");
+
+        i18n_uchar CPnfd[] = {0x00C6, 0x017F, 0x0F74, 0x1000, 0x1E9A,0x2261, 0x3075, 0x4000, 0x5000, 0xF000};
+        i18n_unormalization_check_result_e result;
+       int i;
+        for(i = 0; i < nCount; i++)
+        {
+                //Target API
+                nRet = i18n_unormalization_quick_check(h_normalizer, &(CPnfd[i]), 1, &result);
+               PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_quick_check", BaseUtilsGetError(nRet));
+               PRINT_RESULT(result, I18N_UNORMALIZATION_YES, "i18n_unormalization_quick_check", "obtained value is not correct");
+        }
+        return 0;
+
+}
+/*
+ * @testcase           ITc_i18n_unormalization_span_quick_check_yes_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalization_span_quick_check_yes
+ * @apicovered         i18n_unormalization_span_quick_check_yes
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalization_span_quick_check_yes
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalization_span_quick_check_yes
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_span_quick_check_yes_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_nfd_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfd_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfd_instance");
+
+        i18n_uchar CPnfd[] = {0x00C6, 0x017F, 0x0F74, 0x1000, 0x1E9A, 0x2261, 0x3075, 0x4000, 0x5000, 0xF000};
+        int32_t result;
+        int i;
+        for(i = 0; i < 10; i++)
+        {
+                //Target API
+                nRet = i18n_unormalization_span_quick_check_yes(h_normalizer, &(CPnfd[i]), 1, &result);
+               PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_span_quick_check_yes", BaseUtilsGetError(nRet));
+               PRINT_RESULT(result, 1, "i18n_unormalization_span_quick_check_yes", "obtained result is not correct");
+        }
+        return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalizer_has_boundary_before_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalizer_has_boundary_before
+ * @apicovered         i18n_unormalization_get_nfd_instance, i18n_unormalizer_has_boundary_before
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalizer_has_boundary_before
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalizer_has_boundary_before
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalizer_has_boundary_before_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_nfd_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfd_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfd_instance");
+
+        i18n_ubool result = false;
+
+        //Target API
+       nRet = i18n_unormalizer_has_boundary_before(h_normalizer, 0xad, &result);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalizer_has_boundary_before", BaseUtilsGetError(nRet));
+       PRINT_RESULT(true, result, "i18n_unormalizer_has_boundary_before", "obtained result is not correct");
+
+       return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalizer_has_boundary_after_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalizer_has_boundary_after
+ * @apicovered         i18n_unormalizer_has_boundary_after, i18n_unormalization_get_nfd_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalizer_has_boundary_after
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalizer_has_boundary_after
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalizer_has_boundary_after_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_nfd_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfd_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfd_instance");
+
+        i18n_ubool result = false;
+
+        //Target API
+       nRet = i18n_unormalizer_has_boundary_after(h_normalizer, 0xad, &result);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalizer_has_boundary_after", BaseUtilsGetError(nRet));
+       PRINT_RESULT(true, result, "i18n_unormalizer_has_boundary_after", "obtained result is not correct");
+
+       return 0;
+}
+/*
+ * @testcase           ITc_i18n_unormalization_is_inert_p
+ * @since_tizen        6.0
+ * @author             SRID(mohit.m)
+ * @reviewer           SRID(shobhit.v)
+ * @type               auto
+ * @scenario           calls the api based on code
+ * @apitarget          i18n_unormalizer_is_inert
+ * @apicovered         i18n_unormalizer_is_inert, i18n_unormalization_get_nfd_instance
+ * @passcase           I18N_ERROR_NONE returned by i18n_unormalizer_is_inert, i18n_unormalization_get_nfd_instance
+ * @failcase           I18N_ERROR_NONE not returned by i18n_unormalizer_is_inert
+ * @precondition       NA
+ * @postcondition      NA
+ */
+int ITc_i18n_unormalization_is_inert_p(void)
+{
+        START_TEST_PRINT;
+        i18n_unormalizer_h h_normalizer = NULL;
+        int nRet = -1;
+
+       nRet = i18n_unormalization_get_nfd_instance(&h_normalizer);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalization_get_nfd_instance", BaseUtilsGetError(nRet));
+        CHECK_HANDLE(h_normalizer, "i18n_unormalization_get_nfd_instance");
+
+        i18n_ubool result = false;
+
+        //Target API
+       nRet = i18n_unormalization_is_inert(h_normalizer, 0xad, &result);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_unormalizer_is_inert", BaseUtilsGetError(nRet));
+       PRINT_RESULT(true, result, "i18n_unormalizer_is_inert", "obtained result is not correct");
+
+       return 0;
+}
 
index 0dd1a989e2c63a9d89c7420dce10d4c1d8a14b14..5a20ea14e08f1eadc8894b91dca24fc67554eb5f 100755 (executable)
@@ -824,6 +824,25 @@ extern int ITc_i18n_uscript_is_right_to_left_p(void);
 extern int ITc_i18n_uscript_breaks_between_letters_p(void);
 extern int ITc_i18n_uscript_is_cased_p(void);
 
+extern int ITc_i18n_unormalization_get_nfc_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfd_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkc_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkc_casefold_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkd_instance_p(void);
+extern int ITc_i18n_unormalization_create_filtered_p(void);
+extern int ITc_i18n_unormalization_destroy_p(void);
+extern int ITc_i18n_unormalization_normalize_second_and_append_p(void);
+extern int ITc_i18n_unormalization_append_p(void);
+extern int ITc_i18n_unormalization_get_decomposition_p(void);
+extern int ITc_i18n_unormalization_get_raw_decomposition_p(void);
+extern int ITc_i18n_unormalization_compose_pair_p(void);
+extern int ITc_i18n_unormalization_is_normalized_p(void);
+extern int ITc_i18n_unormalization_quick_check_p(void);
+extern int ITc_i18n_unormalization_span_quick_check_yes_p(void);
+extern int ITc_i18n_unormalizer_has_boundary_before_p(void);
+extern int ITc_i18n_unormalizer_has_boundary_after_p(void);
+extern int ITc_i18n_unormalization_is_inert_p(void);
+
 
 testcase tc_array[] = {
        {"ITc_i18n_ubrk_create_destroy_p",ITc_i18n_ubrk_create_destroy_p,ITs_base_utils_ubrk_startup,ITs_base_utils_ubrk_cleanup},
@@ -1559,6 +1578,25 @@ testcase tc_array[] = {
         {"ITc_i18n_uscript_breaks_between_letters_p", ITc_i18n_uscript_breaks_between_letters_p, ITs_base_utils_uscript_startup, ITs_base_utils_uscript_cleanup},
         {"ITc_i18n_uscript_is_cased_p", ITc_i18n_uscript_is_cased_p, ITs_base_utils_uscript_startup, ITs_base_utils_uscript_cleanup},
 
+        {"ITc_i18n_unormalization_get_nfc_instance_p", ITc_i18n_unormalization_get_nfc_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfd_instance_p", ITc_i18n_unormalization_get_nfd_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkc_instance_p", ITc_i18n_unormalization_get_nfkc_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkc_casefold_instance_p", ITc_i18n_unormalization_get_nfkc_casefold_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkd_instance_p", ITc_i18n_unormalization_get_nfkd_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_create_filtered_p", ITc_i18n_unormalization_create_filtered_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_destroy_p", ITc_i18n_unormalization_destroy_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_normalize_second_and_append_p", ITc_i18n_unormalization_normalize_second_and_append_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_append_p", ITc_i18n_unormalization_append_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_decomposition_p", ITc_i18n_unormalization_get_decomposition_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_raw_decomposition_p", ITc_i18n_unormalization_get_raw_decomposition_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_compose_pair_p", ITc_i18n_unormalization_compose_pair_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_is_normalized_p", ITc_i18n_unormalization_is_normalized_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_quick_check_p", ITc_i18n_unormalization_quick_check_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_span_quick_check_yes_p", ITc_i18n_unormalization_span_quick_check_yes_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalizer_has_boundary_before_p", ITc_i18n_unormalizer_has_boundary_before_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalizer_has_boundary_after_p", ITc_i18n_unormalizer_has_boundary_after_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_is_inert_p", ITc_i18n_unormalization_is_inert_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+
         {NULL, NULL}
 
 };
index a8c4853935ebd1c92cd21db9105a4f2d943a5872..9e7b7c8df67db8edddf1e81d12a872ae3f7a71e2 100755 (executable)
@@ -787,6 +787,24 @@ extern int ITc_i18n_uscript_is_right_to_left_p(void);
 extern int ITc_i18n_uscript_breaks_between_letters_p(void);
 extern int ITc_i18n_uscript_is_cased_p(void);
 
+extern int ITc_i18n_unormalization_get_nfc_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfd_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkc_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkc_casefold_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkd_instance_p(void);
+extern int ITc_i18n_unormalization_create_filtered_p(void);
+extern int ITc_i18n_unormalization_destroy_p(void);
+extern int ITc_i18n_unormalization_normalize_second_and_append_p(void);
+extern int ITc_i18n_unormalization_append_p(void);
+extern int ITc_i18n_unormalization_get_decomposition_p(void);
+extern int ITc_i18n_unormalization_get_raw_decomposition_p(void);
+extern int ITc_i18n_unormalization_compose_pair_p(void);
+extern int ITc_i18n_unormalization_is_normalized_p(void);
+extern int ITc_i18n_unormalization_quick_check_p(void);
+extern int ITc_i18n_unormalization_span_quick_check_yes_p(void);
+extern int ITc_i18n_unormalizer_has_boundary_before_p(void);
+extern int ITc_i18n_unormalizer_has_boundary_after_p(void);
+extern int ITc_i18n_unormalization_is_inert_p(void);
 
 
 testcase tc_array[] = {
@@ -1493,6 +1511,25 @@ testcase tc_array[] = {
         {"ITc_i18n_uscript_breaks_between_letters_p", ITc_i18n_uscript_breaks_between_letters_p, ITs_base_utils_uscript_startup, ITs_base_utils_uscript_cleanup},
         {"ITc_i18n_uscript_is_cased_p", ITc_i18n_uscript_is_cased_p, ITs_base_utils_uscript_startup, ITs_base_utils_uscript_cleanup},
 
+        {"ITc_i18n_unormalization_get_nfc_instance_p", ITc_i18n_unormalization_get_nfc_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfd_instance_p", ITc_i18n_unormalization_get_nfd_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkc_instance_p", ITc_i18n_unormalization_get_nfkc_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkc_casefold_instance_p", ITc_i18n_unormalization_get_nfkc_casefold_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkd_instance_p", ITc_i18n_unormalization_get_nfkd_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_create_filtered_p", ITc_i18n_unormalization_create_filtered_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_destroy_p", ITc_i18n_unormalization_destroy_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_normalize_second_and_append_p", ITc_i18n_unormalization_normalize_second_and_append_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_append_p", ITc_i18n_unormalization_append_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_decomposition_p", ITc_i18n_unormalization_get_decomposition_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_raw_decomposition_p", ITc_i18n_unormalization_get_raw_decomposition_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_compose_pair_p", ITc_i18n_unormalization_compose_pair_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_is_normalized_p", ITc_i18n_unormalization_is_normalized_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_quick_check_p", ITc_i18n_unormalization_quick_check_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_span_quick_check_yes_p", ITc_i18n_unormalization_span_quick_check_yes_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalizer_has_boundary_before_p", ITc_i18n_unormalizer_has_boundary_before_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalizer_has_boundary_after_p", ITc_i18n_unormalizer_has_boundary_after_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_is_inert_p", ITc_i18n_unormalization_is_inert_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+
         {NULL, NULL}
 
 };
index 7fa18ab8fd068f8023b0f3ae07be58a1e6d5c66e..a155c6cbf20b58c512ed1288606b890a98266402 100755 (executable)
@@ -823,6 +823,24 @@ extern int ITc_i18n_uscript_is_right_to_left_p(void);
 extern int ITc_i18n_uscript_breaks_between_letters_p(void);
 extern int ITc_i18n_uscript_is_cased_p(void);
 
+extern int ITc_i18n_unormalization_get_nfc_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfd_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkc_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkc_casefold_instance_p(void);
+extern int ITc_i18n_unormalization_get_nfkd_instance_p(void);
+extern int ITc_i18n_unormalization_create_filtered_p(void);
+extern int ITc_i18n_unormalization_destroy_p(void);
+extern int ITc_i18n_unormalization_normalize_second_and_append_p(void);
+extern int ITc_i18n_unormalization_append_p(void);
+extern int ITc_i18n_unormalization_get_decomposition_p(void);
+extern int ITc_i18n_unormalization_get_raw_decomposition_p(void);
+extern int ITc_i18n_unormalization_compose_pair_p(void);
+extern int ITc_i18n_unormalization_is_normalized_p(void);
+extern int ITc_i18n_unormalization_quick_check_p(void);
+extern int ITc_i18n_unormalization_span_quick_check_yes_p(void);
+extern int ITc_i18n_unormalizer_has_boundary_before_p(void);
+extern int ITc_i18n_unormalizer_has_boundary_after_p(void);
+extern int ITc_i18n_unormalization_is_inert_p(void);
 
 
 testcase tc_array[] = {
@@ -1558,6 +1576,25 @@ testcase tc_array[] = {
         {"ITc_i18n_uscript_breaks_between_letters_p", ITc_i18n_uscript_breaks_between_letters_p, ITs_base_utils_uscript_startup, ITs_base_utils_uscript_cleanup},
         {"ITc_i18n_uscript_is_cased_p", ITc_i18n_uscript_is_cased_p, ITs_base_utils_uscript_startup, ITs_base_utils_uscript_cleanup},
 
+        {"ITc_i18n_unormalization_get_nfc_instance_p", ITc_i18n_unormalization_get_nfc_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfd_instance_p", ITc_i18n_unormalization_get_nfd_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkc_instance_p", ITc_i18n_unormalization_get_nfkc_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkc_casefold_instance_p", ITc_i18n_unormalization_get_nfkc_casefold_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_nfkd_instance_p", ITc_i18n_unormalization_get_nfkd_instance_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_create_filtered_p", ITc_i18n_unormalization_create_filtered_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_destroy_p", ITc_i18n_unormalization_destroy_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_normalize_second_and_append_p", ITc_i18n_unormalization_normalize_second_and_append_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_append_p", ITc_i18n_unormalization_append_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_decomposition_p", ITc_i18n_unormalization_get_decomposition_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_get_raw_decomposition_p", ITc_i18n_unormalization_get_raw_decomposition_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_compose_pair_p", ITc_i18n_unormalization_compose_pair_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_is_normalized_p", ITc_i18n_unormalization_is_normalized_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_quick_check_p", ITc_i18n_unormalization_quick_check_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_span_quick_check_yes_p", ITc_i18n_unormalization_span_quick_check_yes_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalizer_has_boundary_before_p", ITc_i18n_unormalizer_has_boundary_before_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalizer_has_boundary_after_p", ITc_i18n_unormalizer_has_boundary_after_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+        {"ITc_i18n_unormalization_is_inert_p", ITc_i18n_unormalization_is_inert_p, ITs_base_utils_unormalization_startup, ITs_base_utils_unormalization_cleanup},
+
         {NULL, NULL}
 
 };