[unittests] change directory name and add new tcs 05/234405/3
authorHyunjee Kim <hj0426.kim@samsung.com>
Tue, 26 May 2020 06:33:53 +0000 (15:33 +0900)
committerHyunjee Kim <hj0426.kim@samsung.com>
Wed, 27 May 2020 05:45:02 +0000 (14:45 +0900)
Change-Id: I85647be4b84815a872c0242b7f14f6c29aa957b6
Signed-off-by: Hyunjee Kim <hj0426.kim@samsung.com>
52 files changed:
CMakeLists.txt
packaging/capi-base-utils.spec
tests/CMakeLists.txt [moved from unittest/CMakeLists.txt with 97% similarity]
tests/include/assert_local.h [moved from unittest/include/assert_local.h with 100% similarity]
tests/include/tct_common.h [moved from unittest/include/tct_common.h with 100% similarity]
tests/include/testcase.h [moved from unittest/include/testcase.h with 100% similarity]
tests/run_coverage.sh [moved from unittest/run_coverage.sh with 100% similarity]
tests/tct-base-utils-core.cpp [moved from unittest/tct-base-utils-core.cpp with 100% similarity]
tests/tct-base-utils-core_mobile.h [moved from unittest/tct-base-utils-core_mobile.h with 98% similarity]
tests/tct-base-utils-core_tizeniot.h [moved from unittest/tct-base-utils-core_tizeniot.h with 83% similarity]
tests/tct-base-utils-core_wearable.h [moved from unittest/tct-base-utils-core_wearable.h with 98% similarity]
tests/utc-capi-base-utils-alpha-idx.c [moved from unittest/utc-capi-base-utils-alpha-idx.c with 100% similarity]
tests/utc-capi-base-utils-date-interval-format.c [moved from unittest/utc-capi-base-utils-date-interval-format.c with 100% similarity]
tests/utc-capi-base-utils-date-interval.c [moved from unittest/utc-capi-base-utils-date-interval.c with 100% similarity]
tests/utc-capi-base-utils-field-position.c [moved from unittest/utc-capi-base-utils-field-position.c with 100% similarity]
tests/utc-capi-base-utils-format.c [moved from unittest/utc-capi-base-utils-format.c with 100% similarity]
tests/utc-capi-base-utils-formattable.c [moved from unittest/utc-capi-base-utils-formattable.c with 100% similarity]
tests/utc-capi-base-utils-immutable-idx.c [moved from unittest/utc-capi-base-utils-immutable-idx.c with 100% similarity]
tests/utc-capi-base-utils-loc-disp-names.c [moved from unittest/utc-capi-base-utils-loc-disp-names.c with 100% similarity]
tests/utc-capi-base-utils-measure-format.c [moved from unittest/utc-capi-base-utils-measure-format.c with 100% similarity]
tests/utc-capi-base-utils-measure-unit.c [moved from unittest/utc-capi-base-utils-measure-unit.c with 100% similarity]
tests/utc-capi-base-utils-measure.c [moved from unittest/utc-capi-base-utils-measure.c with 100% similarity]
tests/utc-capi-base-utils-parse-position.c [moved from unittest/utc-capi-base-utils-parse-position.c with 100% similarity]
tests/utc-capi-base-utils-plural-format.c [moved from unittest/utc-capi-base-utils-plural-format.c with 100% similarity]
tests/utc-capi-base-utils-plural-rules.c [moved from unittest/utc-capi-base-utils-plural-rules.c with 100% similarity]
tests/utc-capi-base-utils-simple-date-format.c [moved from unittest/utc-capi-base-utils-simple-date-format.c with 100% similarity]
tests/utc-capi-base-utils-timezone.c [moved from unittest/utc-capi-base-utils-timezone.c with 100% similarity]
tests/utc-capi-base-utils-ubidi.c [moved from unittest/utc-capi-base-utils-ubidi.c with 100% similarity]
tests/utc-capi-base-utils-ubrk.c [moved from unittest/utc-capi-base-utils-ubrk.c with 100% similarity]
tests/utc-capi-base-utils-ucalendar.c [moved from unittest/utc-capi-base-utils-ucalendar.c with 100% similarity]
tests/utc-capi-base-utils-uchar.c [moved from unittest/utc-capi-base-utils-uchar.c with 100% similarity]
tests/utc-capi-base-utils-uchar_iter.c [moved from unittest/utc-capi-base-utils-uchar_iter.c with 100% similarity]
tests/utc-capi-base-utils-ucnvsel.c [new file with mode: 0644]
tests/utc-capi-base-utils-ucollator.c [moved from unittest/utc-capi-base-utils-ucollator.c with 100% similarity]
tests/utc-capi-base-utils-ucsdet.c [new file with mode: 0644]
tests/utc-capi-base-utils-udate.c [moved from unittest/utc-capi-base-utils-udate.c with 100% similarity]
tests/utc-capi-base-utils-udatepg.c [moved from unittest/utc-capi-base-utils-udatepg.c with 100% similarity]
tests/utc-capi-base-utils-uenumeration.c [moved from unittest/utc-capi-base-utils-uenumeration.c with 100% similarity]
tests/utc-capi-base-utils-uidna.c [moved from unittest/utc-capi-base-utils-uidna.c with 100% similarity]
tests/utc-capi-base-utils-ulocale.c [moved from unittest/utc-capi-base-utils-ulocale.c with 100% similarity]
tests/utc-capi-base-utils-unormalization.c [moved from unittest/utc-capi-base-utils-unormalization.c with 100% similarity]
tests/utc-capi-base-utils-unumber.c [moved from unittest/utc-capi-base-utils-unumber.c with 100% similarity]
tests/utc-capi-base-utils-unumsys.c [moved from unittest/utc-capi-base-utils-unumsys.c with 100% similarity]
tests/utc-capi-base-utils-uscript.c [moved from unittest/utc-capi-base-utils-uscript.c with 100% similarity]
tests/utc-capi-base-utils-usearch.c [moved from unittest/utc-capi-base-utils-usearch.c with 100% similarity]
tests/utc-capi-base-utils-uset.c [moved from unittest/utc-capi-base-utils-uset.c with 100% similarity]
tests/utc-capi-base-utils-ushape.c [moved from unittest/utc-capi-base-utils-ushape.c with 100% similarity]
tests/utc-capi-base-utils-ustring.c [moved from unittest/utc-capi-base-utils-ustring.c with 100% similarity]
tests/utc-capi-base-utils-utext.c [moved from unittest/utc-capi-base-utils-utext.c with 100% similarity]
tests/utc-capi-base-utils-utmscale.c [moved from unittest/utc-capi-base-utils-utmscale.c with 100% similarity]
tests/utc-capi-base-utils-uversion.c [moved from unittest/utc-capi-base-utils-uversion.c with 100% similarity]
tests/utc_convert.sh [moved from unittest/utc_convert.sh with 100% similarity]

index 19c554e..dd08fbf 100755 (executable)
@@ -25,5 +25,5 @@ ADD_SUBDIRECTORY(src/)
 ADD_SUBDIRECTORY(i18ninfo/)
 
 IF( DEFINED GCOV )
-ADD_SUBDIRECTORY(unittest/)
+ADD_SUBDIRECTORY(tests/)
 ENDIF()
