/* ******************************************************************************* * Copyright (C) 1996-2007, International Business Machines Corporation and * * others. All Rights Reserved. * ******************************************************************************* */ #ifndef ITRBNF_H #define ITRBNF_H #include "unicode/utypes.h" #if !UCONFIG_NO_FORMATTING #include "intltest.h" #include "unicode/rbnf.h" class IntlTestRBNF : public IntlTest { public: // IntlTest override virtual void runIndexedTest(int32_t index, UBool exec, const char* &name, char* par); #if U_HAVE_RBNF /** * Perform an API test */ virtual void TestAPI(); /** * Perform a simple spot check on the FractionalRuleSet logic */ virtual void TestFractionalRuleSet(); #if 0 /** * Perform API tests on llong */ virtual void TestLLong(); virtual void TestLLongConstructors(); virtual void TestLLongSimpleOperators(); #endif /** * Perform a simple spot check on the English spellout rules */ virtual void TestEnglishSpellout(); /** * Perform a simple spot check on the English ordinal-abbreviation rules */ virtual void TestOrdinalAbbreviations(); /** * Perform a simple spot check on the duration-formatting rules */ virtual void TestDurations(); /** * Perform a simple spot check on the Spanish spellout rules */ virtual void TestSpanishSpellout(); /** * Perform a simple spot check on the French spellout rules */ virtual void TestFrenchSpellout(); /** * Perform a simple spot check on the Swiss French spellout rules */ virtual void TestSwissFrenchSpellout(); /** * Check that Belgian French matches Swiss French spellout rules */ virtual void TestBelgianFrenchSpellout(); /** * Perform a simple spot check on the Italian spellout rules */ virtual void TestItalianSpellout(); /** * Perform a simple spot check on the Portuguese spellout rules */ virtual void TestPortugueseSpellout(); /** * Perform a simple spot check on the German spellout rules */ virtual void TestGermanSpellout(); /** * Perform a simple spot check on the Thai spellout rules */ virtual void TestThaiSpellout(); /** * Perform a simple spot check on the Swedish spellout rules */ virtual void TestSwedishSpellout(); /** * Perform a simple spot check on small values */ virtual void TestSmallValues(); /** * Test localizations using string data. */ virtual void TestLocalizations(); /** * Test that all locales construct ok. */ virtual void TestAllLocales(); /** * Test that hebrew fractions format without trailing '<' */ virtual void TestHebrewFraction(); /** * Regression test, don't truncate * when doing multiplier substitution to a number format rule. */ virtual void TestMultiplierSubstitution(); protected: virtual void doTest(RuleBasedNumberFormat* formatter, const char* const testData[][2], UBool testParsing); virtual void doLenientParseTest(RuleBasedNumberFormat* formatter, const char* testData[][2]); /* U_HAVE_RBNF */ #else virtual void TestRBNFDisabled(); /* U_HAVE_RBNF */ #endif }; #endif /* #if !UCONFIG_NO_FORMATTING */ // endif ITRBNF_H #endif