• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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