index 3ca19da..9da2a81 100755 (executable)
@@ -84,7 +84,7 @@ install -m 0644 gcov-obj/* %{buildroot}%{_datadir}/gcov/obj
 
 %check
 %if 0%{?gcov:1}
-pushd unittest
+pushd tests
 ./run_coverage.sh
 popd
 %endif
similarity index 97%
rename from unittest/CMakeLists.txt
rename to tests/CMakeLists.txt
index 3c21002..c7f7ca1 100644 (file)
@@ -44,6 +44,8 @@ SET(TC_SOURCES
     utc-capi-base-utils-uscript.c
     utc-capi-base-utils-unumsys.c
     utc-capi-base-utils-uidna.c
+    utc-capi-base-utils-ucsdet.c
+    utc-capi-base-utils-ucnvsel.c
 )
 
 PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
similarity index 98%
rename from unittest/tct-base-utils-core_mobile.h
rename to tests/tct-base-utils-core_mobile.h
index d291038..8fe689e 100644 (file)
@@ -95,6 +95,10 @@ extern void utc_capi_base_utils_unumsys_startup(void);
 extern void utc_capi_base_utils_unumsys_cleanup(void);
 extern void utc_capi_base_utils_uidna_startup(void);
 extern void utc_capi_base_utils_uidna_cleanup(void);
+extern void utc_capi_base_utils_ucsdet_startup(void);
+extern void utc_capi_base_utils_ucsdet_cleanup(void);
+extern void utc_capi_base_utils_ucnvsel_startup(void);
+extern void utc_capi_base_utils_ucnvsel_cleanup(void);
 
 extern int utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p(void);
 extern int utc_capi_base_utils_i18n_ucalendar_set_default_timezone_n(void);
@@ -2460,6 +2464,54 @@ extern int utc_capi_base_utils_i18n_uidna_info_get_errors_p(void);
 extern int utc_capi_base_utils_i18n_uidna_info_get_errors_n(void);
 extern int utc_capi_base_utils_i18n_uidna_info_destroy_p(void);
 extern int utc_capi_base_utils_i18n_uidna_info_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_create_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_create_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_destroy_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_text_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_text_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_all_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_all_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_name_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_name_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_confidence_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_confidence_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_language_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_language_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n3(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_destroy_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_serialize_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_serialize_n(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2(void);
 
 testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p",utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p,utc_capi_base_utils_ucalendar_startup,utc_capi_base_utils_ucalendar_cleanup},
@@ -3487,8 +3539,8 @@ testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_unormalization_create_filtered_n",utc_capi_base_utils_i18n_unormalization_create_filtered_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_destroy_p",utc_capi_base_utils_i18n_unormalization_destroy_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_destroy_n",utc_capi_base_utils_i18n_unormalization_destroy_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
-       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p ,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
-       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n ,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_append_p",utc_capi_base_utils_i18n_unormalization_append_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_append_n",utc_capi_base_utils_i18n_unormalization_append_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_get_decomposition_p1",utc_capi_base_utils_i18n_unormalization_get_decomposition_p1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
@@ -4826,6 +4878,54 @@ testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_uidna_info_get_errors_n",utc_capi_base_utils_i18n_uidna_info_get_errors_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
        {"utc_capi_base_utils_i18n_uidna_info_destroy_p",utc_capi_base_utils_i18n_uidna_info_destroy_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
        {"utc_capi_base_utils_i18n_uidna_info_destroy_n",utc_capi_base_utils_i18n_uidna_info_destroy_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_create_p",utc_capi_base_utils_i18n_ucsdet_create_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_create_n",utc_capi_base_utils_i18n_ucsdet_create_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_destroy_p",utc_capi_base_utils_i18n_ucsdet_destroy_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_destroy_n",utc_capi_base_utils_i18n_ucsdet_destroy_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_text_p",utc_capi_base_utils_i18n_ucsdet_set_text_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_text_n",utc_capi_base_utils_i18n_ucsdet_set_text_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_p",utc_capi_base_utils_i18n_ucsdet_detect_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_n1",utc_capi_base_utils_i18n_ucsdet_detect_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_n2",utc_capi_base_utils_i18n_ucsdet_detect_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_all_p",utc_capi_base_utils_i18n_ucsdet_detect_all_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_all_n",utc_capi_base_utils_i18n_ucsdet_detect_all_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_name_p",utc_capi_base_utils_i18n_ucsdet_get_name_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_name_n",utc_capi_base_utils_i18n_ucsdet_get_name_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_confidence_p",utc_capi_base_utils_i18n_ucsdet_get_confidence_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_confidence_n",utc_capi_base_utils_i18n_ucsdet_get_confidence_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_language_p",utc_capi_base_utils_i18n_ucsdet_get_language_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_language_n",utc_capi_base_utils_i18n_ucsdet_get_language_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_p",utc_capi_base_utils_i18n_ucsdet_get_uchars_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n1",utc_capi_base_utils_i18n_ucsdet_get_uchars_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n2",utc_capi_base_utils_i18n_ucsdet_get_uchars_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n3",utc_capi_base_utils_i18n_ucsdet_get_uchars_n3,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p",utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n",utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_p",utc_capi_base_utils_i18n_ucnvsel_create_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_n1",utc_capi_base_utils_i18n_ucnvsel_create_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_n2",utc_capi_base_utils_i18n_ucnvsel_create_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_destroy_p",utc_capi_base_utils_i18n_ucnvsel_destroy_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_destroy_n",utc_capi_base_utils_i18n_ucnvsel_destroy_n,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_serialize_p",utc_capi_base_utils_i18n_ucnvsel_serialize_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_serialize_n",utc_capi_base_utils_i18n_ucnvsel_serialize_n,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_p",utc_capi_base_utils_i18n_ucnvsel_select_for_string_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1",utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2",utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
        {NULL, NULL}
 };
 
similarity index 83%
rename from unittest/tct-base-utils-core_tizeniot.h
rename to tests/tct-base-utils-core_tizeniot.h
index b9f709e..8fe689e 100644 (file)
@@ -79,6 +79,26 @@ extern void utc_capi_base_utils_plural_format_startup(void);
 extern void utc_capi_base_utils_plural_format_cleanup(void);
 extern void utc_capi_base_utils_immutable_idx_startup(void);
 extern void utc_capi_base_utils_immutable_idx_cleanup(void);
+extern void utc_capi_base_utils_date_interval_startup(void);
+extern void utc_capi_base_utils_date_interval_cleanup(void);
+extern void utc_capi_base_utils_date_interval_fmt_startup(void);
+extern void utc_capi_base_utils_date_interval_fmt_cleanup(void);
+extern void utc_capi_base_utils_simple_date_fmt_startup(void);
+extern void utc_capi_base_utils_simple_date_fmt_cleanup(void);
+extern void utc_capi_base_utils_loc_disp_names_startup(void);
+extern void utc_capi_base_utils_loc_disp_names_cleanup(void);
+extern void utc_capi_base_utils_utext_startup(void);
+extern void utc_capi_base_utils_utext_cleanup(void);
+extern void utc_capi_base_utils_uscript_startup(void);
+extern void utc_capi_base_utils_uscript_cleanup(void);
+extern void utc_capi_base_utils_unumsys_startup(void);
+extern void utc_capi_base_utils_unumsys_cleanup(void);
+extern void utc_capi_base_utils_uidna_startup(void);
+extern void utc_capi_base_utils_uidna_cleanup(void);
+extern void utc_capi_base_utils_ucsdet_startup(void);
+extern void utc_capi_base_utils_ucsdet_cleanup(void);
+extern void utc_capi_base_utils_ucnvsel_startup(void);
+extern void utc_capi_base_utils_ucnvsel_cleanup(void);
 
 extern int utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p(void);
 extern int utc_capi_base_utils_i18n_ucalendar_set_default_timezone_n(void);
@@ -1091,6 +1111,56 @@ extern int utc_capi_base_utils_i18n_unormalization_normalize_p(void);
 extern int utc_capi_base_utils_i18n_unormalization_normalize_n(void);
 extern int utc_capi_base_utils_i18n_unormalization_get_instance_p(void);
 extern int utc_capi_base_utils_i18n_unormalization_get_instance_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfc_instance_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfc_instance_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfd_instance_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfd_instance_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfkc_instance_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfkc_instance_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfkc_casefold_instance_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfkc_casefold_instance_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfkd_instance_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_nfkd_instance_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_create_filtered_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_create_filtered_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_destroy_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_destroy_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_append_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_append_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_decomposition_p1(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_decomposition_p2(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_decomposition_p3(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_decomposition_n1(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_decomposition_n2(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_decomposition_n3(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p1(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p2(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p3(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p4(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p5(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p6(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n1(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n2(void);
+extern int utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n3(void);
+extern int utc_capi_base_utils_i18n_unormalization_compose_pair_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_compose_pair_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_is_normalized_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_is_normalized_n1(void);
+extern int utc_capi_base_utils_i18n_unormalization_is_normalized_n2(void);
+extern int utc_capi_base_utils_i18n_unormalization_quick_check_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_quick_check_n1(void);
+extern int utc_capi_base_utils_i18n_unormalization_quick_check_n2(void);
+extern int utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_n1(void);
+extern int utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_n2(void);
+extern int utc_capi_base_utils_i18n_unormalizer_has_boundary_before_p(void);
+extern int utc_capi_base_utils_i18n_unormalizer_has_boundary_before_n(void);
+extern int utc_capi_base_utils_i18n_unormalizer_has_boundary_after_p(void);
+extern int utc_capi_base_utils_i18n_unormalizer_has_boundary_after_n(void);
+extern int utc_capi_base_utils_i18n_unormalization_is_inert_p(void);
+extern int utc_capi_base_utils_i18n_unormalization_is_inert_n(void);
 extern int utc_capi_base_utils_i18n_usearch_create_new_p(void);
 extern int utc_capi_base_utils_i18n_usearch_create_new_n(void);
 extern int utc_capi_base_utils_i18n_usearch_destroy_p(void);
@@ -2130,6 +2200,318 @@ extern int utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_n2(void);
 extern int utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_p(void);
 extern int utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_n(void);
 extern int utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_create_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_create_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_destroy_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_destroy_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_clone_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_clone_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_clone_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_get_from_date_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_get_from_date_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_get_from_date_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_get_to_date_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_get_to_date_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_get_to_date_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_equals_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_equals_p2(void);
+extern int utc_capi_base_utils_i18n_date_interval_equals_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_equals_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_equals_n3(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_create_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_create_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_create_from_locale_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_create_from_locale_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_clone_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_clone_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_clone_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_destroy_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_destroy_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_equals_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_equals_p2(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_equals_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_equals_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_equals_n3(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n3(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n4(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_p(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n2(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n3(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n4(void);
+extern int utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n5(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n3(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n3(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n3(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n4(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_destroy_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_destroy_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_clone_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_clone_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_clone_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_equals_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_equals_p2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_equals_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_equals_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_equals_n3(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n3(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n4(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_parse_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_parse_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_parse_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_parse_n3(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_parse_n4(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_set_2digit_year_start_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_set_2digit_year_start_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_n3(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_n3(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_n(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_n2(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_set_context_p(void);
+extern int utc_capi_base_utils_i18n_simple_date_fmt_set_context_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_create_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_create_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_create_from_dialect_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_create_from_dialect_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_create_from_context_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_create_from_context_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_locale_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_locale_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_locale_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_context_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_context_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_context_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n3(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n3(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n3(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n3(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n3(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n3(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n2(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n3(void);
+extern int utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n4(void);
+extern int utc_capi_base_utils_i18n_utext_create_for_UTF8_p(void);
+extern int utc_capi_base_utils_i18n_utext_create_for_UTF8_n(void);
+extern int utc_capi_base_utils_i18n_utext_create_for_uchars_p(void);
+extern int utc_capi_base_utils_i18n_utext_create_for_uchars_n(void);
+extern int utc_capi_base_utils_i18n_utext_clone_p(void);
+extern int utc_capi_base_utils_i18n_utext_clone_n(void);
+extern int utc_capi_base_utils_i18n_utext_equals_p(void);
+extern int utc_capi_base_utils_i18n_utext_equals_n(void);
+extern int utc_capi_base_utils_i18n_utext_native_length_p(void);
+extern int utc_capi_base_utils_i18n_utext_native_length_n(void);
+extern int utc_capi_base_utils_i18n_utext_is_length_expensive_p(void);
+extern int utc_capi_base_utils_i18n_utext_is_length_expensive_n(void);
+extern int utc_capi_base_utils_i18n_utext_char32_at_p(void);
+extern int utc_capi_base_utils_i18n_utext_char32_at_n(void);
+extern int utc_capi_base_utils_i18n_utext_current32_p(void);
+extern int utc_capi_base_utils_i18n_utext_current32_n(void);
+extern int utc_capi_base_utils_i18n_utext_next32_p(void);
+extern int utc_capi_base_utils_i18n_utext_next32_n(void);
+extern int utc_capi_base_utils_i18n_utext_previous32_p(void);
+extern int utc_capi_base_utils_i18n_utext_previous32_n(void);
+extern int utc_capi_base_utils_i18n_utext_next32_from_p(void);
+extern int utc_capi_base_utils_i18n_utext_next32_from_n(void);
+extern int utc_capi_base_utils_i18n_utext_previous32_from_p(void);
+extern int utc_capi_base_utils_i18n_utext_previous32_from_n(void);
+extern int utc_capi_base_utils_i18n_utext_set_get_native_index_p(void);
+extern int utc_capi_base_utils_i18n_utext_set_native_index_n1(void);
+extern int utc_capi_base_utils_i18n_utext_set_native_index_n2(void);
+extern int utc_capi_base_utils_i18n_utext_get_native_index_n(void);
+extern int utc_capi_base_utils_i18n_utext_move_index32_p(void);
+extern int utc_capi_base_utils_i18n_utext_move_index32_n1(void);
+extern int utc_capi_base_utils_i18n_utext_move_index32_n2(void);
+extern int utc_capi_base_utils_i18n_utext_get_previous_native_index_p(void);
+extern int utc_capi_base_utils_i18n_utext_get_previous_native_index_n(void);
+extern int utc_capi_base_utils_i18n_utext_extract_p(void);
+extern int utc_capi_base_utils_i18n_utext_extract_n(void);
+extern int utc_capi_base_utils_i18n_utext_is_writable_p(void);
+extern int utc_capi_base_utils_i18n_utext_is_writable_n(void);
+extern int utc_capi_base_utils_i18n_utext_has_meta_data_p(void);
+extern int utc_capi_base_utils_i18n_utext_has_meta_data_n(void);
+extern int utc_capi_base_utils_i18n_utext_replace_n(void);
+extern int utc_capi_base_utils_i18n_utext_copy_n(void);
+extern int utc_capi_base_utils_i18n_utext_freeze_p(void);
+extern int utc_capi_base_utils_i18n_utext_freeze_n(void);
+extern int utc_capi_base_utils_i18n_uscript_get_codes_p(void);
+extern int utc_capi_base_utils_i18n_uscript_get_codes_n(void);
+extern int utc_capi_base_utils_i18n_uscript_get_name_p(void);
+extern int utc_capi_base_utils_i18n_uscript_get_name_n(void);
+extern int utc_capi_base_utils_i18n_uscript_get_short_name_p(void);
+extern int utc_capi_base_utils_i18n_uscript_get_short_name_n(void);
+extern int utc_capi_base_utils_i18n_uscript_get_script_p(void);
+extern int utc_capi_base_utils_i18n_uscript_get_script_n(void);
+extern int utc_capi_base_utils_i18n_uscript_has_script_p(void);
+extern int utc_capi_base_utils_i18n_uscript_has_script_n(void);
+extern int utc_capi_base_utils_i18n_uscript_get_script_extensions_p(void);
+extern int utc_capi_base_utils_i18n_uscript_get_script_extensions_n(void);
+extern int utc_capi_base_utils_i18n_uscript_get_sample_string_p(void);
+extern int utc_capi_base_utils_i18n_uscript_get_sample_string_n(void);
+extern int utc_capi_base_utils_i18n_uscript_get_usage_p(void);
+extern int utc_capi_base_utils_i18n_uscript_get_usage_n(void);
+extern int utc_capi_base_utils_i18n_uscript_is_right_to_left_p(void);
+extern int utc_capi_base_utils_i18n_uscript_is_right_to_left_n(void);
+extern int utc_capi_base_utils_i18n_uscript_breaks_between_letters_p(void);
+extern int utc_capi_base_utils_i18n_uscript_breaks_between_letters_n(void);
+extern int utc_capi_base_utils_i18n_uscript_is_cased_p(void);
+extern int utc_capi_base_utils_i18n_uscript_is_cased_n(void);
+extern int utc_capi_base_utils_i18n_unumsys_create_p(void);
+extern int utc_capi_base_utils_i18n_unumsys_create_n(void);
+extern int utc_capi_base_utils_i18n_unumsys_create_by_name_p(void);
+extern int utc_capi_base_utils_i18n_unumsys_create_by_name_n1(void);
+extern int utc_capi_base_utils_i18n_unumsys_create_by_name_n2(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_available_names_p(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_available_names_n(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_name_p(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_name_n(void);
+extern int utc_capi_base_utils_i18n_unumsys_is_algorithmic_p1(void);
+extern int utc_capi_base_utils_i18n_unumsys_is_algorithmic_p2(void);
+extern int utc_capi_base_utils_i18n_unumsys_is_algorithmic_n(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_radix_p(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_radix_n(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_description_p(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_description_n1(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_description_n2(void);
+extern int utc_capi_base_utils_i18n_unumsys_get_description_n3(void);
+extern int utc_capi_base_utils_i18n_uidna_label_to_ascii_p(void);
+extern int utc_capi_base_utils_i18n_uidna_label_to_ascii_n(void);
+extern int utc_capi_base_utils_i18n_uidna_label_to_unicode_p(void);
+extern int utc_capi_base_utils_i18n_uidna_label_to_unicode_n(void);
+extern int utc_capi_base_utils_i18n_uidna_name_to_ascii_p(void);
+extern int utc_capi_base_utils_i18n_uidna_name_to_ascii_n(void);
+extern int utc_capi_base_utils_i18n_uidna_name_to_unicode_p(void);
+extern int utc_capi_base_utils_i18n_uidna_name_to_unicode_n(void);
+extern int utc_capi_base_utils_i18n_uidna_label_to_ascii_UTF8_p(void);
+extern int utc_capi_base_utils_i18n_uidna_label_to_ascii_UTF8_n(void);
+extern int utc_capi_base_utils_i18n_uidna_label_to_unicode_UTF8_p(void);
+extern int utc_capi_base_utils_i18n_uidna_label_to_unicode_UTF8_n(void);
+extern int utc_capi_base_utils_i18n_uidna_name_to_ascii_UTF8_p(void);
+extern int utc_capi_base_utils_i18n_uidna_name_to_ascii_UTF8_n(void);
+extern int utc_capi_base_utils_i18n_uidna_name_to_unicode_UTF8_p(void);
+extern int utc_capi_base_utils_i18n_uidna_name_to_unicode_UTF8_n(void);
+extern int utc_capi_base_utils_i18n_uidna_info_get_is_trans_different_p(void);
+extern int utc_capi_base_utils_i18n_uidna_info_get_is_trans_different_n(void);
+extern int utc_capi_base_utils_i18n_uidna_info_get_errors_p(void);
+extern int utc_capi_base_utils_i18n_uidna_info_get_errors_n(void);
+extern int utc_capi_base_utils_i18n_uidna_info_destroy_p(void);
+extern int utc_capi_base_utils_i18n_uidna_info_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_create_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_create_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_destroy_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_text_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_text_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_all_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_all_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_name_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_name_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_confidence_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_confidence_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_language_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_language_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n3(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_destroy_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_serialize_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_serialize_n(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2(void);
 
 testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p",utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p,utc_capi_base_utils_ucalendar_startup,utc_capi_base_utils_ucalendar_cleanup},
@@ -2870,7 +3252,7 @@ testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_uchar_get_int_property_value_n",utc_capi_base_utils_i18n_uchar_get_int_property_value_n,utc_capi_base_utils_uchar_startup,utc_capi_base_utils_uchar_cleanup},
        {"utc_capi_base_utils_i18n_uchar_get_ublock_code_p",utc_capi_base_utils_i18n_uchar_get_ublock_code_p,utc_capi_base_utils_uchar_startup,utc_capi_base_utils_uchar_cleanup},
        {"utc_capi_base_utils_i18n_uchar_get_ublock_code_n",utc_capi_base_utils_i18n_uchar_get_ublock_code_n,utc_capi_base_utils_uchar_startup,utc_capi_base_utils_uchar_cleanup},
-    {"utc_capi_base_utils_i18n_uchar_has_binary_property_p", utc_capi_base_utils_i18n_uchar_has_binary_property_p, utc_capi_base_utils_uchar_startup, utc_capi_base_utils_uchar_cleanup},
+       {"utc_capi_base_utils_i18n_uchar_has_binary_property_p", utc_capi_base_utils_i18n_uchar_has_binary_property_p, utc_capi_base_utils_uchar_startup, utc_capi_base_utils_uchar_cleanup},
        {"utc_capi_base_utils_i18n_uchar_has_binary_property_p2", utc_capi_base_utils_i18n_uchar_has_binary_property_p2, utc_capi_base_utils_uchar_startup, utc_capi_base_utils_uchar_cleanup},
        {"utc_capi_base_utils_i18n_uchar_has_binary_property_n", utc_capi_base_utils_i18n_uchar_has_binary_property_n, utc_capi_base_utils_uchar_startup, utc_capi_base_utils_uchar_cleanup},
        {"utc_capi_base_utils_i18n_uchar_is_alphabetic_p", utc_capi_base_utils_i18n_uchar_is_alphabetic_p, utc_capi_base_utils_uchar_startup, utc_capi_base_utils_uchar_cleanup},
@@ -3034,7 +3416,7 @@ testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_uchar_get_fc_nfkc_closure_p", utc_capi_base_utils_i18n_uchar_get_fc_nfkc_closure_p, utc_capi_base_utils_uchar_startup, utc_capi_base_utils_uchar_cleanup},
        {"utc_capi_base_utils_i18n_uchar_get_fc_nfkc_closure_n", utc_capi_base_utils_i18n_uchar_get_fc_nfkc_closure_n, utc_capi_base_utils_uchar_startup, utc_capi_base_utils_uchar_cleanup},
        {"utc_capi_base_utils_i18n_uchar_get_fc_nfkc_closure_n2", utc_capi_base_utils_i18n_uchar_get_fc_nfkc_closure_n2, utc_capi_base_utils_uchar_startup, utc_capi_base_utils_uchar_cleanup},
-    {"utc_capi_base_utils_i18n_ucollator_create_p",utc_capi_base_utils_i18n_ucollator_create_p,utc_capi_base_utils_ucollator_startup,utc_capi_base_utils_ucollator_cleanup},
+       {"utc_capi_base_utils_i18n_ucollator_create_p",utc_capi_base_utils_i18n_ucollator_create_p,utc_capi_base_utils_ucollator_startup,utc_capi_base_utils_ucollator_cleanup},
        {"utc_capi_base_utils_i18n_ucollator_create_n",utc_capi_base_utils_i18n_ucollator_create_n,utc_capi_base_utils_ucollator_startup,utc_capi_base_utils_ucollator_cleanup},
        {"utc_capi_base_utils_i18n_ucollator_destroy_p",utc_capi_base_utils_i18n_ucollator_destroy_p,utc_capi_base_utils_ucollator_startup,utc_capi_base_utils_ucollator_cleanup},
        {"utc_capi_base_utils_i18n_ucollator_create_rules_p",utc_capi_base_utils_i18n_ucollator_create_rules_p,utc_capi_base_utils_ucollator_startup,utc_capi_base_utils_ucollator_cleanup},
@@ -3143,6 +3525,56 @@ testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_unormalization_normalize_n",utc_capi_base_utils_i18n_unormalization_normalize_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_get_instance_p",utc_capi_base_utils_i18n_unormalization_get_instance_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_get_instance_n",utc_capi_base_utils_i18n_unormalization_get_instance_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfc_instance_p",utc_capi_base_utils_i18n_unormalization_get_nfc_instance_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfc_instance_n",utc_capi_base_utils_i18n_unormalization_get_nfc_instance_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfd_instance_p",utc_capi_base_utils_i18n_unormalization_get_nfd_instance_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfd_instance_n",utc_capi_base_utils_i18n_unormalization_get_nfd_instance_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfkc_instance_p",utc_capi_base_utils_i18n_unormalization_get_nfkc_instance_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfkc_instance_n",utc_capi_base_utils_i18n_unormalization_get_nfkc_instance_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfkc_casefold_instance_p",utc_capi_base_utils_i18n_unormalization_get_nfkc_casefold_instance_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfkc_casefold_instance_n",utc_capi_base_utils_i18n_unormalization_get_nfkc_casefold_instance_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfkd_instance_p",utc_capi_base_utils_i18n_unormalization_get_nfkd_instance_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_nfkd_instance_n",utc_capi_base_utils_i18n_unormalization_get_nfkd_instance_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_create_filtered_p",utc_capi_base_utils_i18n_unormalization_create_filtered_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_create_filtered_n",utc_capi_base_utils_i18n_unormalization_create_filtered_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_destroy_p",utc_capi_base_utils_i18n_unormalization_destroy_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_destroy_n",utc_capi_base_utils_i18n_unormalization_destroy_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_append_p",utc_capi_base_utils_i18n_unormalization_append_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_append_n",utc_capi_base_utils_i18n_unormalization_append_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_decomposition_p1",utc_capi_base_utils_i18n_unormalization_get_decomposition_p1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_decomposition_p2",utc_capi_base_utils_i18n_unormalization_get_decomposition_p2,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_decomposition_p3",utc_capi_base_utils_i18n_unormalization_get_decomposition_p3,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_decomposition_n1",utc_capi_base_utils_i18n_unormalization_get_decomposition_n1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_decomposition_n2",utc_capi_base_utils_i18n_unormalization_get_decomposition_n2,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_decomposition_n3",utc_capi_base_utils_i18n_unormalization_get_decomposition_n3,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p1",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p2",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p2,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p3",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p3,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p4",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p4,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p5",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p5,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p6",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_p6,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n1",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n2",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n2,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n3",utc_capi_base_utils_i18n_unormalization_get_raw_decomposition_n3,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_compose_pair_p",utc_capi_base_utils_i18n_unormalization_compose_pair_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_compose_pair_n",utc_capi_base_utils_i18n_unormalization_compose_pair_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_is_normalized_p",utc_capi_base_utils_i18n_unormalization_is_normalized_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_is_normalized_n1",utc_capi_base_utils_i18n_unormalization_is_normalized_n1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_is_normalized_n2",utc_capi_base_utils_i18n_unormalization_is_normalized_n2,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_quick_check_p",utc_capi_base_utils_i18n_unormalization_quick_check_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_quick_check_n1",utc_capi_base_utils_i18n_unormalization_quick_check_n1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_quick_check_n2",utc_capi_base_utils_i18n_unormalization_quick_check_n2,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_p",utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_n1",utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_n1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_n2",utc_capi_base_utils_i18n_unormalization_span_quick_check_yes_n2,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalizer_has_boundary_before_p",utc_capi_base_utils_i18n_unormalizer_has_boundary_before_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalizer_has_boundary_before_n",utc_capi_base_utils_i18n_unormalizer_has_boundary_before_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalizer_has_boundary_after_p",utc_capi_base_utils_i18n_unormalizer_has_boundary_after_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalizer_has_boundary_after_n",utc_capi_base_utils_i18n_unormalizer_has_boundary_after_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_is_inert_p",utc_capi_base_utils_i18n_unormalization_is_inert_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_is_inert_n",utc_capi_base_utils_i18n_unormalization_is_inert_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_usearch_create_new_p",utc_capi_base_utils_i18n_usearch_create_new_p,utc_capi_base_utils_usearch_startup,utc_capi_base_utils_usearch_cleanup},
        {"utc_capi_base_utils_i18n_usearch_create_new_n",utc_capi_base_utils_i18n_usearch_create_new_n,utc_capi_base_utils_usearch_startup,utc_capi_base_utils_usearch_cleanup},
        {"utc_capi_base_utils_i18n_usearch_destroy_p",utc_capi_base_utils_i18n_usearch_destroy_p,utc_capi_base_utils_usearch_startup,utc_capi_base_utils_usearch_cleanup},
@@ -4182,6 +4614,318 @@ testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_p",utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_p,utc_capi_base_utils_immutable_idx_startup,utc_capi_base_utils_immutable_idx_cleanup},
        {"utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_n",utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_n,utc_capi_base_utils_immutable_idx_startup,utc_capi_base_utils_immutable_idx_cleanup},
        {"utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_n2",utc_capi_base_utils_i18n_immutable_idx_get_bucket_label_type_n2,utc_capi_base_utils_immutable_idx_startup,utc_capi_base_utils_immutable_idx_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_create_p",utc_capi_base_utils_i18n_date_interval_create_p,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_create_n",utc_capi_base_utils_i18n_date_interval_create_n,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_destroy_p",utc_capi_base_utils_i18n_date_interval_destroy_p,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_destroy_n",utc_capi_base_utils_i18n_date_interval_destroy_n,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_clone_p",utc_capi_base_utils_i18n_date_interval_clone_p,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_clone_n",utc_capi_base_utils_i18n_date_interval_clone_n,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_clone_n2",utc_capi_base_utils_i18n_date_interval_clone_n2,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_get_from_date_p",utc_capi_base_utils_i18n_date_interval_get_from_date_p,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_get_from_date_n",utc_capi_base_utils_i18n_date_interval_get_from_date_n,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_get_from_date_n2",utc_capi_base_utils_i18n_date_interval_get_from_date_n2,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_get_to_date_p",utc_capi_base_utils_i18n_date_interval_get_to_date_p,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_get_to_date_n",utc_capi_base_utils_i18n_date_interval_get_to_date_n,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_get_to_date_n2",utc_capi_base_utils_i18n_date_interval_get_to_date_n2,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_equals_p",utc_capi_base_utils_i18n_date_interval_equals_p,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_equals_p2",utc_capi_base_utils_i18n_date_interval_equals_p2,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_equals_n",utc_capi_base_utils_i18n_date_interval_equals_n,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_equals_n2",utc_capi_base_utils_i18n_date_interval_equals_n2,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_equals_n3",utc_capi_base_utils_i18n_date_interval_equals_n3,utc_capi_base_utils_date_interval_startup,utc_capi_base_utils_date_interval_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_create_p",utc_capi_base_utils_i18n_date_interval_fmt_create_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_create_n",utc_capi_base_utils_i18n_date_interval_fmt_create_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_create_from_locale_p",utc_capi_base_utils_i18n_date_interval_fmt_create_from_locale_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_create_from_locale_n",utc_capi_base_utils_i18n_date_interval_fmt_create_from_locale_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_clone_p",utc_capi_base_utils_i18n_date_interval_fmt_clone_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_clone_n",utc_capi_base_utils_i18n_date_interval_fmt_clone_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_clone_n2",utc_capi_base_utils_i18n_date_interval_fmt_clone_n2,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_destroy_p",utc_capi_base_utils_i18n_date_interval_fmt_destroy_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_destroy_n",utc_capi_base_utils_i18n_date_interval_fmt_destroy_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_equals_p",utc_capi_base_utils_i18n_date_interval_fmt_equals_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_equals_p2",utc_capi_base_utils_i18n_date_interval_fmt_equals_p2,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_equals_n",utc_capi_base_utils_i18n_date_interval_fmt_equals_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_equals_n2",utc_capi_base_utils_i18n_date_interval_fmt_equals_n2,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_equals_n3",utc_capi_base_utils_i18n_date_interval_fmt_equals_n3,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_p",utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_n",utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_n2",utc_capi_base_utils_i18n_date_interval_fmt_set_time_zone_n2,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_p",utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_n",utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_n2",utc_capi_base_utils_i18n_date_interval_fmt_get_time_zone_n2,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_p",utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_n",utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_n2",utc_capi_base_utils_i18n_date_interval_fmt_adopt_time_zone_n2,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_p",utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n",utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n2",utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n2,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n3",utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n3,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n4",utc_capi_base_utils_i18n_date_interval_fmt_format_with_date_interval_n4,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_p",utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_p,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n",utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n2",utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n2,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n3",utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n3,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n4",utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n4,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n5",utc_capi_base_utils_i18n_date_interval_fmt_format_with_calendar_n5,utc_capi_base_utils_date_interval_fmt_startup,utc_capi_base_utils_date_interval_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_p",utc_capi_base_utils_i18n_simple_date_fmt_create_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_n",utc_capi_base_utils_i18n_simple_date_fmt_create_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_p",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_n",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_n2",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_p",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n2",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n3",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_n3,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_p",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n2",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n3",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_locale_n3,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_p",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n2",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n3",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n3,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n4",utc_capi_base_utils_i18n_simple_date_fmt_create_from_pattern_override_locale_n4,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_destroy_p",utc_capi_base_utils_i18n_simple_date_fmt_destroy_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_destroy_n",utc_capi_base_utils_i18n_simple_date_fmt_destroy_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_clone_p",utc_capi_base_utils_i18n_simple_date_fmt_clone_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_clone_n",utc_capi_base_utils_i18n_simple_date_fmt_clone_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_clone_n2",utc_capi_base_utils_i18n_simple_date_fmt_clone_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_equals_p",utc_capi_base_utils_i18n_simple_date_fmt_equals_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_equals_p2",utc_capi_base_utils_i18n_simple_date_fmt_equals_p2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_equals_n",utc_capi_base_utils_i18n_simple_date_fmt_equals_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_equals_n2",utc_capi_base_utils_i18n_simple_date_fmt_equals_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_equals_n3",utc_capi_base_utils_i18n_simple_date_fmt_equals_n3,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_p",utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n",utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n2",utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n3",utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n3,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n4",utc_capi_base_utils_i18n_simple_date_fmt_format_with_field_position_n4,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_parse_p",utc_capi_base_utils_i18n_simple_date_fmt_parse_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_parse_n",utc_capi_base_utils_i18n_simple_date_fmt_parse_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_parse_n2",utc_capi_base_utils_i18n_simple_date_fmt_parse_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_parse_n3",utc_capi_base_utils_i18n_simple_date_fmt_parse_n3,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_parse_n4",utc_capi_base_utils_i18n_simple_date_fmt_parse_n4,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_set_2digit_year_start_p",utc_capi_base_utils_i18n_simple_date_fmt_set_2digit_year_start_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_set_2digit_year_start_n",utc_capi_base_utils_i18n_simple_date_fmt_set_2digit_year_start_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_p",utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_n",utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_n2",utc_capi_base_utils_i18n_simple_date_fmt_get_2digit_year_start_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_p",utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_n",utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_n3",utc_capi_base_utils_i18n_simple_date_fmt_to_pattern_n3,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_p",utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_n",utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_n3",utc_capi_base_utils_i18n_simple_date_fmt_to_localized_pattern_n3,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_p",utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_n",utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_n2",utc_capi_base_utils_i18n_simple_date_fmt_apply_pattern_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_p",utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_n",utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_n2",utc_capi_base_utils_i18n_simple_date_fmt_apply_localized_pattern_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_p",utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_n",utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_n2",utc_capi_base_utils_i18n_simple_date_fmt_adopt_calendar_n2,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_set_context_p",utc_capi_base_utils_i18n_simple_date_fmt_set_context_p,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+       {"utc_capi_base_utils_i18n_simple_date_fmt_set_context_n",utc_capi_base_utils_i18n_simple_date_fmt_set_context_n,utc_capi_base_utils_simple_date_fmt_startup,utc_capi_base_utils_simple_date_fmt_cleanup},
+    {"utc_capi_base_utils_i18n_loc_disp_names_create_p",utc_capi_base_utils_i18n_loc_disp_names_create_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_create_n",utc_capi_base_utils_i18n_loc_disp_names_create_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_create_from_dialect_p",utc_capi_base_utils_i18n_loc_disp_names_create_from_dialect_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_create_from_dialect_n",utc_capi_base_utils_i18n_loc_disp_names_create_from_dialect_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_create_from_context_p",utc_capi_base_utils_i18n_loc_disp_names_create_from_context_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_create_from_context_n",utc_capi_base_utils_i18n_loc_disp_names_create_from_context_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_locale_p",utc_capi_base_utils_i18n_loc_disp_names_get_locale_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_locale_n",utc_capi_base_utils_i18n_loc_disp_names_get_locale_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_locale_n2",utc_capi_base_utils_i18n_loc_disp_names_get_locale_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_p",utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_n",utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_n2",utc_capi_base_utils_i18n_loc_disp_names_get_dialect_handling_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_context_p",utc_capi_base_utils_i18n_loc_disp_names_get_context_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_context_n",utc_capi_base_utils_i18n_loc_disp_names_get_context_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_context_n2",utc_capi_base_utils_i18n_loc_disp_names_get_context_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_p",utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n",utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n2",utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n3",utc_capi_base_utils_i18n_loc_disp_names_get_loc_disp_name_n3,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_p",utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n",utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n2",utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n3",utc_capi_base_utils_i18n_loc_disp_names_get_language_disp_name_n3,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_p",utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n",utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n2",utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n3",utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_n3,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p",utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_n",utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_n2",utc_capi_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_p",utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n",utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n2",utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n3",utc_capi_base_utils_i18n_loc_disp_names_get_region_disp_name_n3,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_p",utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n",utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n2",utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n3",utc_capi_base_utils_i18n_loc_disp_names_get_variant_disp_name_n3,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_p",utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n",utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n2",utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n3",utc_capi_base_utils_i18n_loc_disp_names_get_key_disp_name_n3,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p",utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n",utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n2",utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n2,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n3",utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n3,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n4",utc_capi_base_utils_i18n_loc_disp_names_get_key_value_disp_name_n4,utc_capi_base_utils_loc_disp_names_startup,utc_capi_base_utils_loc_disp_names_cleanup},
+       {"utc_capi_base_utils_i18n_utext_create_for_UTF8_p",utc_capi_base_utils_i18n_utext_create_for_UTF8_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_create_for_UTF8_n",utc_capi_base_utils_i18n_utext_create_for_UTF8_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_create_for_uchars_p",utc_capi_base_utils_i18n_utext_create_for_uchars_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_create_for_uchars_n",utc_capi_base_utils_i18n_utext_create_for_uchars_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_clone_p",utc_capi_base_utils_i18n_utext_clone_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_clone_n",utc_capi_base_utils_i18n_utext_clone_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_equals_p",utc_capi_base_utils_i18n_utext_equals_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_equals_n",utc_capi_base_utils_i18n_utext_equals_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_native_length_p",utc_capi_base_utils_i18n_utext_native_length_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_native_length_n",utc_capi_base_utils_i18n_utext_native_length_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_is_length_expensive_p",utc_capi_base_utils_i18n_utext_is_length_expensive_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_is_length_expensive_n",utc_capi_base_utils_i18n_utext_is_length_expensive_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_char32_at_p",utc_capi_base_utils_i18n_utext_char32_at_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_char32_at_n",utc_capi_base_utils_i18n_utext_char32_at_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_current32_p",utc_capi_base_utils_i18n_utext_current32_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_current32_n",utc_capi_base_utils_i18n_utext_current32_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_next32_p",utc_capi_base_utils_i18n_utext_next32_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_next32_n",utc_capi_base_utils_i18n_utext_next32_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_previous32_p",utc_capi_base_utils_i18n_utext_previous32_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_previous32_n",utc_capi_base_utils_i18n_utext_previous32_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_next32_from_p",utc_capi_base_utils_i18n_utext_next32_from_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_next32_from_n",utc_capi_base_utils_i18n_utext_next32_from_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_previous32_from_p",utc_capi_base_utils_i18n_utext_previous32_from_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_previous32_from_n",utc_capi_base_utils_i18n_utext_previous32_from_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_set_get_native_index_p",utc_capi_base_utils_i18n_utext_set_get_native_index_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_set_native_index_n1",utc_capi_base_utils_i18n_utext_set_native_index_n1,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_set_native_index_n2",utc_capi_base_utils_i18n_utext_set_native_index_n2,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_get_native_index_n",utc_capi_base_utils_i18n_utext_get_native_index_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_move_index32_p",utc_capi_base_utils_i18n_utext_move_index32_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_move_index32_n1",utc_capi_base_utils_i18n_utext_move_index32_n1,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_move_index32_n2",utc_capi_base_utils_i18n_utext_move_index32_n2,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_get_previous_native_index_p",utc_capi_base_utils_i18n_utext_get_previous_native_index_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_get_previous_native_index_n",utc_capi_base_utils_i18n_utext_get_previous_native_index_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_extract_p",utc_capi_base_utils_i18n_utext_extract_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_extract_n",utc_capi_base_utils_i18n_utext_extract_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_is_writable_p",utc_capi_base_utils_i18n_utext_is_writable_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_is_writable_n",utc_capi_base_utils_i18n_utext_is_writable_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_has_meta_data_p",utc_capi_base_utils_i18n_utext_has_meta_data_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_has_meta_data_n",utc_capi_base_utils_i18n_utext_has_meta_data_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_replace_n",utc_capi_base_utils_i18n_utext_replace_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_copy_n",utc_capi_base_utils_i18n_utext_copy_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_freeze_p",utc_capi_base_utils_i18n_utext_freeze_p,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_utext_freeze_n",utc_capi_base_utils_i18n_utext_freeze_n,utc_capi_base_utils_utext_startup,utc_capi_base_utils_utext_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_codes_p",utc_capi_base_utils_i18n_uscript_get_codes_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_codes_n",utc_capi_base_utils_i18n_uscript_get_codes_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_name_p",utc_capi_base_utils_i18n_uscript_get_name_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_name_n",utc_capi_base_utils_i18n_uscript_get_name_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_short_name_p",utc_capi_base_utils_i18n_uscript_get_short_name_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_short_name_n",utc_capi_base_utils_i18n_uscript_get_short_name_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_script_p",utc_capi_base_utils_i18n_uscript_get_script_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_script_n",utc_capi_base_utils_i18n_uscript_get_script_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_has_script_p",utc_capi_base_utils_i18n_uscript_has_script_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_has_script_n",utc_capi_base_utils_i18n_uscript_has_script_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_script_extensions_p",utc_capi_base_utils_i18n_uscript_get_script_extensions_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_script_extensions_n",utc_capi_base_utils_i18n_uscript_get_script_extensions_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_sample_string_p",utc_capi_base_utils_i18n_uscript_get_sample_string_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_sample_string_n",utc_capi_base_utils_i18n_uscript_get_sample_string_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_usage_p",utc_capi_base_utils_i18n_uscript_get_usage_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_get_usage_n",utc_capi_base_utils_i18n_uscript_get_usage_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_is_right_to_left_p",utc_capi_base_utils_i18n_uscript_is_right_to_left_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_is_right_to_left_n",utc_capi_base_utils_i18n_uscript_is_right_to_left_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_breaks_between_letters_p",utc_capi_base_utils_i18n_uscript_breaks_between_letters_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_breaks_between_letters_n",utc_capi_base_utils_i18n_uscript_breaks_between_letters_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_is_cased_p",utc_capi_base_utils_i18n_uscript_is_cased_p,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_uscript_is_cased_n",utc_capi_base_utils_i18n_uscript_is_cased_n,utc_capi_base_utils_uscript_startup,utc_capi_base_utils_uscript_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_create_p",utc_capi_base_utils_i18n_unumsys_create_p,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_create_n",utc_capi_base_utils_i18n_unumsys_create_n,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_create_by_name_p",utc_capi_base_utils_i18n_unumsys_create_by_name_p,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_create_by_name_n1",utc_capi_base_utils_i18n_unumsys_create_by_name_n1,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_create_by_name_n2",utc_capi_base_utils_i18n_unumsys_create_by_name_n2,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_is_algorithmic_p1",utc_capi_base_utils_i18n_unumsys_is_algorithmic_p1,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_is_algorithmic_p2",utc_capi_base_utils_i18n_unumsys_is_algorithmic_p2,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_is_algorithmic_n",utc_capi_base_utils_i18n_unumsys_is_algorithmic_n,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_available_names_p",utc_capi_base_utils_i18n_unumsys_get_available_names_p,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_available_names_n",utc_capi_base_utils_i18n_unumsys_get_available_names_n,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_name_p",utc_capi_base_utils_i18n_unumsys_get_name_p,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_name_n",utc_capi_base_utils_i18n_unumsys_get_name_n,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_radix_p",utc_capi_base_utils_i18n_unumsys_get_radix_p,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_radix_n",utc_capi_base_utils_i18n_unumsys_get_radix_n,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_description_p",utc_capi_base_utils_i18n_unumsys_get_description_p,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_description_n1",utc_capi_base_utils_i18n_unumsys_get_description_n1,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_description_n2",utc_capi_base_utils_i18n_unumsys_get_description_n2,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_unumsys_get_description_n3",utc_capi_base_utils_i18n_unumsys_get_description_n3,utc_capi_base_utils_unumsys_startup,utc_capi_base_utils_unumsys_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_label_to_ascii_p",utc_capi_base_utils_i18n_uidna_label_to_ascii_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_label_to_ascii_n",utc_capi_base_utils_i18n_uidna_label_to_ascii_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_label_to_unicode_p",utc_capi_base_utils_i18n_uidna_label_to_unicode_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_label_to_unicode_n",utc_capi_base_utils_i18n_uidna_label_to_unicode_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_name_to_ascii_p",utc_capi_base_utils_i18n_uidna_name_to_ascii_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_name_to_ascii_n",utc_capi_base_utils_i18n_uidna_name_to_ascii_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_name_to_unicode_p",utc_capi_base_utils_i18n_uidna_name_to_unicode_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_name_to_unicode_n",utc_capi_base_utils_i18n_uidna_name_to_unicode_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_label_to_ascii_UTF8_p",utc_capi_base_utils_i18n_uidna_label_to_ascii_UTF8_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_label_to_ascii_UTF8_n",utc_capi_base_utils_i18n_uidna_label_to_ascii_UTF8_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_label_to_unicode_UTF8_p",utc_capi_base_utils_i18n_uidna_label_to_unicode_UTF8_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_label_to_unicode_UTF8_n",utc_capi_base_utils_i18n_uidna_label_to_unicode_UTF8_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_name_to_ascii_UTF8_p",utc_capi_base_utils_i18n_uidna_name_to_ascii_UTF8_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_name_to_ascii_UTF8_n",utc_capi_base_utils_i18n_uidna_name_to_ascii_UTF8_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_name_to_unicode_UTF8_p",utc_capi_base_utils_i18n_uidna_name_to_unicode_UTF8_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_name_to_unicode_UTF8_n",utc_capi_base_utils_i18n_uidna_name_to_unicode_UTF8_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_info_get_is_trans_different_p",utc_capi_base_utils_i18n_uidna_info_get_is_trans_different_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_info_get_is_trans_different_n",utc_capi_base_utils_i18n_uidna_info_get_is_trans_different_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_info_get_errors_p",utc_capi_base_utils_i18n_uidna_info_get_errors_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_info_get_errors_n",utc_capi_base_utils_i18n_uidna_info_get_errors_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_info_destroy_p",utc_capi_base_utils_i18n_uidna_info_destroy_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_uidna_info_destroy_n",utc_capi_base_utils_i18n_uidna_info_destroy_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_create_p",utc_capi_base_utils_i18n_ucsdet_create_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_create_n",utc_capi_base_utils_i18n_ucsdet_create_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_destroy_p",utc_capi_base_utils_i18n_ucsdet_destroy_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_destroy_n",utc_capi_base_utils_i18n_ucsdet_destroy_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_text_p",utc_capi_base_utils_i18n_ucsdet_set_text_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_text_n",utc_capi_base_utils_i18n_ucsdet_set_text_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_p",utc_capi_base_utils_i18n_ucsdet_detect_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_n1",utc_capi_base_utils_i18n_ucsdet_detect_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_n2",utc_capi_base_utils_i18n_ucsdet_detect_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_all_p",utc_capi_base_utils_i18n_ucsdet_detect_all_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_all_n",utc_capi_base_utils_i18n_ucsdet_detect_all_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_name_p",utc_capi_base_utils_i18n_ucsdet_get_name_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_name_n",utc_capi_base_utils_i18n_ucsdet_get_name_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_confidence_p",utc_capi_base_utils_i18n_ucsdet_get_confidence_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_confidence_n",utc_capi_base_utils_i18n_ucsdet_get_confidence_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_language_p",utc_capi_base_utils_i18n_ucsdet_get_language_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_language_n",utc_capi_base_utils_i18n_ucsdet_get_language_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_p",utc_capi_base_utils_i18n_ucsdet_get_uchars_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n1",utc_capi_base_utils_i18n_ucsdet_get_uchars_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n2",utc_capi_base_utils_i18n_ucsdet_get_uchars_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n3",utc_capi_base_utils_i18n_ucsdet_get_uchars_n3,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p",utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n",utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_p",utc_capi_base_utils_i18n_ucnvsel_create_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_n1",utc_capi_base_utils_i18n_ucnvsel_create_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_n2",utc_capi_base_utils_i18n_ucnvsel_create_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_destroy_p",utc_capi_base_utils_i18n_ucnvsel_destroy_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_destroy_n",utc_capi_base_utils_i18n_ucnvsel_destroy_n,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_serialize_p",utc_capi_base_utils_i18n_ucnvsel_serialize_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_serialize_n",utc_capi_base_utils_i18n_ucnvsel_serialize_n,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_p",utc_capi_base_utils_i18n_ucnvsel_select_for_string_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1",utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2",utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
        {NULL, NULL}
 };
 
similarity index 98%
rename from unittest/tct-base-utils-core_wearable.h
rename to tests/tct-base-utils-core_wearable.h
index d291038..8fe689e 100644 (file)
@@ -95,6 +95,10 @@ extern void utc_capi_base_utils_unumsys_startup(void);
 extern void utc_capi_base_utils_unumsys_cleanup(void);
 extern void utc_capi_base_utils_uidna_startup(void);
 extern void utc_capi_base_utils_uidna_cleanup(void);
+extern void utc_capi_base_utils_ucsdet_startup(void);
+extern void utc_capi_base_utils_ucsdet_cleanup(void);
+extern void utc_capi_base_utils_ucnvsel_startup(void);
+extern void utc_capi_base_utils_ucnvsel_cleanup(void);
 
 extern int utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p(void);
 extern int utc_capi_base_utils_i18n_ucalendar_set_default_timezone_n(void);
@@ -2460,6 +2464,54 @@ extern int utc_capi_base_utils_i18n_uidna_info_get_errors_p(void);
 extern int utc_capi_base_utils_i18n_uidna_info_get_errors_n(void);
 extern int utc_capi_base_utils_i18n_uidna_info_destroy_p(void);
 extern int utc_capi_base_utils_i18n_uidna_info_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_create_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_create_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_destroy_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_text_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_text_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_all_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_detect_all_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_name_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_name_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_confidence_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_confidence_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_language_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_language_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_uchars_n3(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1(void);
+extern int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_destroy_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_destroy_n(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_serialize_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_serialize_n(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1(void);
+extern int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2(void);
 
 testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p",utc_capi_base_utils_i18n_ucalendar_set_default_timezone_p,utc_capi_base_utils_ucalendar_startup,utc_capi_base_utils_ucalendar_cleanup},
@@ -3487,8 +3539,8 @@ testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_unormalization_create_filtered_n",utc_capi_base_utils_i18n_unormalization_create_filtered_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_destroy_p",utc_capi_base_utils_i18n_unormalization_destroy_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_destroy_n",utc_capi_base_utils_i18n_unormalization_destroy_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
-       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p ,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
-       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n ,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
+       {"utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n",utc_capi_base_utils_i18n_unormalization_normalize_second_and_append_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_append_p",utc_capi_base_utils_i18n_unormalization_append_p,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_append_n",utc_capi_base_utils_i18n_unormalization_append_n,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
        {"utc_capi_base_utils_i18n_unormalization_get_decomposition_p1",utc_capi_base_utils_i18n_unormalization_get_decomposition_p1,utc_capi_base_utils_unormalization_startup,utc_capi_base_utils_unormalization_cleanup},
@@ -4826,6 +4878,54 @@ testcase tc_array[] = {
        {"utc_capi_base_utils_i18n_uidna_info_get_errors_n",utc_capi_base_utils_i18n_uidna_info_get_errors_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
        {"utc_capi_base_utils_i18n_uidna_info_destroy_p",utc_capi_base_utils_i18n_uidna_info_destroy_p,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
        {"utc_capi_base_utils_i18n_uidna_info_destroy_n",utc_capi_base_utils_i18n_uidna_info_destroy_n,utc_capi_base_utils_uidna_startup,utc_capi_base_utils_uidna_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_create_p",utc_capi_base_utils_i18n_ucsdet_create_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_create_n",utc_capi_base_utils_i18n_ucsdet_create_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_destroy_p",utc_capi_base_utils_i18n_ucsdet_destroy_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_destroy_n",utc_capi_base_utils_i18n_ucsdet_destroy_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_text_p",utc_capi_base_utils_i18n_ucsdet_set_text_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_text_n",utc_capi_base_utils_i18n_ucsdet_set_text_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2",utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_p",utc_capi_base_utils_i18n_ucsdet_detect_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_n1",utc_capi_base_utils_i18n_ucsdet_detect_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_n2",utc_capi_base_utils_i18n_ucsdet_detect_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_all_p",utc_capi_base_utils_i18n_ucsdet_detect_all_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_detect_all_n",utc_capi_base_utils_i18n_ucsdet_detect_all_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_name_p",utc_capi_base_utils_i18n_ucsdet_get_name_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_name_n",utc_capi_base_utils_i18n_ucsdet_get_name_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_confidence_p",utc_capi_base_utils_i18n_ucsdet_get_confidence_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_confidence_n",utc_capi_base_utils_i18n_ucsdet_get_confidence_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_language_p",utc_capi_base_utils_i18n_ucsdet_get_language_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_language_n",utc_capi_base_utils_i18n_ucsdet_get_language_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_p",utc_capi_base_utils_i18n_ucsdet_get_uchars_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n1",utc_capi_base_utils_i18n_ucsdet_get_uchars_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n2",utc_capi_base_utils_i18n_ucsdet_get_uchars_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_uchars_n3",utc_capi_base_utils_i18n_ucsdet_get_uchars_n3,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p",utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n",utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2",utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2",utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2,utc_capi_base_utils_ucsdet_startup,utc_capi_base_utils_ucsdet_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_p",utc_capi_base_utils_i18n_ucnvsel_create_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_n1",utc_capi_base_utils_i18n_ucnvsel_create_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_n2",utc_capi_base_utils_i18n_ucnvsel_create_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_destroy_p",utc_capi_base_utils_i18n_ucnvsel_destroy_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_destroy_n",utc_capi_base_utils_i18n_ucnvsel_destroy_n,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2",utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_serialize_p",utc_capi_base_utils_i18n_ucnvsel_serialize_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_serialize_n",utc_capi_base_utils_i18n_ucnvsel_serialize_n,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_p",utc_capi_base_utils_i18n_ucnvsel_select_for_string_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1",utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2",utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
+       {"utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2",utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2,utc_capi_base_utils_ucnvsel_startup,utc_capi_base_utils_ucnvsel_cleanup},
        {NULL, NULL}
 };
 
diff --git a/tests/utc-capi-base-utils-ucnvsel.c b/tests/utc-capi-base-utils-ucnvsel.c
new file mode 100644 (file)
index 0000000..a5d930e
--- /dev/null
@@ -0,0 +1,386 @@
+#include "assert_local.h"
+#include <utils_i18n.h>
+#include <string.h>
+
+#define I18N_UPRV_LENGTHOF(array) (int32_t)(sizeof(array)/sizeof((array)[0]))
+
+static int ret = I18N_ERROR_NONE;
+static int i;
+static i18n_uconverter_selector_h g_sel;
+
+/**
+ * @function        utc_capi_base_utils_ucnvsel_startup
+ * @description     Called before each test
+ * @parameter       NA
+ * @return          NA
+ */
+void utc_capi_base_utils_ucnvsel_startup(void)
+{
+}
+
+/**
+ * @function        utc_capi_base_utils_ucnvsel_cleanup
+ * @description     Called after each test
+ * @parameter       NA
+ * @return          NA
+ */
+void utc_capi_base_utils_ucnvsel_cleanup(void)
+{
+}
+
+static const char **g_available_names = NULL;
+static int32_t g_count_available = 0;
+
+static const char ** get_encodings(int32_t start, int32_t step, int32_t count, int32_t *pCount)
+{
+       const char **names;
+       int32_t i;
+
+       *pCount = 0;
+       if (count <= 0) {
+               return NULL;
+       }
+       names = (const char **)malloc(count * sizeof(char *));
+       if (names == NULL) return NULL;
+
+       if (step == 0 && count > 0)
+               step = 1;
+
+       return names;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_create_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_create and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_create_p(void)
+{
+       int32_t num_encodings;
+       const char **encodings = get_encodings(1, 0, 1, &num_encodings);
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(encodings, num_encodings, excluded_set, I18N_UCNV_ROUNDTRIP_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       free(encodings);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_create_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_create and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_create_n1(void)
+{
+       int32_t num_encodings;
+       const char **encodings = get_encodings(1, 0, 1, &num_encodings);
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(encodings, -1, excluded_set, I18N_UCNV_ROUNDTRIP_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       free(encodings);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_create_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_create and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_create_n2(void)
+{
+       int32_t num_encodings;
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(NULL, 1, excluded_set, I18N_UCNV_ROUNDTRIP_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_destroy_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_destroy and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_destroy_p(void)
+{
+       int32_t num_encodings;
+       const char **encodings = get_encodings(1, 0, 1, &num_encodings);
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(encodings, num_encodings, excluded_set, I18N_UCNV_ROUNDTRIP_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_destroy(g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       free(encodings);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_destroy_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_destroy and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_destroy_n(void)
+{
+       ret = i18n_ucnvsel_destroy(NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_create_from_serialized and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_p(void)
+{
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(NULL, 0, excluded_set, I18N_UCNV_ROUNDTRIP_AND_FALLBACK_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       int32_t ser_len, ser_len2;
+       char *new_buffer;
+
+       ret = i18n_ucnvsel_serialize(g_sel, NULL, 0, &ser_len);
+       assert_eq(ret, I18N_ERROR_BUFFER_OVERFLOW);
+
+       new_buffer = (char *)malloc(ser_len);
+       ret = i18n_ucnvsel_serialize(g_sel, new_buffer, ser_len, &ser_len2);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_destroy(g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create_from_serialized(new_buffer, ser_len, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       free(new_buffer);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_create_from_serialized and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n1(void)
+{
+       char *new_buffer = NULL;
+
+       ret = i18n_ucnvsel_create_from_serialized(new_buffer, 10, &g_sel);
+       assert_eq(ret, I18N_ERROR_OUT_OF_MEMORY);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_create_from_serialized and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_create_from_serialized_n2(void)
+{
+       char *new_buffer = NULL;
+
+       ret = i18n_ucnvsel_create_from_serialized(new_buffer, -1, &g_sel);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_serialize_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_serialize and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_serialize_p(void)
+{
+       char *new_buffer;
+       int32_t len, len2;
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(NULL, 0, excluded_set, I18N_UCNV_ROUNDTRIP_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_serialize(g_sel, NULL, 0, &len);
+       assert_eq(ret, I18N_ERROR_BUFFER_OVERFLOW);
+
+       new_buffer = (char *)malloc(sizeof(char) * len);
+       ret = i18n_ucnvsel_serialize(g_sel, new_buffer, len, &len2);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       free(new_buffer);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_serialize_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_serialize and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_serialize_n(void)
+{
+       char *new_buffer = NULL;
+       int32_t len;
+
+       ret = i18n_ucnvsel_serialize(g_sel, new_buffer, -1, &len);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_select_for_string_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_select_for_string and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_select_for_string_p(void)
+{
+       i18n_uenumeration_h enumeration;
+       const char *char_str = "Hello World!";
+       const i18n_uchar string[20] = {0,};
+       int32_t len;
+       i18n_error_code_e status;
+
+       i18n_ustring_from_UTF8((i18n_uchar *)string, I18N_UPRV_LENGTHOF(string), &len, char_str, 5, &status);
+       assert_eq(status, I18N_ERROR_NONE);
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(NULL, 0, excluded_set, I18N_UCNV_ROUNDTRIP_AND_FALLBACK_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_select_for_string(g_sel, string, len, &enumeration);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_select_for_string and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_select_for_string_n1(void)
+{
+       i18n_uenumeration_h enumeration;
+       const i18n_uchar *string;
+
+       ret = i18n_ucnvsel_select_for_string(NULL, string, 1, &enumeration);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_select_for_string and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_select_for_string_n2(void)
+{
+       i18n_uenumeration_h enumeration;
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(NULL, 0, excluded_set, I18N_UCNV_ROUNDTRIP_AND_FALLBACK_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_select_for_string(g_sel, NULL, 1, &enumeration);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_select_for_utf8 and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_p(void)
+{
+       i18n_uenumeration_h enumeration;
+       const char *string = "Hello world!";
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(NULL, 0, excluded_set, I18N_UCNV_ROUNDTRIP_AND_FALLBACK_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_select_for_utf8(g_sel, string, 5, &enumeration);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_select_for_utf8 and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n1(void)
+{
+       i18n_uenumeration_h enumeration;
+       const char *string;
+
+       ret = i18n_ucnvsel_select_for_utf8(NULL, string, 1, &enumeration);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucnvsel_select_for_utf8 and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucnvsel_select_for_utf8_n2(void)
+{
+       i18n_uenumeration_h enumeration;
+
+       i18n_uset_h excluded_set = NULL;
+       ret = i18n_uset_create_empty(&excluded_set);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_create(NULL, 0, excluded_set, I18N_UCNV_ROUNDTRIP_AND_FALLBACK_SET, &g_sel);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucnvsel_select_for_utf8(g_sel, NULL, 1, &enumeration);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
diff --git a/tests/utc-capi-base-utils-ucsdet.c b/tests/utc-capi-base-utils-ucsdet.c
new file mode 100644 (file)
index 0000000..58e2c31
--- /dev/null
@@ -0,0 +1,861 @@
+#include "assert_local.h"
+#include <utils_i18n.h>
+#include <string.h>
+
+#define I18N_UPRV_LENGTHOF(array) (int32_t)(sizeof(array)/sizeof((array)[0]))
+
+static int32_t preflight(const i18n_uchar *src, int32_t length, i18n_ucnv_h cnv);
+static char *extract_bytes(const i18n_uchar *src, int32_t length, const char *codepage, int32_t *byte_length);
+
+static int ret = I18N_ERROR_NONE;
+static int i;
+i18n_ucharset_detector_h ucsd;
+
+/**
+ * @function        utc_capi_base_utils_ucsdet_startup
+ * @description     Called before each test
+ * @parameter       NA
+ * @return          NA
+ */
+void utc_capi_base_utils_ucsdet_startup(void)
+{
+}
+
+/**
+ * @function        utc_capi_base_utils_ucsdet_cleanup
+ * @description     Called after each test
+ * @parameter       NA
+ * @return          NA
+ */
+void utc_capi_base_utils_ucsdet_cleanup(void)
+{
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_create_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_create and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_create_p(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       if(ucsd != NULL)
+               i18n_ucsdet_destroy(ucsd);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_create_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_create and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_create_n(void)
+{
+       ret = i18n_ucsdet_create(NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_destroy_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_destroy and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_destroy_p(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       if(ucsd != NULL) {
+               ret = i18n_ucsdet_destroy(ucsd);
+               assert_eq(ret, I18N_ERROR_NONE);
+       }
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_destroy_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_destroy and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_destroy_n(void)
+{
+       ret = i18n_ucsdet_destroy(NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_set_text_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_set_text and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_set_text_p(void)
+{
+       static const char ss[] = "This is a string with some non-ascii characters that will "
+               "be converted to UTF-8, then showed through the detection process.  "
+               "\\u0391\\u0392\\u0393\\u0394\\u0395"
+               "Sure would be nice if our source could contain Unicode directly!";
+
+       int32_t byte_length = 0, s_length = 0, d_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+
+       bytes = extract_bytes(s, s_length, "UTF-8", &byte_length);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_set_text_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_set_text and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_set_text_n(void)
+{
+       ret = i18n_ucsdet_set_text(NULL, NULL, NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_set_declared_encoding and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_p(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_set_declared_encoding(ucsd, "ISO-2022-JP", -1);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       if(ucsd != NULL)
+               i18n_ucsdet_destroy(ucsd);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_set_declared_encoding and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n1(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_set_declared_encoding(NULL, "ISO-2022-JP", -1);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_set_declared_encoding and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_set_declared_encoding_n2(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_set_declared_encoding(ucsd, NULL, -1);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_detect_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_detect and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_detect_p(void)
+{
+       static const char ss[] = "This is a string with some non-ascii characters that will "
+               "be converted to UTF-8, then showed through the detection process.  "
+               "\\u0391\\u0392\\u0393\\u0394\\u0395"
+               "Sure would be nice if our source could contain Unicode directly!";
+
+       int32_t byte_length = 0, s_length = 0, d_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+
+       bytes = extract_bytes(s, s_length, "UTF-8", &byte_length);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h ucsm;
+       ret = i18n_ucsdet_detect(ucsd, &ucsm);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       free(bytes);
+       return 0;
+}
+
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_detect_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_detect and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_detect_n1(void)
+{
+       int32_t matches_found = 0;
+       i18n_ucharset_match_h ucsm = NULL;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_detect(NULL, &ucsm);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_detect_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_detect and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_detect_n2(void)
+{
+       int32_t matches_found = 0;
+       i18n_ucharset_match_h ucsm = NULL;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_detect(ucsd, NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_detect_all_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_detect_all and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_detect_all_p(void)
+{
+       static const char ss[] = "<a> <lot> <of> <English> <inside> <the> <markup> Un tr\\u00E8s petit peu de Fran\\u00E7ais. <to> <confuse> <the> <detector>";
+       int32_t s_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       int32_t byte_length = 0;
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       const char *lang, *name;
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+       bytes = extract_bytes(s, s_length, "ISO-8859-1", &byte_length);
+
+       i18n_ubool result;
+       ret = i18n_ucsdet_enable_input_filter(ucsd, true, &result);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_is_input_filter_enabled(ucsd, &result);
+       assert_eq(result, true);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h *ucsms;
+       int32_t matches_found = 0;
+       ret = i18n_ucsdet_detect_all(ucsd, &matches_found, &ucsms);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_detect_all_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_detect_all and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_detect_all_n(void)
+{
+       int32_t matches_found = 0;
+       i18n_ucharset_match_h *ucsm = NULL;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_detect_all(NULL, &matches_found, &ucsm);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_name_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_name and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_name_p(void)
+{
+       static const char ss[] = "<a> <lot> <of> <English> <inside> <the> <markup> Un tr\\u00E8s petit peu de Fran\\u00E7ais. <to> <confuse> <the> <detector>";
+       int32_t s_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       int32_t byte_length = 0;
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       const char *lang, *name;
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+       bytes = extract_bytes(s, s_length, "ISO-8859-1", &byte_length);
+
+       i18n_ubool result;
+       ret = i18n_ucsdet_enable_input_filter(ucsd, true, &result);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_is_input_filter_enabled(ucsd, &result);
+       assert_eq(result, true);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h *ucsms;
+       int32_t matches_found = 0;
+       ret = i18n_ucsdet_detect_all(ucsd, &matches_found, &ucsms);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       for(int i = 0; i<matches_found; ++i) {
+               i18n_ucharset_match_h ucsm;
+               ret = i18n_ucsdet_detect(ucsd, &ucsm);
+               assert_neq(ucsm, NULL);
+               assert_eq(ret, I18N_ERROR_NONE);
+
+               ret = i18n_ucsdet_get_name(ucsm, &name);
+               assert_eq(ret, I18N_ERROR_NONE);
+               assert_neq(name, NULL);
+               assert_eq(strcmp(name, "ISO-8859-1"), 0);
+       }
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_name_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_name and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_name_n(void)
+{
+       const char *name;
+
+       ret = i18n_ucsdet_get_name(NULL, &name);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_confidence_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_confidence and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_confidence_p(void)
+{
+       static const char ss[] = "<a> <lot> <of> <English> <inside> <the> <markup> Un tr\\u00E8s petit peu de Fran\\u00E7ais. <to> <confuse> <the> <detector>";
+       int32_t s_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       int32_t byte_length = 0;
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       const char *lang, *name;
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+       bytes = extract_bytes(s, s_length, "ISO-8859-1", &byte_length);
+
+       i18n_ubool result;
+       ret = i18n_ucsdet_enable_input_filter(ucsd, true, &result);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_is_input_filter_enabled(ucsd, &result);
+       assert_eq(result, true);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h *ucsms;
+       int32_t matches_found = 0;
+       ret = i18n_ucsdet_detect_all(ucsd, &matches_found, &ucsms);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       for(int i = 0; i<matches_found; ++i) {
+               i18n_ucharset_match_h ucsm;
+               ret = i18n_ucsdet_detect(ucsd, &ucsm);
+               assert_neq(ucsm, NULL);
+               assert_eq(ret, I18N_ERROR_NONE);
+
+               int32_t number;
+               ret = i18n_ucsdet_get_confidence(ucsm, &number);
+               assert_eq(ret, I18N_ERROR_NONE);
+               assert_eq(number, 56);
+       }
+
+       if(ucsd != NULL)
+               i18n_ucsdet_destroy(ucsd);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_confidence_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_confidence and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_confidence_n(void)
+{
+       int32_t number;
+       ret = i18n_ucsdet_get_confidence(NULL, &number);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_language_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_language and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_language_p(void)
+{
+       static const char ss[] = "<a> <lot> <of> <English> <inside> <the> <markup> Un tr\\u00E8s petit peu de Fran\\u00E7ais. <to> <confuse> <the> <detector>";
+       int32_t s_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       int32_t byte_length = 0;
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       const char *lang, *name;
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+       bytes = extract_bytes(s, s_length, "ISO-8859-1", &byte_length);
+
+       i18n_ubool result;
+       ret = i18n_ucsdet_enable_input_filter(ucsd, true, &result);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_is_input_filter_enabled(ucsd, &result);
+       assert_eq(result, true);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h *ucsms;
+       int32_t matches_found = 0;
+       ret = i18n_ucsdet_detect_all(ucsd, &matches_found, &ucsms);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       for(int i = 0; i<matches_found; ++i) {
+               i18n_ucharset_match_h ucsm;
+               ret = i18n_ucsdet_detect(ucsd, &ucsm);
+               assert_neq(ucsm, NULL);
+               assert_eq(ret, I18N_ERROR_NONE);
+
+               ret = i18n_ucsdet_get_language(ucsm, &lang);
+               assert_eq(ret, I18N_ERROR_NONE);
+               assert_neq(lang, NULL);
+               assert_eq(strcmp(lang, "fr"), 0);
+       }
+
+       if(ucsd != NULL)
+               i18n_ucsdet_destroy(ucsd);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_language_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_language and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_language_n(void)
+{
+       const char *name;
+
+       ret = i18n_ucsdet_get_name(NULL, &name);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_uchars_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_uchars and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_uchars_p(void)
+{
+       static const char ss[] = "This is a string with some non-ascii characters that will "
+               "be converted to UTF-8, then showed through the detection process.  "
+               "\\u0391\\u0392\\u0393\\u0394\\u0395"
+               "Sure would be nice if our source could contain Unicode directly!";
+
+       int32_t byte_length = 0, s_length = 0, d_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+
+       bytes = extract_bytes(s, s_length, "UTF-8", &byte_length);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h ucsm;
+       ret = i18n_ucsdet_detect(ucsd, &ucsm);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_uchar detected[sizeof(ss)];
+       ret = i18n_ucsdet_get_uchars(ucsm, detected, s_length, &d_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       if(ucsd != NULL)
+               i18n_ucsdet_destroy(ucsd);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_uchars_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_uchars and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_uchars_n1(void)
+{
+       static const char ss[] = "This is a string with some non-ascii characters that will "
+               "be converted to UTF-8, then showed through the detection process.  "
+               "\\u0391\\u0392\\u0393\\u0394\\u0395"
+               "Sure would be nice if our source could contain Unicode directly!";
+
+       int32_t byte_length = 0, s_length = 0, d_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+
+       bytes = extract_bytes(s, s_length, "UTF-8", &byte_length);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h ucsm;
+       ret = i18n_ucsdet_detect(ucsd, &ucsm);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_uchar detected[sizeof(ss)];
+       ret = i18n_ucsdet_get_uchars(NULL, detected, s_length, &d_length);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_uchars_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_uchars and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_uchars_n2(void)
+{
+       static const char ss[] = "This is a string with some non-ascii characters that will "
+               "be converted to UTF-8, then showed through the detection process.  "
+               "\\u0391\\u0392\\u0393\\u0394\\u0395"
+               "Sure would be nice if our source could contain Unicode directly!";
+
+       int32_t byte_length = 0, s_length = 0, d_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+
+       bytes = extract_bytes(s, s_length, "UTF-8", &byte_length);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h ucsm;
+       ret = i18n_ucsdet_detect(ucsd, &ucsm);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_get_uchars(ucsm, NULL, s_length, &d_length);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_uchars_n3
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_uchars and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_uchars_n3(void)
+{
+       static const char ss[] = "This is a string with some non-ascii characters that will "
+               "be converted to UTF-8, then showed through the detection process.  "
+               "\\u0391\\u0392\\u0393\\u0394\\u0395"
+               "Sure would be nice if our source could contain Unicode directly!";
+
+       int32_t byte_length = 0, s_length = 0, d_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+
+       bytes = extract_bytes(s, s_length, "UTF-8", &byte_length);
+
+       ret = i18n_ucsdet_set_text(ucsd, bytes, byte_length);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_ucharset_match_h ucsm;
+       ret = i18n_ucsdet_detect(ucsd, &ucsm);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_uchar detected[sizeof(ss)];
+       ret = i18n_ucsdet_get_uchars(ucsm, detected, -2, &d_length);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_all_detectable_charsets and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_p(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       i18n_uenumeration_h iterator;
+       ret = i18n_ucsdet_get_all_detectable_charsets(ucsd, &iterator);
+       assert_eq(ret, I18N_ERROR_NONE);
+       assert_neq(iterator, 0);
+
+       if(ucsd != NULL)
+               i18n_ucsdet_destroy(ucsd);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_get_all_detectable_charsets and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_get_all_detectable_charsets_n(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_get_all_detectable_charsets(ucsd, NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_is_input_filter_enabled and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_p(void)
+{
+       static const char ss[] = "<a> <lot> <of> <English> <inside> <the> <markup> Un tr\\u00E8s petit peu de Fran\\u00E7ais. <to> <confuse> <the> <detector>";
+       int32_t s_length = 0;
+       i18n_uchar s[sizeof(ss)];
+       int32_t byte_length = 0;
+       char *bytes;
+
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       const char *lang, *name;
+       s_length = i18n_ustring_unescape(ss, s, sizeof(ss));
+       bytes = extract_bytes(s, s_length, "ISO-8859-1", &byte_length);
+
+       i18n_ubool result;
+       ret = i18n_ucsdet_enable_input_filter(ucsd, true, &result);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_is_input_filter_enabled(ucsd, &result);
+       assert_eq(result, true);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       free(bytes);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_is_input_filter_enabled and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n1(void)
+{
+       i18n_ubool result;
+
+       ret = i18n_ucsdet_is_input_filter_enabled(NULL, &result);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_is_input_filter_enabled and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_is_input_filter_enabled_n2(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_is_input_filter_enabled(ucsd, NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_enable_input_filter and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_p(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+
+       i18n_ubool result;
+       ret = i18n_ucsdet_enable_input_filter(ucsd, true, &result);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_enable_input_filter and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n1(void)
+{
+       i18n_ubool result;
+       ret = i18n_ucsdet_enable_input_filter(NULL, true, &result);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2
+ * @since_tizen 6.0
+ * @description Calls i18n_ucsdet_enable_input_filter and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_ucsdet_enable_input_filter_n2(void)
+{
+       ret = i18n_ucsdet_create(&ucsd);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       ret = i18n_ucsdet_enable_input_filter(ucsd, true, NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+static int32_t preflight(const i18n_uchar *src, int32_t length, i18n_ucnv_h cnv)
+{
+       int status;
+       char buffer[1024];
+       char *dest, *dest_limit = buffer + sizeof(buffer);
+       const i18n_uchar *src_limit = src + length;
+       int32_t result = 0;
+
+       do {
+               dest = buffer;
+               status = I18N_ERROR_NONE;
+               status = i18n_ucnv_from_unicode(cnv, &dest, dest_limit, &src, src_limit, 0, true);
+               result += (int32_t) (dest - buffer);
+       } while (status == I18N_ERROR_BUFFER_OVERFLOW);
+
+       return result;
+}
+
+static char *extract_bytes(const i18n_uchar *src, int32_t length, const char *codepage, int32_t *byte_length)
+{
+       i18n_ucnv_h cnv;
+       ret = i18n_ucnv_create(codepage, &cnv);
+       int32_t byte_count = preflight(src, length, cnv);
+       const i18n_uchar *src_limit = src + length;
+       char *bytes = (char *) malloc((byte_count+1) * sizeof(char));
+       char *dest = bytes, *dest_limit = bytes + byte_count + 1;
+
+       ret = i18n_ucnv_from_unicode(cnv, &dest, dest_limit, &src, src_limit, 0, true);
+       i18n_ucnv_destroy(cnv);
+
+       *byte_length = byte_count;
+       return bytes;
+}
similarity index 100%
rename from unittest/utc_convert.sh
rename to tests/utc_convert.sh