1 // 2016 and later: Unicode, Inc. and others. 2 // License & terms of use: http://www.unicode.org/copyright.html 3 /******************************************************************** 4 * COPYRIGHT: 5 * Copyright (c) 1997-2014, International Business Machines Corporation and 6 * others. All Rights Reserved. 7 ********************************************************************/ 8 /******************************************************************************** 9 * 10 * File CLOCTST.H 11 * 12 * Modification History: 13 * Name Description 14 * Madhu Katragadda Converted to C 15 ********************************************************************************* 16 */ 17 #ifndef _CLOCTEST 18 #define _CLOCTEST 19 20 #include "cintltst.h" 21 /*C API TEST FOR LOCALE */ 22 23 /** 24 * Test functions to set and get data fields 25 **/ 26 static void TestBasicGetters(void); 27 static void TestPrefixes(void); 28 /** 29 * Use Locale to access Resource file data and compare against expected values 30 **/ 31 static void TestSimpleResourceInfo(void); 32 /** 33 * Use Locale to access Resource file display names and compare against expected values 34 **/ 35 static void TestDisplayNames(void); 36 /** 37 * Test getAvailableLocales 38 **/ 39 static void TestGetAvailableLocales(void); 40 /** 41 * Test functions to set and access a custom data directory 42 **/ 43 static void TestDataDirectory(void); 44 /** 45 * Test functions to test get ISO countries and Languages 46 **/ 47 static void TestISOFunctions(void); 48 /** 49 * Test functions to test get ISO3 countries and Languages Fallback 50 **/ 51 static void TestISO3Fallback(void); 52 /** 53 * Test functions to test get ISO3 countries and Languages for Uninstalled locales 54 **/ 55 static void TestUninstalledISO3Names(void); 56 static void TestObsoleteNames(void); 57 /** 58 * Test functions uloc_getDisplaynames() 59 **/ 60 static void TestSimpleDisplayNames(void); 61 /** 62 * Test functions uloc_getDisplaynames() 63 **/ 64 static void TestVariantParsing(void); 65 66 /* Test getting keyword enumeratin */ 67 static void TestKeywordVariants(void); 68 69 static void TestKeywordSet(void); 70 static void TestKeywordSetError(void); 71 72 /* Test getting keyword values */ 73 static void TestKeywordVariantParsing(void); 74 75 /* Test warning for no data in getDisplay* */ 76 static void TestDisplayNameWarning(void); 77 78 /* Test uloc_getLocaleForLCID */ 79 static void TestGetLocaleForLCID(void); 80 81 /** 82 * routine to perform subtests, used by TestDisplayNames 83 */ 84 static void doTestDisplayNames(const char* inLocale, int32_t compareIndex); 85 86 static void TestCanonicalization(void); 87 static void TestCanonicalizationBuffer(void); 88 89 static void TestDisplayKeywords(void); 90 91 static void TestDisplayKeywordValues(void); 92 93 static void TestGetBaseName(void); 94 95 static void TestTrailingNull(void); 96 97 static void TestGetLocale(void); 98 99 /** 100 * additional intialization for datatables storing expected values 101 */ 102 static void setUpDataTable(void); 103 static void cleanUpDataTable(void); 104 /*static void displayDataTable(void);*/ 105 static void TestAcceptLanguage(void); 106 107 /** 108 * test locale aliases 109 */ 110 static void TestCalendar(void); 111 static void TestDateFormat(void); 112 static void TestCollation(void); 113 static void TestULocale(void); 114 static void TestUResourceBundle(void); 115 static void TestDisplayName(void); 116 117 static void TestAcceptLanguage(void); 118 119 static void TestOrientation(void); 120 121 static void TestLikelySubtags(void); 122 123 /** 124 * lanuage tag 125 */ 126 static void TestForLanguageTag(void); 127 static void TestInvalidLanguageTag(void); 128 static void TestToLanguageTag(void); 129 static void TestLangAndRegionCanonicalize(void); 130 131 static void TestToUnicodeLocaleKey(void); 132 static void TestToLegacyKey(void); 133 static void TestToUnicodeLocaleType(void); 134 static void TestToLegacyType(void); 135 136 /** 137 * locale data 138 */ 139 static void TestEnglishExemplarCharacters(void); 140 141 #endif 142