[ITC][base-utils][ACR-1260] Add Locale Display Names module
authorAwadhesh Singh <awadhesh1.s@samsung.com>
Wed, 29 Aug 2018 05:19:19 +0000 (10:49 +0530)
committerAmritanshu Pandia <a.pandia1@samsung.com>
Thu, 6 Sep 2018 05:17:14 +0000 (05:17 +0000)
Change-Id: I73e880c2e885d84369d68c90e98557f1a047e704
Signed-off-by: Awadhesh Singh <awadhesh1.s@samsung.com>
src/itc/base-utils/CMakeLists.txt
src/itc/base-utils/ITs-base-utils-common.c
src/itc/base-utils/ITs-base-utils-loc-disp-names.c [new file with mode: 0755]
src/itc/base-utils/ITs-base-utils-loc-disp-names.h [new file with mode: 0755]
src/itc/base-utils/tct-base-utils-native_mobile.h
src/itc/base-utils/tct-base-utils-native_tizeniot.h
src/itc/base-utils/tct-base-utils-native_wearable.h

index 255ccf4ff5c62f0fb6bb9fda2ad4b9a06bcb7c33..209279de94068e0cda16b59253b2318c80e23e1a 100755 (executable)
@@ -38,6 +38,7 @@ SET(TC_SOURCES
        ITs-base-utils-immutable-idx.c
        ITs-base-utils-plural-format.c
        ITs-base-utils-simple-date-format.c
+       ITs-base-utils-loc-disp-names.c
 )
 
 PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
index 89f1ae7141f92eb7f53694e49e96e60b03b3527a..d1b1f3f998373a3d4dcf4a005b2874ea17e66142 100755 (executable)
@@ -107,6 +107,7 @@ char* BaseUtilsGetError(int nRet)
        case I18N_ERROR_UBRK_RULE_EMPTY_SET:                            szErrorVal = "I18N_ERROR_UBRK_RULE_EMPTY_SET";                          break;
        case I18N_ERROR_UBRK_UNRECOGNIZED_OPTION:                       szErrorVal = "I18N_ERROR_UBRK_UNRECOGNIZED_OPTION";                     break;
        case I18N_ERROR_UBRK_MALFORMED_RULE_TAG:                        szErrorVal = "I18N_ERROR_UBRK_MALFORMED_RULE_TAG";                      break;
+       case I18N_ERROR_OUT_OF_MEMORY:                  szErrorVal = "I18N_ERROR_OUT_OF_MEMORY";                        break;
        default:                                                                                        szErrorVal = "I18N_ERROR_UNKNOWN";                                                      break;
        }
        return szErrorVal;
