| /* | 
 |  ******************************************************************************* | 
 |  * Copyright (C) 1996-2006, International Business Machines Corporation and    * | 
 |  * others. All Rights Reserved.                                                * | 
 |  ******************************************************************************* | 
 |  */ | 
 |  | 
 | #ifndef ITRBNFRT_H | 
 | #define ITRBNFRT_H | 
 |  | 
 | #include "unicode/utypes.h" | 
 |  | 
 | #if !UCONFIG_NO_FORMATTING | 
 |  | 
 | #include "intltest.h" | 
 | #include "unicode/rbnf.h" | 
 |  | 
 | class RbnfRoundTripTest : public IntlTest { | 
 |  | 
 |   // IntlTest override | 
 |   virtual void runIndexedTest(int32_t index, UBool exec, const char* &name, char* par); | 
 |  | 
 | #if U_HAVE_RBNF | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the English spellout rules | 
 |    */ | 
 |   virtual void TestEnglishSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the duration-formatting rules | 
 |    */ | 
 |   virtual void TestDurationsRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the Spanish spellout rules | 
 |    */ | 
 |   virtual void TestSpanishSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the French spellout rules | 
 |    */ | 
 |   virtual void TestFrenchSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the Swiss French spellout rules | 
 |    */ | 
 |   virtual void TestSwissFrenchSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the Italian spellout rules | 
 |    */ | 
 |   virtual void TestItalianSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the German spellout rules | 
 |    */ | 
 |   virtual void TestGermanSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the Swedish spellout rules | 
 |    */ | 
 |   virtual void TestSwedishSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the Dutch spellout rules | 
 |    */ | 
 |   virtual void TestDutchSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the Japanese spellout rules | 
 |    */ | 
 |   virtual void TestJapaneseSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the Russian spellout rules | 
 |    */ | 
 |   virtual void TestRussianSpelloutRT(); | 
 |  | 
 |   /** | 
 |    * Perform an exhaustive round-trip test on the Portuguese spellout rules | 
 |    */ | 
 |   virtual void TestPortugueseSpelloutRT(); | 
 |  | 
 |  protected: | 
 |   void doTest(const RuleBasedNumberFormat* formatter,  double lowLimit, double highLimit); | 
 |  | 
 |   /* U_HAVE_RBNF */ | 
 | #else | 
 |  | 
 |   void TestRBNFDisabled(); | 
 |  | 
 |   /* U_HAVE_RBNF */ | 
 | #endif | 
 | }; | 
 |  | 
 | #endif /* #if !UCONFIG_NO_FORMATTING */ | 
 |  | 
 | // endif ITRBNFRT_H | 
 | #endif |