1 // © 2018 and later: Unicode, Inc. and others. 2 // License & terms of use: http://www.unicode.org/copyright.html 3 4 #include "intltest.h" 5 #include "unicode/localebuilder.h" 6 7 8 /** 9 * Tests for the LocaleBuilder class 10 **/ 11 class LocaleBuilderTest: public IntlTest { 12 public: 13 LocaleBuilderTest(); 14 virtual ~LocaleBuilderTest(); 15 16 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = nullptr ) override; 17 18 void TestAddRemoveUnicodeLocaleAttribute(); 19 void TestAddRemoveUnicodeLocaleAttributeWellFormed(); 20 void TestAddUnicodeLocaleAttributeIllFormed(); 21 void TestLocaleBuilder(); 22 void TestLocaleBuilderBasic(); 23 void TestLocaleBuilderBasicWithExtensionsOnDefaultLocale(); 24 void TestPosixCases(); 25 void TestSetExtensionOthers(); 26 void TestSetExtensionPU(); 27 void TestSetExtensionT(); 28 void TestSetExtensionU(); 29 void TestSetExtensionValidateOthersIllFormed(); 30 void TestSetExtensionValidateOthersWellFormed(); 31 void TestSetExtensionValidatePUIllFormed(); 32 void TestSetExtensionValidatePUWellFormed(); 33 void TestSetExtensionValidateTIllFormed(); 34 void TestSetExtensionValidateTWellFormed(); 35 void TestSetExtensionValidateUIllFormed(); 36 void TestSetExtensionValidateUWellFormed(); 37 void TestSetLanguageIllFormed(); 38 void TestSetLanguageWellFormed(); 39 void TestSetLocale(); 40 void TestSetRegionIllFormed(); 41 void TestSetRegionWellFormed(); 42 void TestSetScriptIllFormed(); 43 void TestSetScriptWellFormed(); 44 void TestSetUnicodeLocaleKeywordIllFormedKey(); 45 void TestSetUnicodeLocaleKeywordIllFormedValue(); 46 void TestSetUnicodeLocaleKeywordWellFormed(); 47 void TestSetVariantIllFormed(); 48 void TestSetVariantWellFormed(); 49 50 private: 51 void Verify(LocaleBuilder& bld, const char* expected, const char* msg); 52 }; 53