1 // © 2016 and later: Unicode, Inc. and others. 2 // License & terms of use: http://www.unicode.org/copyright.html 3 /******************************************************************** 4 * COPYRIGHT: 5 * Copyright (c) 1997-2007, International Business Machines Corporation and 6 * others. All Rights Reserved. 7 ********************************************************************/ 8 9 #ifndef __IntlCalendarTest__ 10 #define __IntlCalendarTest__ 11 12 #include "unicode/utypes.h" 13 14 #if !UCONFIG_NO_FORMATTING 15 16 #include "unicode/calendar.h" 17 #include "unicode/smpdtfmt.h" 18 #include "caltztst.h" 19 20 class IntlCalendarTest: public CalendarTimeZoneTest { 21 public: 22 // IntlTest override 23 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par ) override; 24 public: 25 void TestTypes(void); 26 27 void TestGregorian(void); 28 29 void TestBuddhist(void); 30 void TestBuddhistFormat(void); 31 void TestBug21043Indian(void); 32 void TestBug21044Hebrew(void); 33 void TestBug21045Islamic(void); 34 void TestBug21046IslamicUmalqura(void); 35 36 void TestTaiwan(void); 37 38 void TestJapanese(void); 39 void TestJapaneseFormat(void); 40 void TestJapanese3860(void); 41 void TestForceGannenNumbering(void); 42 43 void TestPersian(void); 44 void TestPersianFormat(void); 45 46 void TestConsistencyGregorian(void); 47 void TestConsistencyCoptic(void); 48 void TestConsistencyEthiopic(void); 49 void TestConsistencyROC(void); 50 void TestConsistencyChinese(void); 51 void TestConsistencyDangi(void); 52 void TestConsistencyBuddhist(void); 53 void TestConsistencyEthiopicAmeteAlem(void); 54 void TestConsistencyHebrew(void); 55 void TestConsistencyIndian(void); 56 void TestConsistencyIslamic(void); 57 void TestConsistencyIslamicCivil(void); 58 void TestConsistencyIslamicRGSA(void); 59 void TestConsistencyIslamicTBLA(void); 60 void TestConsistencyIslamicUmalqura(void); 61 void TestConsistencyPersian(void); 62 void TestConsistencyJapanese(void); 63 64 protected: 65 // Test a Gregorian-Like calendar 66 void quasiGregorianTest(Calendar& cal, const Locale& gregoLocale, const int32_t *data); 67 void simpleTest(const Locale& loc, const UnicodeString& expect, UDate expectDate, UErrorCode& status); 68 void checkConsistency(const char* locale); 69 70 int32_t daysToCheckInConsistency; 71 72 public: // package 73 // internal routine for checking date 74 static UnicodeString value(Calendar* calendar); 75 76 }; 77 78 79 #endif /* #if !UCONFIG_NO_FORMATTING */ 80 81 #endif // __IntlCalendarTest__ 82