1 /* 2 ******************************************************************************* 3 * Copyright (C) 1996-2006, International Business Machines Corporation and * 4 * others. All Rights Reserved. * 5 ******************************************************************************* 6 */ 7 8 #ifndef ITRBNFRT_H 9 #define ITRBNFRT_H 10 11 #include "unicode/utypes.h" 12 13 #if !UCONFIG_NO_FORMATTING 14 15 #include "intltest.h" 16 #include "unicode/rbnf.h" 17 18 class RbnfRoundTripTest : public IntlTest { 19 20 // IntlTest override 21 virtual void runIndexedTest(int32_t index, UBool exec, const char* &name, char* par); 22 23 #if U_HAVE_RBNF 24 /** 25 * Perform an exhaustive round-trip test on the English spellout rules 26 */ 27 virtual void TestEnglishSpelloutRT(); 28 29 /** 30 * Perform an exhaustive round-trip test on the duration-formatting rules 31 */ 32 virtual void TestDurationsRT(); 33 34 /** 35 * Perform an exhaustive round-trip test on the Spanish spellout rules 36 */ 37 virtual void TestSpanishSpelloutRT(); 38 39 /** 40 * Perform an exhaustive round-trip test on the French spellout rules 41 */ 42 virtual void TestFrenchSpelloutRT(); 43 44 /** 45 * Perform an exhaustive round-trip test on the Swiss French spellout rules 46 */ 47 virtual void TestSwissFrenchSpelloutRT(); 48 49 /** 50 * Perform an exhaustive round-trip test on the Italian spellout rules 51 */ 52 virtual void TestItalianSpelloutRT(); 53 54 /** 55 * Perform an exhaustive round-trip test on the German spellout rules 56 */ 57 virtual void TestGermanSpelloutRT(); 58 59 /** 60 * Perform an exhaustive round-trip test on the Swedish spellout rules 61 */ 62 virtual void TestSwedishSpelloutRT(); 63 64 /** 65 * Perform an exhaustive round-trip test on the Dutch spellout rules 66 */ 67 virtual void TestDutchSpelloutRT(); 68 69 /** 70 * Perform an exhaustive round-trip test on the Japanese spellout rules 71 */ 72 virtual void TestJapaneseSpelloutRT(); 73 74 /** 75 * Perform an exhaustive round-trip test on the Russian spellout rules 76 */ 77 virtual void TestRussianSpelloutRT(); 78 79 /** 80 * Perform an exhaustive round-trip test on the Portuguese spellout rules 81 */ 82 virtual void TestPortugueseSpelloutRT(); 83 84 protected: 85 void doTest(const RuleBasedNumberFormat* formatter, double lowLimit, double highLimit); 86 87 /* U_HAVE_RBNF */ 88 #else 89 90 void TestRBNFDisabled(); 91 92 /* U_HAVE_RBNF */ 93 #endif 94 }; 95 96 #endif /* #if !UCONFIG_NO_FORMATTING */ 97 98 // endif ITRBNFRT_H 99 #endif 100