16f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/******************************************************************** 26f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * COPYRIGHT: 36f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Copyright (c) 1997-2013, International Business Machines Corporation and 46f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * others. All Rights Reserved. 56f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org ********************************************************************/ 66f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/******************************************************************************** 76f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 86f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* File CLOCTST.H 96f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* 106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* Modification History: 116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* Name Description 126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org* Madhu Katragadda Converted to C 136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org********************************************************************************* 146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org*/ 156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#ifndef _CLOCTEST 166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#define _CLOCTEST 176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#include "cintltst.h" 196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/*C API TEST FOR LOCALE */ 206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Test functions to set and get data fields 236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestBasicGetters(void); 256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestPrefixes(void); 266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Use Locale to access Resource file data and compare against expected values 286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestSimpleResourceInfo(void); 306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Use Locale to access Resource file display names and compare against expected values 326f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 336f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestDisplayNames(void); 346f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 356f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Test getAvailableLocales 366f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 376f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestGetAvailableLocales(void); 386f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 396f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Test functions to set and access a custom data directory 406f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 416f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestDataDirectory(void); 426f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 436f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Test functions to test get ISO countries and Languages 446f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 456f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestISOFunctions(void); 466f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 476f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Test functions to test get ISO3 countries and Languages Fallback 486f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 496f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestISO3Fallback(void); 506f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 516f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Test functions to test get ISO3 countries and Languages for Uninstalled locales 526f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 536f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestUninstalledISO3Names(void); 546f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestObsoleteNames(void); 556f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 566f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Test functions uloc_getDisplaynames() 576f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 586f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestSimpleDisplayNames(void); 596f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 606f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * Test functions uloc_getDisplaynames() 616f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org **/ 626f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestVariantParsing(void); 636f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 646f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* Test getting keyword enumeratin */ 656f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestKeywordVariants(void); 666f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 676f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestKeywordSet(void); 686f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestKeywordSetError(void); 696f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 706f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* Test getting keyword values */ 716f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestKeywordVariantParsing(void); 726f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 736f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* Test warning for no data in getDisplay* */ 746f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestDisplayNameWarning(void); 756f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 766f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org /* Test uloc_getLocaleForLCID */ 776f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestGetLocaleForLCID(void); 786f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 796f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 806f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * routine to perform subtests, used by TestDisplayNames 816f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 826f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void doTestDisplayNames(const char* inLocale, int32_t compareIndex); 836f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 846f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestCanonicalization(void); 856f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 866f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestDisplayKeywords(void); 876f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 886f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestDisplayKeywordValues(void); 896f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 906f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org static void TestGetBaseName(void); 916f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 926f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestTrailingNull(void); 936f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 946f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestGetLocale(void); 956f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 966f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 976f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * additional intialization for datatables storing expected values 986f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 996f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void setUpDataTable(void); 1006f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void cleanUpDataTable(void); 1016f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/*static void displayDataTable(void);*/ 1026f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestAcceptLanguage(void); 1036f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1046f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 1056f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * test locale aliases 1066f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org*/ 1076f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestCalendar(void); 1086f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestDateFormat(void); 1096f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestCollation(void); 1106f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestULocale(void); 1116f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestUResourceBundle(void); 1126f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestDisplayName(void); 1136f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1146f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestAcceptLanguage(void); 1156f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1166f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestOrientation(void); 1176f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1186f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestLikelySubtags(void); 1196f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1206f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 1216f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * lanuage tag 1226f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 1236f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestForLanguageTag(void); 1246f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestToLanguageTag(void); 1256f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1266f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org/** 1276f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org * locale data 1286f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org */ 1296f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.orgstatic void TestEnglishExemplarCharacters(void); 1306f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org 1316f31ac30b9092fd02a8c97e5216cf53f3e4fae4jshin@chromium.org#endif 132