12e5b6d6dSopenharmony_ci// © 2016 and later: Unicode, Inc. and others.
22e5b6d6dSopenharmony_ci// License & terms of use: http://www.unicode.org/copyright.html
32e5b6d6dSopenharmony_ci/********************************************************************
42e5b6d6dSopenharmony_ci * COPYRIGHT:
52e5b6d6dSopenharmony_ci * Copyright (c) 1997-2012, International Business Machines Corporation and
62e5b6d6dSopenharmony_ci * others. All Rights Reserved.
72e5b6d6dSopenharmony_ci ********************************************************************/
82e5b6d6dSopenharmony_ci
92e5b6d6dSopenharmony_ci#ifndef _CALENDARREGRESSIONTEST_
102e5b6d6dSopenharmony_ci#define _CALENDARREGRESSIONTEST_
112e5b6d6dSopenharmony_ci
122e5b6d6dSopenharmony_ci#include "unicode/utypes.h"
132e5b6d6dSopenharmony_ci
142e5b6d6dSopenharmony_ci#if !UCONFIG_NO_FORMATTING
152e5b6d6dSopenharmony_ci
162e5b6d6dSopenharmony_ci#include "unicode/calendar.h"
172e5b6d6dSopenharmony_ci#include "unicode/gregocal.h"
182e5b6d6dSopenharmony_ci#include "intltest.h"
192e5b6d6dSopenharmony_ci
202e5b6d6dSopenharmony_ci/**
212e5b6d6dSopenharmony_ci * Performs regression test for Calendar
222e5b6d6dSopenharmony_ci **/
232e5b6d6dSopenharmony_ciclass CalendarRegressionTest: public IntlTest {
242e5b6d6dSopenharmony_ci
252e5b6d6dSopenharmony_ci    // IntlTest override
262e5b6d6dSopenharmony_ci    void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par ) override;
272e5b6d6dSopenharmony_cipublic:
282e5b6d6dSopenharmony_ci    void test4100311(void);
292e5b6d6dSopenharmony_ci    void test4074758(void);
302e5b6d6dSopenharmony_ci    void test4028518(void);
312e5b6d6dSopenharmony_ci    void test4031502(void) ;
322e5b6d6dSopenharmony_ci    void test4035301(void) ;
332e5b6d6dSopenharmony_ci    void test4040996(void) ;
342e5b6d6dSopenharmony_ci    void test4051765(void) ;
352e5b6d6dSopenharmony_ci    void test4059654(void) ;
362e5b6d6dSopenharmony_ci    void test4061476(void) ;
372e5b6d6dSopenharmony_ci    void test4070502(void) ;
382e5b6d6dSopenharmony_ci    void test4071197(void) ;
392e5b6d6dSopenharmony_ci    void test4071385(void) ;
402e5b6d6dSopenharmony_ci    void test4073929(void) ;
412e5b6d6dSopenharmony_ci    void test4083167(void) ;
422e5b6d6dSopenharmony_ci    void test4086724(void) ;
432e5b6d6dSopenharmony_ci    void test4092362(void) ;
442e5b6d6dSopenharmony_ci    void test4095407(void) ;
452e5b6d6dSopenharmony_ci    void test4096231(void) ;
462e5b6d6dSopenharmony_ci    void test4096539(void) ;
472e5b6d6dSopenharmony_ci    void test41003112(void) ;
482e5b6d6dSopenharmony_ci    void test4103271(void) ;
492e5b6d6dSopenharmony_ci    void test4106136(void) ;
502e5b6d6dSopenharmony_ci    void test4108764(void) ;
512e5b6d6dSopenharmony_ci    void test4114578(void) ;
522e5b6d6dSopenharmony_ci    void test4118384(void) ;
532e5b6d6dSopenharmony_ci    void test4125881(void) ;
542e5b6d6dSopenharmony_ci    void test4125892(void) ;
552e5b6d6dSopenharmony_ci    void test4141665(void) ;
562e5b6d6dSopenharmony_ci    void test4142933(void) ;
572e5b6d6dSopenharmony_ci    void test4145158(void) ;
582e5b6d6dSopenharmony_ci    void test4145983(void) ;
592e5b6d6dSopenharmony_ci    void test4147269(void) ;
602e5b6d6dSopenharmony_ci
612e5b6d6dSopenharmony_ci    void Test4149677(void) ;
622e5b6d6dSopenharmony_ci    void Test4162587(void) ;
632e5b6d6dSopenharmony_ci    void Test4165343(void) ;
642e5b6d6dSopenharmony_ci    void Test4166109(void) ;
652e5b6d6dSopenharmony_ci    void Test4167060(void) ;
662e5b6d6dSopenharmony_ci    void Test4197699(void);
672e5b6d6dSopenharmony_ci    void TestJ81(void);
682e5b6d6dSopenharmony_ci    void TestJ438(void);
692e5b6d6dSopenharmony_ci    void TestT5555(void);
702e5b6d6dSopenharmony_ci    void TestT6745(void);
712e5b6d6dSopenharmony_ci	void TestT8057(void);
722e5b6d6dSopenharmony_ci    void TestLeapFieldDifference(void);
732e5b6d6dSopenharmony_ci    void TestMalaysianInstance(void);
742e5b6d6dSopenharmony_ci    void TestWeekShift(void);
752e5b6d6dSopenharmony_ci    void TestTimeZoneTransitionAdd(void);
762e5b6d6dSopenharmony_ci    void TestDeprecates(void);
772e5b6d6dSopenharmony_ci    void TestT8596(void);
782e5b6d6dSopenharmony_ci    void Test9019(void);
792e5b6d6dSopenharmony_ci    void TestT9452(void);
802e5b6d6dSopenharmony_ci    void TestT11632(void);
812e5b6d6dSopenharmony_ci    void TestPersianCalOverflow(void);
822e5b6d6dSopenharmony_ci    void TestIslamicCalOverflow(void);
832e5b6d6dSopenharmony_ci    void TestWeekOfYear13548(void);
842e5b6d6dSopenharmony_ci    void TestUTCWrongAMPM22023(void);
852e5b6d6dSopenharmony_ci    void TestAsiaManilaAfterSetGregorianChange22043(void);
862e5b6d6dSopenharmony_ci
872e5b6d6dSopenharmony_ci    void Test13745(void);
882e5b6d6dSopenharmony_ci
892e5b6d6dSopenharmony_ci    void printdate(GregorianCalendar *cal, const char *string);
902e5b6d6dSopenharmony_ci    void dowTest(UBool lenient) ;
912e5b6d6dSopenharmony_ci
922e5b6d6dSopenharmony_ci    void VerifyGetStayInBound(double test_value);
932e5b6d6dSopenharmony_ci    void VerifyNoAssertWithSetGregorianChange(const char* timezone);
942e5b6d6dSopenharmony_ci
952e5b6d6dSopenharmony_ci    static UDate getAssociatedDate(UDate d, UErrorCode& status);
962e5b6d6dSopenharmony_ci    static UDate makeDate(int32_t y, int32_t m = 0, int32_t d = 0, int32_t hr = 0, int32_t min = 0, int32_t sec = 0);
972e5b6d6dSopenharmony_ci
982e5b6d6dSopenharmony_ci    static const UDate EARLIEST_SUPPORTED_MILLIS;
992e5b6d6dSopenharmony_ci    static const UDate LATEST_SUPPORTED_MILLIS;
1002e5b6d6dSopenharmony_ci    static const char* FIELD_NAME[];
1012e5b6d6dSopenharmony_ci
1022e5b6d6dSopenharmony_ciprotected:
1032e5b6d6dSopenharmony_ci    UBool failure(UErrorCode status, const char* msg);
1042e5b6d6dSopenharmony_ci};
1052e5b6d6dSopenharmony_ci
1062e5b6d6dSopenharmony_ci#endif /* #if !UCONFIG_NO_FORMATTING */
1072e5b6d6dSopenharmony_ci
1082e5b6d6dSopenharmony_ci#endif // _CALENDARREGRESSIONTEST_
1092e5b6d6dSopenharmony_ci//eof
110