diff --git a/src/itc/base-utils/ITs-base-utils-loc-disp-names.c b/src/itc/base-utils/ITs-base-utils-loc-disp-names.c
new file mode 100755 (executable)
index 0000000..18507a4
--- /dev/null
@@ -0,0 +1,609 @@
+//
+// Copyright (c) 2014 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+#include "ITs-base-utils-common.h"
+#include "ITs-base-utils-loc-disp-names.h"
+
+i18n_loc_disp_names_h g_hLocDisp = NULL;
+bool g_hLocDispHandleCreated;
+const char *g_pszLanguage = "en";
+const char *g_pszScript = "Hant";
+const char *g_pszRegion = "US";
+const char *g_pszVariant = "PRE_EURO";
+const char *g_pszKey = "calendar";
+const char *g_pszValue = "gregorian";
+char * g_pszName = NULL;
+
+void ITs_base_utils_loc_disp_names_startup(void)
+{
+       g_hLocDispHandleCreated = false;
+       int nRet = i18n_loc_disp_names_create(g_pszLocale, &g_hLocDisp);
+       if(nRet != I18N_ERROR_NONE)
+       {
+               FPRINTF("[Line : %d][%s] g_hLocDisp handle creation failed. nRet = %d \\n", __LINE__, API_NAMESPACE, BaseUtilsGetError(nRet));
+               return;
+       }
+       if(g_hLocDisp == NULL)
+       {
+               FPRINTF("[Line : %d][%s] g_hLocDisp handle creation failed. \\n", __LINE__, API_NAMESPACE);
+               return;
+       }
+       g_hLocDispHandleCreated = true;
+       FPRINTF("[Line : %d][%s] g_hLocDisp handle created successfully. \\n", __LINE__, API_NAMESPACE);
+       return;
+}
+
+void ITs_base_utils_loc_disp_names_cleanup(void)
+{
+       if(g_hLocDisp != NULL)
+       {
+               int nRet =i18n_loc_disp_names_destroy(g_hLocDisp);
+               FPRINTF(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_destroy", BaseUtilsGetError(nRet));
+               g_hLocDisp = NULL;
+       }
+       return;
+}
+// & type: auto
+// & purpose: Creates a default locale display names object.
+/**
+* @testcas                     ITs_base_utils_i18n_loc_disp_names_create_p
+* @since_tizen                         5.0
+* @author                      SRID(awadhesh1.s)
+* @reviewer                    SRID(nibha.sharma)
+* @type                        auto
+* @scenario                    Creates a default locale display names object.
+* @apitarget                   i18n_loc_disp_names_create
+* @apicovered                  i18n_loc_disp_names_create, i18n_loc_disp_names_destroy
+* @passcase                    return 0 and locale display object created.
+* @failcase                    Negative value return
+* @precondition                        NA
+* @postcondition               NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_create_p(void)
+{
+       START_LOCALE_DISP_TEST
+
+       i18n_loc_disp_names_h hLocDisp =  NULL;
+       const char * pszLocale[] = {"en_US","en_GB","zh_TW","ko_KR", "ja_JP", "it_IT", "de_DE", "fr_FR", "zh_CN", "fr_CA", "en_CA","zh_CN","ko","ja","it","de","fr","en","zh"};
+       char * pszDummy = NULL;
+       int nLocaleOption = sizeof(pszLocale) / sizeof(pszDummy);
+       int nCounter;
+       bool bLocaleFail = false;
+
+       for(nCounter = 0; nCounter < nLocaleOption; nCounter++ )
+       {
+               int nRet = i18n_loc_disp_names_create(pszLocale[nCounter], &hLocDisp);
+               PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_create", BaseUtilsGetError(nRet));
+
+               if(hLocDisp == NULL)
+               {
+                       FPRINTF("[Line : %d][%s] hLocDisp handle creation failed. Locale = %s \\n", __LINE__, API_NAMESPACE, pszLocale[nCounter]);
+                       bLocaleFail = true;
+               }
+               else
+               {
+                       nRet =i18n_loc_disp_names_destroy(hLocDisp);
+                       PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_destroy", BaseUtilsGetError(nRet));
+                       hLocDisp = NULL;
+               }
+       }
+       if(bLocaleFail)
+       {
+               return 1;
+       }
+       return 0;
+}
+// & type: auto
+// & purpose: Creates a locale display names object for the given dialect handling.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Creates a locale display names object for the given dialect handling..
+* @apitarget                    i18n_loc_disp_names_create_from_dialect
+* @apicovered                   i18n_loc_disp_names_create_from_dialect, i18n_loc_disp_names_destroy
+* @passcase                     return 0 and locale display object created.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+
+int ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p(void)
+{
+       START_LOCALE_DISP_TEST
+
+       i18n_loc_disp_names_h hLocDisp =  NULL;
+       i18n_udialect_handling_e eDialect[] = {I18N_ULDN_STANDARD_NAMES, I18N_ULDN_DIALECT_NAMES};
+       int nEnumSize = sizeof(eDialect) / sizeof(eDialect[0]);
+       int nCounter = 0;
+       bool bLocaleFail = false;
+
+       for(nCounter = 0; nCounter < nEnumSize ; nCounter++ )
+       {
+               int nRet = i18n_loc_disp_names_create_from_dialect(g_pszLocale, eDialect[nCounter], &hLocDisp);
+               PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_create_from_dialect", BaseUtilsGetError(nRet));
+               if(hLocDisp == NULL)
+               {
+                       FPRINTF("[Line : %d][%s] hLocDisp handle creation failed. dialect = %d. \\n", __LINE__, API_NAMESPACE,eDialect[nCounter]);
+                       bLocaleFail = false;
+               }
+               else
+               {
+                       nRet =i18n_loc_disp_names_destroy(hLocDisp);
+                       PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_destroy", BaseUtilsGetError(nRet));
+                       hLocDisp = NULL;
+               }
+       }
+       if(bLocaleFail)
+       {
+               return 1;
+       }
+       return 0;
+}
+// & type: auto
+// & purpose: Creates a locale display names object for given display contexts.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_create_from_context_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Creates a default locale display names object.
+* @apitarget                    i18n_loc_disp_names_create_from_context
+* @apicovered                   i18n_loc_disp_names_create_from_context, i18n_loc_disp_names_destroy
+* @passcase                     return 0 and locale display object created.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_create_from_context_p(void)
+{
+       START_LOCALE_DISP_TEST
+
+       i18n_loc_disp_names_h hLocDisp =  NULL;
+       i18n_udisplay_context_e eContexts[] = {I18N_UDISPLAY_CONTEXT_STANDARD_NAMES, I18N_UDISPLAY_CONTEXT_CAPITALIZATION_FOR_UI_LIST_OR_MENU };
+       int nEnumSize = sizeof(eContexts) / sizeof(eContexts[0]);
+       int nCounter = 0;
+
+       int nRet = i18n_loc_disp_names_create_from_context(g_pszLocale, eContexts, nEnumSize, &hLocDisp);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_create_from_context", BaseUtilsGetError(nRet));
+       if(hLocDisp == NULL)
+       {
+               FPRINTF("[Line : %d][%s] hLocDisp handle creation failed. \\n", __LINE__, API_NAMESPACE);
+               return 1;
+       }
+       nRet =i18n_loc_disp_names_destroy(hLocDisp);
+       PRINT_RESULT_NORETURN(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_destroy", BaseUtilsGetError(nRet));
+       hLocDisp = NULL;
+
+       return 0;
+}
+// & type: auto
+// & purpose: Gets the locale used by the given locale display names object to determinate the display names.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_locale_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the locale used by the given locale display.
+                               names object to determinate the display names.
+* @apitarget                    i18n_loc_disp_names_get_locale
+* @apicovered                   i18n_loc_disp_names_get_locale
+* @passcase                     return 0 and locale display.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_locale_p(void)
+{
+       START_LOCALE_DISP_TEST
+
+       char * pszOutput =  NULL;
+       const char * pszExpected = "en_US";
+       int nRet = i18n_loc_disp_names_get_locale(g_hLocDisp, &pszOutput);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_locale", BaseUtilsGetError(nRet));
+
+       if(strncmp(pszOutput, pszExpected, strlen(pszExpected)) != 0)
+       {
+               FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_locale mismatch pszOutput = %s. \\n", __LINE__, API_NAMESPACE,pszOutput);
+               FREE_MEMORY(pszOutput);
+               return 1;
+       }
+       FREE_MEMORY(pszOutput);
+       return 0;
+}
+// & type: auto
+// & purpose: Gets the dialect handling used by the given locale display names object.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the dialect handling used by the given locale display names object.
+* @apitarget                    i18n_loc_disp_names_get_dialect_handling
+* @apicovered                   i18n_loc_disp_names_get_dialect_handling
+* @passcase                     return 0 and dialect handle.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p(void)
+{
+       START_LOCALE_DISP_TEST
+
+       i18n_udialect_handling_e eDialect;
+
+       int nRet = i18n_loc_disp_names_get_dialect_handling(g_hLocDisp, &eDialect);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_locale", BaseUtilsGetError(nRet));
+
+       if(eDialect != I18N_ULDN_STANDARD_NAMES && eDialect != I18N_ULDN_DIALECT_NAMES)
+       {
+               FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_dialect_handling mismatch eDialect = %d. \\n", __LINE__, API_NAMESPACE, eDialect);
+                return 1;
+       }
+       return 0;
+}
+
+// & type: auto
+// & purpose:Gets the context from the given locale display names object.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_context_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the context from the given locale display names object.
+* @apitarget                    i18n_loc_disp_names_get_context
+* @apicovered                   i18n_loc_disp_names_get_context
+* @passcase                     return 0 and context.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_context_p(void)
+{
+       START_LOCALE_DISP_TEST
+       i18n_udisplay_context_type_e eType[] = { I18N_UDISPCTX_TYPE_DIALECT_HANDLING, I18N_UDISPCTX_TYPE_CAPITALIZATION,
+       #ifndef U_HIDE_DRAFT_API
+       I18N_UDISPCTX_TYPE_DISPLAY_LENGTH
+       #endif
+       };
+       int nEnumSize = sizeof(eType) / sizeof(eType[0]);
+       int nCounter = 0;
+       bool bContext =  false;
+
+       for(nCounter = 0 ; nCounter < nEnumSize ; nCounter++ )
+       {
+               i18n_udisplay_context_e eContext = 0;
+
+               int nRet = i18n_loc_disp_names_get_context(g_hLocDisp, eType[nCounter], &eContext);
+               PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_context", BaseUtilsGetError(nRet));
+
+               if( !(eContext == (eType[nCounter] << 8 + 0) || eContext == (eType[nCounter] << 8 + 1) || eContext == (eType[nCounter] << 8 + 1) || eContext == (eType[nCounter]<< 8 + 2) || eContext == (eType[nCounter] << 8 + 3) || eContext == (eType[nCounter]<< 8 + 4) ))
+               {
+                       FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_context mismatch. eContext = %d. \\n", __LINE__, API_NAMESPACE, eContext);
+                       bContext = true;
+               }
+       }
+       if(bContext)
+       {
+               return 1;
+       }
+       return 0;
+}
+
+// & type: auto
+// & purpose:Gets the display name of the provided locale.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the display name of the provided locale.
+* @apitarget                    i18n_loc_disp_names_get_loc_disp_name
+* @apicovered                   i18n_loc_disp_names_get_loc_disp_name
+* @passcase                     return 0 and display name.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p(void)
+{
+       START_LOCALE_DISP_TEST
+
+       const char *pszExpected = "English (United States)";
+
+       int nRet = i18n_loc_disp_names_get_loc_disp_name(g_hLocDisp, g_pszLocale, &g_pszName);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_loc_disp_name", BaseUtilsGetError(nRet));
+
+       if( strncmp(pszExpected, g_pszName, strlen(pszExpected)) != 0 )
+       {
+               FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_loc_disp_name mismatch. pszExpected = %s , g_pszName =. \\n", __LINE__, API_NAMESPACE, pszExpected, g_pszName);
+               FREE_MEMORY(g_pszName);
+               return 1;
+       }
+       FREE_MEMORY(g_pszName);
+       return 0;
+}
+
+// & type: auto
+// & purpose: Gets the display name of the provided language code.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the display name of the provided language code.
+* @apitarget                    i18n_loc_disp_names_get_language_disp_name
+* @apicovered                   i18n_loc_disp_names_get_language_disp_name
+* @passcase                     return 0 and display name.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+
+int ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p(void)
+{
+       START_LOCALE_DISP_TEST
+       const char *pszExpected = "English";
+
+       int nRet = i18n_loc_disp_names_get_language_disp_name(g_hLocDisp, g_pszLanguage, &g_pszName);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_language_disp_name", BaseUtilsGetError(nRet));
+
+       if(strncmp(pszExpected, g_pszName, strlen(pszExpected)) != 0)
+       {
+               FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_language_disp_name mismatchi. pszExpected = %s, _pszName = %s. \\n", __LINE__, API_NAMESPACE, pszExpected, g_pszName);
+               FREE_MEMORY(g_pszName);
+               return 1;
+       }
+       FREE_MEMORY(g_pszName);
+       return 0;
+}
+
+// & type: auto
+// & purpose: Gets the display name of the script code provided as string.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the display name of the script code provided as string.
+* @apitarget                    i18n_loc_disp_names_get_script_disp_name
+* @apicovered                   i18n_loc_disp_names_get_script_disp_name
+* @passcase                     return 0 and display name.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p(void)
+{
+       START_LOCALE_DISP_TEST
+       const char *pszExpected = "Traditional";
+
+       int nRet = i18n_loc_disp_names_get_script_disp_name(g_hLocDisp, g_pszScript, &g_pszName);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_language_disp_name", BaseUtilsGetError(nRet));
+
+       if(strncmp(pszExpected, g_pszName, strlen(pszExpected)) != 0)
+       {
+               FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_script_disp_name mismatch. pszExpected = %s, g_pszName = %s \\n", __LINE__, API_NAMESPACE, pszExpected, g_pszName);
+               FREE_MEMORY(g_pszName);
+               return 1;
+       }
+       FREE_MEMORY(g_pszName);
+       return 0;
+}
+
+// & type: auto
+// & purpose: Gets the display name of the script code provided as enumeration.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the display name of the script code provided as string.
+* @apitarget                    i18n_loc_disp_names_get_script_disp_name_with_script_code
+* @apicovered                   i18n_loc_disp_names_get_script_disp_name_with_script_code
+* @passcase                     return 0 and display name.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p(void)
+{
+       START_LOCALE_DISP_TEST
+       int nScriptCodeUpLimit = sizeof(g_eScriptCode)/ sizeof(g_eScriptCode[0]);
+       int nCounter;
+       bool bMisMatch = false;
+       for(nCounter = 0 ; nCounter < nScriptCodeUpLimit ; nCounter++)
+       {
+               int nRet = i18n_loc_disp_names_get_script_disp_name_with_script_code(g_hLocDisp, g_eScriptCode[nCounter], &g_pszName);
+               PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_language_disp_name", BaseUtilsGetError(nRet));
+
+               if(g_pszName == NULL)
+               {
+                       FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_script_disp_name_with_script_code mismatch. nScriptCode = %d , g_pszName = %s \\n", __LINE__, API_NAMESPACE, g_eScriptCode[nCounter], &g_pszName);
+                       bMisMatch = true;
+               }
+               else
+               {
+                       FREE_MEMORY(g_pszName);
+               }
+       }
+       if(bMisMatch)
+       {
+               return 1;
+       }
+       return 0;
+
+}
+// & type: auto
+// & purpose: Gets the display name of the provided region code.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the display name of the provided region code.
+* @apitarget                    i18n_loc_disp_names_get_region_disp_name
+* @apicovered                   i18n_loc_disp_names_get_region_disp_name
+* @passcase                     return 0 and display name.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p(void)
+{
+       START_LOCALE_DISP_TEST
+
+       const char *pszExpected[] = {"United States", "United Kingdom", "Taiwan", "South Korea", "Japan", "Italy", "Germany", "France","China", "Canada"};
+       const char *pszRegion[] = {"US","GB","TW","KR", "JP", "IT", "DE", "FR", "CN", "CA"};
+       char * pszDummy = NULL;
+       int nEnumSize = sizeof(pszRegion) / sizeof(pszDummy) ;
+       int nCounter;
+       int nRet;
+       bool bMisMatch = false;
+       for(nCounter = 0; nCounter < nEnumSize ; nCounter++)
+       {
+               nRet = i18n_loc_disp_names_get_region_disp_name(g_hLocDisp, pszRegion[nCounter], &g_pszName);
+               PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_region_disp_name", BaseUtilsGetError(nRet));
+
+               if(strncmp(pszExpected[nCounter], g_pszName, strlen(pszExpected[nCounter])) != 0)
+               {
+                       FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_region_disp_name mismatch. pszExpected = %s , pszName = %s \\n", __LINE__, API_NAMESPACE, pszExpected[nCounter], g_pszName);
+                       FREE_MEMORY(g_pszName);
+                       bMisMatch = true;
+               }
+       }
+       if(bMisMatch)
+       {
+               return 1;
+       }
+       FREE_MEMORY(g_pszName);
+       return 0;
+}
+
+// & type: auto
+// & purpose:Gets the display name of the provided variant.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the display name of the provided variant.
+* @apitarget                    i18n_loc_disp_names_get_variant_disp_name
+* @apicovered                   i18n_loc_disp_names_get_variant_disp_name
+* @passcase                     return 0 and display name.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p(void)
+{
+       START_LOCALE_DISP_TEST
+       const char *pszExpected = "PRE_EURO";
+
+       int nRet = i18n_loc_disp_names_get_variant_disp_name(g_hLocDisp, g_pszVariant, &g_pszName);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_variant_disp_name", BaseUtilsGetError(nRet));
+
+       if(strncmp(pszExpected, g_pszName, strlen(pszExpected)) != 0)
+       {
+               FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_variant_disp_name mismatch. pszExpected = %s, g_pszName = %s\\n", __LINE__, API_NAMESPACE, pszExpected, g_pszName);
+               FREE_MEMORY(g_pszName);
+               return 1;
+       }
+
+       FREE_MEMORY(g_pszName);
+       return 0;
+}
+
+// & type: auto
+// & purpose:Gets the display name of the provided locale key.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the display name of the provided locale key.
+* @apitarget                    i18n_loc_disp_names_get_key_disp_name
+* @apicovered                   i18n_loc_disp_names_get_key_disp_name
+* @passcase                     return 0 and display name.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p(void)
+{
+       START_LOCALE_DISP_TEST
+       const char *pszExpected = "Calendar";
+
+       int nRet = i18n_loc_disp_names_get_key_disp_name(g_hLocDisp, g_pszKey, &g_pszName);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_key_disp_name", BaseUtilsGetError(nRet));
+
+       if(strncmp(pszExpected, g_pszName, strlen(pszExpected)) != 0)
+       {
+               FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_key_disp_name mismatch. pszExpected = %s \\n", __LINE__, API_NAMESPACE, pszExpected);
+               FREE_MEMORY(g_pszName);
+               return 1;
+       }
+
+       FREE_MEMORY(g_pszName);
+       return 0;
+}
+// & type: auto
+// & purpose:Gets the display name of the provided locale key-value.
+/**
+* @testcas                      ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p
+* @since_tizen                  5.0
+* @author                       SRID(awadhesh1.s)
+* @reviewer                     SRID(nibha.sharma)
+* @type                         auto
+* @scenario                     Gets the display name of the provided locale keyvalue.
+* @apitarget                    i18n_loc_disp_names_get_key_value_disp_name
+* @apicovered                   i18n_loc_disp_names_get_key_value_disp_name
+* @passcase                     return 0 and display name.
+* @failcase                     Negative value return
+* @precondition                 NA
+* @postcondition                NA
+*/
+int ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p(void)
+{
+
+       START_LOCALE_DISP_TEST
+
+       const char *pszExpected = "Gregorian Calendar";
+       int nRet = i18n_loc_disp_names_get_key_value_disp_name(g_hLocDisp, g_pszKey, g_pszValue, &g_pszName);
+       PRINT_RESULT(I18N_ERROR_NONE, nRet, "i18n_loc_disp_names_get_key_value_disp_name", BaseUtilsGetError(nRet));
+
+       if(strncmp(pszExpected, g_pszName, strlen(pszExpected)) != 0)
+       {
+       FPRINTF("[Line : %d][%s] i18n_loc_disp_names_get_key_value_disp_name mismatch.  pszExpected =  %s , g_pszName = %s \\n", __LINE__, API_NAMESPACE, pszExpected ,g_pszName);
+               FREE_MEMORY(g_pszName);
+               return 1;
+       }
+
+       FREE_MEMORY(g_pszName);
+       return 0;
+}
diff --git a/src/itc/base-utils/ITs-base-utils-loc-disp-names.h b/src/itc/base-utils/ITs-base-utils-loc-disp-names.h
new file mode 100755 (executable)
index 0000000..ef26494
--- /dev/null
@@ -0,0 +1,199 @@
+//
+// Copyright (c) 2018 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+#ifndef _ITS_BASE_UTILS_DISP_NAME_H_
+#define _ITS_BASE_UTILS_DISP_NAME_H_
+
+
+extern bool g_hLocDispHandleCreated;
+
+
+
+#define START_LOCALE_DISP_TEST {\
+       FPRINTF("[Line : %d][%s] Starting test : %s\\n",__LINE__, API_NAMESPACE,__FUNCTION__);\
+       if ( !g_hLocDispHandleCreated )\
+       {\
+       FPRINTF("[Line : %d][%s] Locale Display Handle creation, failed so leaving test\\n", __LINE__, API_NAMESPACE);\
+       return 1;\
+       }\
+}
+
+i18n_uscript_code_e g_eScriptCode[] = {
+       I18N_USCRIPT_COMMON               ,
+       I18N_USCRIPT_INHERITED    ,
+       I18N_USCRIPT_ARABIC               ,
+       I18N_USCRIPT_ARMENIAN     ,
+       I18N_USCRIPT_BENGALI      ,
+       I18N_USCRIPT_BOPOMOFO     ,
+       I18N_USCRIPT_CHEROKEE     ,
+       I18N_USCRIPT_COPTIC               ,
+       I18N_USCRIPT_CYRILLIC     ,
+       I18N_USCRIPT_DESERET      ,
+       I18N_USCRIPT_DEVANAGARI   ,
+       I18N_USCRIPT_ETHIOPIC     ,
+       I18N_USCRIPT_GEORGIAN     ,
+       I18N_USCRIPT_GOTHIC               ,
+       I18N_USCRIPT_GREEK                ,
+       I18N_USCRIPT_GUJARATI     ,
+       I18N_USCRIPT_GURMUKHI     ,
+       I18N_USCRIPT_HAN                  ,
+       I18N_USCRIPT_HANGUL               ,
+       I18N_USCRIPT_HEBREW               ,
+       I18N_USCRIPT_HIRAGANA     ,
+       I18N_USCRIPT_KANNADA      ,
+       I18N_USCRIPT_KATAKANA     ,
+       I18N_USCRIPT_KHMER                ,
+       I18N_USCRIPT_LAO                  ,
+       I18N_USCRIPT_LATIN                ,
+       I18N_USCRIPT_MALAYALAM    ,
+       I18N_USCRIPT_MONGOLIAN    ,
+       I18N_USCRIPT_MYANMAR      ,
+       I18N_USCRIPT_OGHAM                ,
+       I18N_USCRIPT_OLD_ITALIC   ,
+       I18N_USCRIPT_ORIYA                ,
+       I18N_USCRIPT_RUNIC                ,
+       I18N_USCRIPT_SINHALA      ,
+       I18N_USCRIPT_SYRIAC               ,
+       I18N_USCRIPT_TAMIL                ,
+       I18N_USCRIPT_TELUGU               ,
+       I18N_USCRIPT_THAANA               ,
+       I18N_USCRIPT_THAI                 ,
+       I18N_USCRIPT_TIBETAN      ,
+       I18N_USCRIPT_CANADIAN_ABORIGINAL,
+       I18N_USCRIPT_UCAS                 ,
+       I18N_USCRIPT_YI                   ,
+       I18N_USCRIPT_TAGALOG      ,
+       I18N_USCRIPT_HANUNOO      ,
+       I18N_USCRIPT_BUHID                ,
+       I18N_USCRIPT_TAGBANWA     ,
+       I18N_USCRIPT_BRAILLE      ,
+       I18N_USCRIPT_CYPRIOT      ,
+       I18N_USCRIPT_LIMBU                ,
+       I18N_USCRIPT_LINEAR_B     ,
+       I18N_USCRIPT_OSMANYA      ,
+       I18N_USCRIPT_SHAVIAN      ,
+       I18N_USCRIPT_TAI_LE               ,
+       I18N_USCRIPT_UGARITIC     ,
+       I18N_USCRIPT_KATAKANA_OR_HIRAGANA , 
+       I18N_USCRIPT_BUGINESE      ,
+       I18N_USCRIPT_GLAGOLITIC    ,
+       I18N_USCRIPT_KHAROSHTHI    ,
+       I18N_USCRIPT_SYLOTI_NAGRI  ,
+       I18N_USCRIPT_NEW_TAI_LUE   ,
+       I18N_USCRIPT_TIFINAGH      ,
+       I18N_USCRIPT_OLD_PERSIAN   ,
+       I18N_USCRIPT_BALINESE                              , 
+       I18N_USCRIPT_BATAK                                                 ,
+       I18N_USCRIPT_BLISSYMBOLS                                   ,
+       I18N_USCRIPT_BRAHMI                                                ,
+       I18N_USCRIPT_CHAM                                                  ,
+       I18N_USCRIPT_CIRTH                                                 ,
+       I18N_USCRIPT_OLD_CHURCH_SLAVONIC_CYRILLIC  ,
+       I18N_USCRIPT_DEMOTIC_EGYPTIAN                      ,
+       I18N_USCRIPT_HIERATIC_EGYPTIAN                     ,
+       I18N_USCRIPT_EGYPTIAN_HIEROGLYPHS                  ,
+       I18N_USCRIPT_KHUTSURI                                      ,
+       I18N_USCRIPT_SIMPLIFIED_HAN                                ,
+       I18N_USCRIPT_TRADITIONAL_HAN                       ,
+       I18N_USCRIPT_PAHAWH_HMONG                                  ,
+       I18N_USCRIPT_OLD_HUNGARIAN                                 ,
+       I18N_USCRIPT_HARAPPAN_INDUS                                ,
+       I18N_USCRIPT_JAVANESE                                      ,
+       I18N_USCRIPT_KAYAH_LI                                      ,
+       I18N_USCRIPT_LATIN_FRAKTUR                                 ,
+       I18N_USCRIPT_LATIN_GAELIC                                  ,
+       I18N_USCRIPT_LEPCHA                                                ,
+       I18N_USCRIPT_LINEAR_A                                      ,
+       I18N_USCRIPT_MANDAIC                                       ,
+       I18N_USCRIPT_MANDAEAN                                      ,
+       I18N_USCRIPT_MAYAN_HIEROGLYPHS                     ,
+       I18N_USCRIPT_MEROITIC_HIEROGLYPHS                  ,
+       I18N_USCRIPT_MEROITIC                                      ,
+       I18N_USCRIPT_NKO                                                   ,
+       I18N_USCRIPT_ORKHON                                                ,
+       I18N_USCRIPT_OLD_PERMIC                                    ,
+       I18N_USCRIPT_PHAGS_PA                                      ,
+       I18N_USCRIPT_PHOENICIAN                                    ,
+       I18N_USCRIPT_PHONETIC_POLLARD                      ,
+       I18N_USCRIPT_RONGORONGO                                    ,
+       I18N_USCRIPT_SARATI                                                ,
+       I18N_USCRIPT_ESTRANGELO_SYRIAC                     ,
+       I18N_USCRIPT_WESTERN_SYRIAC                                ,
+       I18N_USCRIPT_EASTERN_SYRIAC                                ,
+       I18N_USCRIPT_TENGWAR                                       ,
+       I18N_USCRIPT_VAI                                                   ,
+       I18N_USCRIPT_VISIBLE_SPEECH                                ,
+       I18N_USCRIPT_CUNEIFORM                                     ,
+       I18N_USCRIPT_UNWRITTEN_LANGUAGES                   ,
+       I18N_USCRIPT_UNKNOWN                                       ,
+       I18N_USCRIPT_CARIAN                                                ,
+       I18N_USCRIPT_JAPANESE                                      ,
+       I18N_USCRIPT_LANNA                                                 ,
+       I18N_USCRIPT_LYCIAN                                                ,
+       I18N_USCRIPT_LYDIAN                                                ,
+       I18N_USCRIPT_OL_CHIKI                                      ,
+       I18N_USCRIPT_REJANG                                                ,
+       I18N_USCRIPT_SAURASHTRA                                    ,
+       I18N_USCRIPT_SIGN_WRITING                                  ,
+       I18N_USCRIPT_SUNDANESE                                     ,
+       I18N_USCRIPT_MOON                                                  ,
+       I18N_USCRIPT_MEITEI_MAYEK                                  ,
+       I18N_USCRIPT_IMPERIAL_ARAMAIC                      ,
+       I18N_USCRIPT_AVESTAN                                       ,
+       I18N_USCRIPT_CHAKMA                                                ,
+       I18N_USCRIPT_KOREAN                                                ,
+       I18N_USCRIPT_KAITHI                                                ,
+       I18N_USCRIPT_MANICHAEAN                                    ,
+       I18N_USCRIPT_INSCRIPTIONAL_PAHLAVI                 ,
+       I18N_USCRIPT_PSALTER_PAHLAVI                       ,
+       I18N_USCRIPT_BOOK_PAHLAVI                                  ,
+       I18N_USCRIPT_INSCRIPTIONAL_PARTHIAN                ,
+       I18N_USCRIPT_SAMARITAN                                     ,
+       I18N_USCRIPT_TAI_VIET                                      ,
+       I18N_USCRIPT_MATHEMATICAL_NOTATION                 ,
+       I18N_USCRIPT_SYMBOLS                                       ,
+       I18N_USCRIPT_BAMUM                                                 ,
+       I18N_USCRIPT_LISU                                                  ,
+       I18N_USCRIPT_NAKHI_GEBA                                    ,
+       I18N_USCRIPT_OLD_SOUTH_ARABIAN                     ,
+       I18N_USCRIPT_BASSA_VAH                                     ,
+       I18N_USCRIPT_DUPLOYAN_SHORTAND                     ,
+       I18N_USCRIPT_ELBASAN                                       ,
+       I18N_USCRIPT_GRANTHA                                       ,
+       I18N_USCRIPT_KPELLE                                                ,
+       I18N_USCRIPT_LOMA                                                  ,
+       I18N_USCRIPT_MENDE                                                 ,
+       I18N_USCRIPT_MEROITIC_CURSIVE                      ,
+       I18N_USCRIPT_OLD_NORTH_ARABIAN                     ,
+       I18N_USCRIPT_NABATAEAN                                     ,
+       I18N_USCRIPT_PALMYRENE                                     ,
+       I18N_USCRIPT_SINDHI                                                ,
+       I18N_USCRIPT_WARANG_CITI                                   ,
+       I18N_USCRIPT_AFAKA                                                 ,
+       I18N_USCRIPT_JURCHEN                                       ,
+       I18N_USCRIPT_MRO                                                   ,
+       I18N_USCRIPT_NUSHU                                                 ,
+       I18N_USCRIPT_SHARADA                                       ,
+       I18N_USCRIPT_SORA_SOMPENG                                  ,
+       I18N_USCRIPT_TAKRI                                                 ,
+       I18N_USCRIPT_TANGUT                                                ,
+       I18N_USCRIPT_WOLEAI                                                ,
+       I18N_USCRIPT_ANATOLIAN_HIEROGLYPHS                 ,
+       I18N_USCRIPT_KHOJKI                                                ,
+       I18N_USCRIPT_TIRHUTA                                       ,
+       I18N_USCRIPT_CODE_LIMIT                                    ,
+};
+#endif // _ITS_BASE_UTILS_DISP_NAME_H_
+
index ba2238799efd735c4febe6c264ef9b2cba0025fe..bccdbdfe9e29e81b2c8c610a6110fc8499aa632b 100755 (executable)
@@ -83,6 +83,8 @@ extern void ITs_base_utils_date_interval_fmt_startup(void);
 extern void ITs_base_utils_date_interval_fmt_cleanup(void);
 extern void ITs_base_utils_simple_date_fmt_startup(void);
 extern void ITs_base_utils_simple_date_fmt_cleanup(void);
