summaryrefslogtreecommitdiff
path: root/Build/source/libs/icu/icu-4.8.1/test/cintltst/ccaltst.h
blob: 54f1a43d12772d8a31dcacf99eeece74329027c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/********************************************************************
 * COPYRIGHT: 
 * Copyright (c) 1997-2010, 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"

#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);

/*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