[UTC][base-utils][ACR-1490][UTC for uscript] 28/225428/6
authorHyunjee Kim <hj0426.kim@samsung.com>
Thu, 20 Feb 2020 01:29:17 +0000 (10:29 +0900)
committerHyunjee Kim <hj0426.kim@samsung.com>
Thu, 9 Apr 2020 07:34:59 +0000 (16:34 +0900)
Change-Id: Iff4119fde9d297f3403fc8fb5d5fe309ff06e169
Signed-off-by: Hyunjee Kim <hj0426.kim@samsung.com>
src/utc/base-utils/CMakeLists.txt
src/utc/base-utils/tct-base-utils-core_mobile.h
src/utc/base-utils/tct-base-utils-core_wearable.h
src/utc/base-utils/utc-capi-base-utils-uscript.c [new file with mode: 0644]

index c81ac6929f9c2ce73415c45a14df311a2d001b61..4b18a7c4699400965be785760f6ca4f8b9f183d7 100644 (file)
@@ -40,6 +40,7 @@ SET(TC_SOURCES
     utc-capi-base-utils-simple-date-format.c
     utc-capi-base-utils-loc-disp-names.c
        utc-capi-base-utils-utext.c
+    utc-capi-base-utils-uscript.c
 )
 
 PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
index 11b3a09d6babe62663e512977c6a766bba5ce265..ed41e53093c1b0681a0af543863145f3fd9044d7 100755 (executable)
@@ -89,6 +89,8 @@ 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 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);
@@ -2342,6 +2344,28 @@ 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);
 
 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},
@@ -4596,6 +4620,28 @@ testcase tc_array[] = {
        {"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},
        {NULL, NULL}
 };
 
index 11b3a09d6babe62663e512977c6a766bba5ce265..ed41e53093c1b0681a0af543863145f3fd9044d7 100755 (executable)
@@ -89,6 +89,8 @@ 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 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);
@@ -2342,6 +2344,28 @@ 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);
 
 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},
