1 // Copyright (C) 2016 and later: Unicode, Inc. and others. 2 // License & terms of use: http://www.unicode.org/copyright.html 3 4 /******************************************************************** 5 * COPYRIGHT: 6 * Copyright (c) 1997-2008, International Business Machines Corporation and 7 * others. All Rights Reserved. 8 ********************************************************************/ 9 10 /** 11 * TestChoiceFormat is a third level test class 12 */ 13 14 #include "unicode/utypes.h" 15 16 #if !UCONFIG_NO_FORMATTING 17 18 #include "intltest.h" 19 20 21 /** 22 * tests Choice Format, functionality of examples, as well as API functionality 23 **/ 24 class TestChoiceFormat: public IntlTest { 25 /** 26 * tests basic functionality in a simple example 27 **/ 28 void TestSimpleExample(void); 29 /** 30 * tests functionality in a more complex example, 31 * and extensive API functionality. 32 * See verbose message output statements for specifically tested API 33 **/ 34 void TestComplexExample(void); 35 36 /** 37 * Test new closure API 38 */ 39 void TestClosures(void); 40 41 /** 42 * Test applyPattern 43 */ 44 void TestPatterns(void); 45 void TestChoiceFormatToPatternOverflow(void); 46 47 void _testPattern(const char* pattern, 48 UBool isValid, 49 double v1, const char* str1, 50 double v2, const char* str2, 51 double v3, const char* str3); 52 /** 53 * runs tests in local funtions: 54 **/ 55 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); 56 }; 57 58 #endif /* #if !UCONFIG_NO_FORMATTING */ 59