// © 2016 and later: Unicode, Inc. and others. // License & terms of use: http://www.unicode.org/copyright.html /******************************************************************** * COPYRIGHT: * Copyright (c) 1997-2012, International Business Machines Corporation and * others. All Rights Reserved. ********************************************************************/ /******************************************************************************** * * File CAPITEST.H * * Modification History: * Name Description * Madhu Katragadda Creation *********************************************************************************/ /* C API TEST FOR CALENDAR */ #ifndef _CCALTST #define _CCALTST #include "unicode/utypes.h" #include "unicode/ucal.h" #include "unicode/udat.h" #if !UCONFIG_NO_FORMATTING #include "cintltst.h" /** * The function used to test the Calendar API **/ static void TestCalendar(void); /** * The function used to test getMillis, setMillis, setDate and setDateTime functions extensively **/ static void TestGetSetDateAPI(void); /** * This function is used to test and confirm the functioning of * the calendar get and set functions of calendar fields. **/ static void TestFieldGetSet(void); /** * Execute and test adding and rolling extensively. **/ static void TestAddRollExtensive(void); /** *Testing the Limits for various Fields of Calendar **/ static void TestGetLimits(void); /** * Test that the days of the week progress properly when add is called repeatedly * for increments of 24 days. **/ static void TestDOWProgression(void); /** * Confirm that the offset between local time and GMT behaves as expected. **/ static void TestGMTvsLocal(void); /** * test subroutine used by TestGMTvsLocal() */ static void testZones(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t); /** * Test getKeywordValuesForLocale API */ static void TestGetKeywordValuesForLocale(void); /** * Test weekend-related APIs */ static void TestWeekend(void); /** * Test ambiguous wall time */ static void TestAmbiguousWallTime(void); /*Internal functions used*/ /** * test subroutines used by TestAddRollExtensive() **/ static void checkDate(UCalendar* c, int32_t y, int32_t m, int32_t d); static void checkDateTime(UCalendar* c, int32_t y, int32_t m, int32_t d, int32_t hr, int32_t min, int32_t sec, int32_t ms, UCalendarDateFields field); /** * test subroutines used by TestGetSetDateAPI and TestFieldGetSet **/ static void verify1(const char* msg, UCalendar* c, UDateFormat* dat, int32_t year, int32_t month, int32_t day); static void verify2(const char* msg, UCalendar* c, UDateFormat* dat, int32_t year, int32_t month, int32_t day, int32_t hour, int32_t min, int32_t sec, int32_t am_pm); #endif /* #if !UCONFIG_NO_FORMATTING */ #endif