@@ -4596,6 +4620,28 @@ testcase tc_array[] = {
        {"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},
        {NULL, NULL}
 };
 
diff --git a/src/utc/base-utils/utc-capi-base-utils-uscript.c b/src/utc/base-utils/utc-capi-base-utils-uscript.c
new file mode 100644 (file)
index 0000000..84ef336
--- /dev/null
@@ -0,0 +1,424 @@
+#include "assert.h"
+#include <string.h>
+#include <utils_i18n.h>
+
+#define LENGTHOF(array) (int32_t)(sizeof(array)/sizeof((array)[0]))
+
+static int ret = I18N_ERROR_NONE;
+
+/**
+* @function        utc_capi_base_utils_uscript_startup
+* @description     Called before each test
+* @parameter       NA
+* @return          NA
+*/
+void utc_capi_base_utils_uscript_startup(void)
+{
+}
+
+/**
+* @function        utc_capi_base_utils_uscript_cleanup
+* @description     Called after each test
+* @parameter       NA
+* @return          NA
+*/
+void utc_capi_base_utils_uscript_cleanup(void)
+{
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_codes_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_codes and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_codes_p(void)
+{
+       static const i18n_uscript_code_e KOREAN[2] = { I18N_USCRIPT_HANGUL, I18N_USCRIPT_HAN };
+       i18n_uscript_code_e scripts[2];
+       int32_t len = 0;
+
+       ret = i18n_uscript_get_codes("ko", scripts, 2, &len);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       int i;
+       for(i = 0; i<2; ++i)
+               assert_eq(KOREAN[i], scripts[i]);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_codes_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_codes and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_codes_n(void)
+{
+       static const i18n_uscript_code_e KOREAN[2] = { I18N_USCRIPT_HANGUL, I18N_USCRIPT_HAN };
+       i18n_uscript_code_e scripts[2];
+       int32_t len = 0;
+
+       ret = i18n_uscript_get_codes(NULL, scripts, 2, &len);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       ret = i18n_uscript_get_codes("ko", scripts, -1, &len);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       ret = i18n_uscript_get_codes("ko", scripts, 2, NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_name_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_name and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_name_p(void)
+{
+       const char * name = i18n_uscript_get_name(I18N_USCRIPT_HANGUL);
+       assert_eq(strcmp(name, "Hangul"), 0);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_name_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_name and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_name_n(void)
+{
+       const char * name = i18n_uscript_get_name(I18N_USCRIPT_INVALID_CODE);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       name = i18n_uscript_get_name(I18N_USCRIPT_CODE_LIMIT);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_short_name_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_short_name and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_short_name_p(void)
+{
+       const char * name = i18n_uscript_get_short_name(I18N_USCRIPT_HANGUL);
+       assert_eq(strcmp(name, "Hang"), 0);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_short_name_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_short_name and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_short_name_n(void)
+{
+       const char * name = i18n_uscript_get_short_name(I18N_USCRIPT_INVALID_CODE);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       name = i18n_uscript_get_short_name(I18N_USCRIPT_CODE_LIMIT);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_script_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_script and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_script_p(void)
+{
+       i18n_uscript_code_e script_code = I18N_USCRIPT_INVALID_CODE;
+
+       static uint32_t codepoints[] = {
+               0x0000FFBE, /* I18N_USCRIPT_HANGUL*/
+               0x0000FFCF, /* I18N_USCRIPT_HANGUL*/
+               0x0000FFD7, /* I18N_USCRIPT_HANGUL*/
+               0x0000FFDC, /* I18N_USCRIPT_HANGUL*/
+               0x00010330, /* I18N_USCRIPT_GOTHIC*/
+       };
+
+       static i18n_uscript_code_e expected[] = {
+               I18N_USCRIPT_HANGUL,
+               I18N_USCRIPT_HANGUL,
+               I18N_USCRIPT_HANGUL,
+               I18N_USCRIPT_HANGUL,
+               I18N_USCRIPT_GOTHIC,
+       };
+
+       static int cnt;
+       for(cnt = 0; cnt <5; ++cnt) {
+               ret = i18n_uscript_get_script(codepoints[cnt], &script_code);
+               assert_eq(ret, I18N_ERROR_NONE);
+               assert_eq(script_code, expected[cnt]);
+       }
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_script_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_script and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_script_n(void)
+{
+       i18n_uscript_code_e script_code = I18N_USCRIPT_INVALID_CODE;
+
+       ret = i18n_uscript_get_script((i18n_uscript_code_e)(I18N_USCRIPT_INVALID_CODE-1), &script_code);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       ret = i18n_uscript_get_script((i18n_uscript_code_e)(I18N_USCRIPT_INVALID_CODE), NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_has_script_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_has_script and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_has_script_p(void)
+{
+       i18n_ubool b = i18n_uscript_has_script(0x063f, I18N_USCRIPT_ARABIC);
+       assert_eq(b, true);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_has_script_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_has_script and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_has_script_n(void)
+{
+       i18n_ubool b = i18n_uscript_has_script(0x063f, I18N_USCRIPT_INVALID_CODE);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       b = i18n_uscript_has_script(0x063f, I18N_USCRIPT_CODE_LIMIT);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_script_extensions_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_script_extensions and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_script_extensions_p(void)
+{
+       i18n_uscript_code_e scripts[20];
+       int32_t len = 0;
+
+       ret = i18n_uscript_get_script_extensions(0x0640, scripts, LENGTHOF(scripts), &len);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_script_extensions_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_script_extensions and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_script_extensions_n(void)
+{
+       i18n_uscript_code_e scripts[20];
+       int32_t len = 0;
+
+       ret = i18n_uscript_get_script_extensions(0x0640, scripts, -1, &len);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       ret = i18n_uscript_get_script_extensions(0x0640, scripts, LENGTHOF(scripts), NULL);
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_sample_string_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_sample_string and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_sample_string_p(void)
+{
+       i18n_uchar sample[8];
+       int32_t len = 0;
+
+       ret = i18n_uscript_get_sample_string(I18N_USCRIPT_LATIN, sample, LENGTHOF(sample), &len);
+       assert_eq(ret, I18N_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_sample_string_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_sample_string and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_sample_string_n(void)
+{
+       i18n_uchar sample[8];
+       int32_t len = 0;
+
+       ret = i18n_uscript_get_sample_string(I18N_USCRIPT_LATIN, sample, 0, &len);
+       assert_eq(ret, I18N_ERROR_BUFFER_OVERFLOW);
+
+       ret = i18n_uscript_get_sample_string(I18N_USCRIPT_INVALID_CODE, sample, LENGTHOF(sample), &len);
+       assert_eq(ret, I18N_USCRIPT_INVALID_CODE);
+
+       ret = i18n_uscript_get_sample_string(I18N_USCRIPT_CODE_LIMIT, sample, 0, &len);
+       assert_eq(ret, I18N_USCRIPT_INVALID_CODE);
+
+       ret = i18n_uscript_get_sample_string(I18N_USCRIPT_LATIN, sample, LENGTHOF(sample), NULL);
+       assert_eq(ret, I18N_USCRIPT_INVALID_CODE);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_usage_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_getUsage and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_usage_p(void)
+{
+       i18n_uscript_usage_e usage = i18n_uscript_get_usage(I18N_USCRIPT_KOREAN);
+       assert_eq(usage, I18N_USCRIPT_USAGE_RECOMMENDED);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_get_usage_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_get_usage and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_get_usage_n(void)
+{
+       i18n_uscript_usage_e usage = i18n_uscript_get_usage(I18N_USCRIPT_INVALID_CODE);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+       assert_eq(usage, I18N_USCRIPT_USAGE_NOT_ENCODED);
+
+       usage = i18n_uscript_get_usage(I18N_USCRIPT_CODE_LIMIT);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+       assert_eq(usage, I18N_USCRIPT_USAGE_NOT_ENCODED);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_is_right_to_left_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_is_right_to_left and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_is_right_to_left_p(void)
+{
+       i18n_ubool b = i18n_uscript_is_right_to_left(I18N_USCRIPT_KOREAN);
+       assert_eq(b, false);
+
+       b = i18n_uscript_is_right_to_left(I18N_USCRIPT_ARABIC);
+       assert_eq(b, true);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_is_right_to_left_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_is_right_to_left and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_is_right_to_left_n(void)
+{
+       i18n_ubool b = i18n_uscript_is_right_to_left(I18N_USCRIPT_INVALID_CODE);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       b = i18n_uscript_is_right_to_left(I18N_USCRIPT_CODE_LIMIT);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_breaks_between_letters_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_breaks_between_letters and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_breaks_between_letters_p(void)
+{
+       i18n_ubool b = i18n_uscript_breaks_between_letters(I18N_USCRIPT_KOREAN);
+       assert_eq(b, false);
+
+       b = i18n_uscript_breaks_between_letters(I18N_USCRIPT_THAI);
+       assert_eq(b, true);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_breaks_between_letters_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_breaks_between_letters and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_breaks_between_letters_n(void)
+{
+       i18n_ubool b = i18n_uscript_breaks_between_letters(I18N_USCRIPT_INVALID_CODE);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       b = i18n_uscript_breaks_between_letters(I18N_USCRIPT_CODE_LIMIT);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_is_cased_p
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_is_cased and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_is_cased_p(void)
+{
+       i18n_ubool b = i18n_uscript_is_cased(I18N_USCRIPT_KOREAN);
+       assert_eq(b, false);
+
+       b = i18n_uscript_is_cased(I18N_USCRIPT_LATIN);
+       assert_eq(b, true);
+
+       return 0;
+}
+
+/**
+ * @testcase utc_capi_base_utils_i18n_uscript_is_cased_n
+ * @since_tizen 6.0
+ * @description Calls i18n_uscript_is_cased and checks whether function succeeded.
+ */
+int utc_capi_base_utils_i18n_uscript_is_cased_n(void)
+{
+       i18n_ubool b = i18n_uscript_is_cased(I18N_USCRIPT_INVALID_CODE);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       b = i18n_uscript_is_cased(I18N_USCRIPT_CODE_LIMIT);
+       ret = get_last_result();
+       assert_eq(ret, I18N_ERROR_INVALID_PARAMETER);
+
+       return 0;
+}