+extern void ITs_base_utils_loc_disp_names_startup(void);
+extern void ITs_base_utils_loc_disp_names_cleanup(void);
 
 extern int ITc_i18n_ubrk_create_destroy_p(void);
 extern int ITc_i18n_ubrk_create_rules_p(void);
@@ -770,6 +772,22 @@ extern int ITc_i18n_simple_date_fmt_apply_localized_pattern_p(void);
 extern int ITc_i18n_simple_date_fmt_adopt_calendar_p(void);
 extern int ITc_i18n_simple_date_fmt_set_context_p(void);
 
+extern int ITs_base_utils_i18n_loc_disp_names_create_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_create_from_context_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_locale_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_context_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p(void);
+
+
 testcase tc_array[] = {
        {"ITc_i18n_ubrk_create_destroy_p",ITc_i18n_ubrk_create_destroy_p,ITs_base_utils_ubrk_startup,ITs_base_utils_ubrk_cleanup},
        {"ITc_i18n_ubrk_create_rules_p",ITc_i18n_ubrk_create_rules_p,ITs_base_utils_ubrk_startup,ITs_base_utils_ubrk_cleanup},
@@ -1456,6 +1474,20 @@ testcase tc_array[] = {
        {"ITc_i18n_simple_date_fmt_apply_localized_pattern_p", ITc_i18n_simple_date_fmt_apply_localized_pattern_p, ITs_base_utils_simple_date_fmt_startup, ITs_base_utils_simple_date_fmt_cleanup},
        {"ITc_i18n_simple_date_fmt_adopt_calendar_p", ITc_i18n_simple_date_fmt_adopt_calendar_p, ITs_base_utils_simple_date_fmt_startup, ITs_base_utils_simple_date_fmt_cleanup},
        {"ITc_i18n_simple_date_fmt_set_context_p", ITc_i18n_simple_date_fmt_set_context_p, ITs_base_utils_simple_date_fmt_startup, ITs_base_utils_simple_date_fmt_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_create_p", ITs_base_utils_i18n_loc_disp_names_create_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p", ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_create_from_context_p", ITs_base_utils_i18n_loc_disp_names_create_from_context_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_locale_p", ITs_base_utils_i18n_loc_disp_names_get_locale_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p", ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_context_p", ITs_base_utils_i18n_loc_disp_names_get_context_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p", ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
        {NULL, NULL}
 };
 
index 12799dac05a7ef16247495ece9acd29296daa3d5..91e47e99792663420535c0aafeb1ef6b3a8aa033 100755 (executable)
@@ -77,6 +77,8 @@ extern void ITs_base_utils_immutable_idx_startup(void);
 extern void ITs_base_utils_immutable_idx_cleanup(void);
 extern void ITs_base_utils_plural_format_startup(void);
 extern void ITs_base_utils_plural_format_cleanup(void);
+extern void ITs_base_utils_loc_disp_names_startup(void);
+extern void ITs_base_utils_loc_disp_names_cleanup(void);
 
 extern int ITc_i18n_ubrk_create_destroy_p(void);
 extern int ITc_i18n_ubrk_create_rules_p(void);
@@ -734,6 +736,21 @@ extern int ITc_i18n_plural_format_format_double_p(void);
 extern int ITc_i18n_plural_format_format_formattable_p(void);
 extern int ITc_i18n_plural_format_set_number_format_p(void);
 extern int ITc_i18n_plural_format_to_pattern_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_create_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_create_from_context_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_locale_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_context_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p(void);
+
 
 testcase tc_array[] = {
        {"ITc_i18n_ubrk_create_destroy_p",ITc_i18n_ubrk_create_destroy_p,ITs_base_utils_ubrk_startup,ITs_base_utils_ubrk_cleanup},
@@ -1392,6 +1409,20 @@ testcase tc_array[] = {
        {"ITc_i18n_plural_format_format_formattable_p", ITc_i18n_plural_format_format_formattable_p, ITs_base_utils_plural_format_startup, ITs_base_utils_plural_format_cleanup},
        {"ITc_i18n_plural_format_set_number_format_p", ITc_i18n_plural_format_set_number_format_p, ITs_base_utils_plural_format_startup, ITs_base_utils_plural_format_cleanup},
        {"ITc_i18n_plural_format_to_pattern_p", ITc_i18n_plural_format_to_pattern_p, ITs_base_utils_plural_format_startup, ITs_base_utils_plural_format_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_create_p", ITs_base_utils_i18n_loc_disp_names_create_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p", ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_create_from_context_p", ITs_base_utils_i18n_loc_disp_names_create_from_context_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_locale_p", ITs_base_utils_i18n_loc_disp_names_get_locale_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p", ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_context_p", ITs_base_utils_i18n_loc_disp_names_get_context_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p", ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
        {NULL, NULL}
 };
 
index ba2238799efd735c4febe6c264ef9b2cba0025fe..5f5a4293734faacb19509f9334570d9219a456c6 100755 (executable)
@@ -83,6 +83,8 @@ extern void ITs_base_utils_date_interval_fmt_startup(void);
 extern void ITs_base_utils_date_interval_fmt_cleanup(void);
 extern void ITs_base_utils_simple_date_fmt_startup(void);
 extern void ITs_base_utils_simple_date_fmt_cleanup(void);
+extern void ITs_base_utils_loc_disp_names_startup(void);
+extern void ITs_base_utils_loc_disp_names_cleanup(void);
 
 extern int ITc_i18n_ubrk_create_destroy_p(void);
 extern int ITc_i18n_ubrk_create_rules_p(void);
@@ -770,6 +772,22 @@ extern int ITc_i18n_simple_date_fmt_apply_localized_pattern_p(void);
 extern int ITc_i18n_simple_date_fmt_adopt_calendar_p(void);
 extern int ITc_i18n_simple_date_fmt_set_context_p(void);
 
+extern int ITs_base_utils_i18n_loc_disp_names_create_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_create_from_context_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_locale_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_context_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p(void);
+extern int ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p(void);
+
+
 testcase tc_array[] = {
        {"ITc_i18n_ubrk_create_destroy_p",ITc_i18n_ubrk_create_destroy_p,ITs_base_utils_ubrk_startup,ITs_base_utils_ubrk_cleanup},
        {"ITc_i18n_ubrk_create_rules_p",ITc_i18n_ubrk_create_rules_p,ITs_base_utils_ubrk_startup,ITs_base_utils_ubrk_cleanup},
@@ -1455,7 +1473,21 @@ testcase tc_array[] = {
        {"ITc_i18n_simple_date_fmt_apply_pattern_p", ITc_i18n_simple_date_fmt_apply_pattern_p, ITs_base_utils_simple_date_fmt_startup, ITs_base_utils_simple_date_fmt_cleanup},
        {"ITc_i18n_simple_date_fmt_apply_localized_pattern_p", ITc_i18n_simple_date_fmt_apply_localized_pattern_p, ITs_base_utils_simple_date_fmt_startup, ITs_base_utils_simple_date_fmt_cleanup},
        {"ITc_i18n_simple_date_fmt_adopt_calendar_p", ITc_i18n_simple_date_fmt_adopt_calendar_p, ITs_base_utils_simple_date_fmt_startup, ITs_base_utils_simple_date_fmt_cleanup},
-       {"ITc_i18n_simple_date_fmt_set_context_p", ITc_i18n_simple_date_fmt_set_context_p, ITs_base_utils_simple_date_fmt_startup, ITs_base_utils_simple_date_fmt_cleanup},
+       {"ITc_i18n_simple_date_fmt_set_context_p", ITc_i18n_simple_date_fmt_set_context_p, ITs_base_utils_simple_date_fmt_startup, ITs_base_utils_simple_date_fmt_cleanup        },
+       {"ITs_base_utils_i18n_loc_disp_names_create_p", ITs_base_utils_i18n_loc_disp_names_create_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p", ITs_base_utils_i18n_loc_disp_names_create_from_dialect_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_create_from_context_p", ITs_base_utils_i18n_loc_disp_names_create_from_context_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_locale_p", ITs_base_utils_i18n_loc_disp_names_get_locale_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p", ITs_base_utils_i18n_loc_disp_names_get_dialect_handling_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_context_p", ITs_base_utils_i18n_loc_disp_names_get_context_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_loc_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_language_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p", ITs_base_utils_i18n_loc_disp_names_get_script_disp_name_with_script_code_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_region_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_variant_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_key_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
+       {"ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p", ITs_base_utils_i18n_loc_disp_names_get_key_value_disp_name_p, ITs_base_utils_loc_disp_names_startup, ITs_base_utils_loc_disp_names_cleanup},
        {NULL, NULL}
 };