]> git.saurik.com Git - apple/icu.git/blame - icuSources/test/intltest/dtifmtts.h
ICU-531.48.tar.gz
[apple/icu.git] / icuSources / test / intltest / dtifmtts.h
CommitLineData
46f4442e
A
1/********************************************************************
2 * COPYRIGHT:
51004dcb 3 * Copyright (c) 2008-2013 International Business Machines Corporation and
46f4442e
A
4 * others. All Rights Reserved.
5 ********************************************************************/
6
7#ifndef _INTLTESTDATEINTERVALFORMAT
8#define _INTLTESTDATEINTERVALFORMAT
9
10#include "unicode/utypes.h"
11#include "unicode/locid.h"
12
13#if !UCONFIG_NO_FORMATTING
14
15#include "intltest.h"
16
17/**
18 * Test basic functionality of various API functions
19 **/
20class DateIntervalFormatTest: public IntlTest {
21 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
22
23public:
24 /**
25 * Performs tests on many API functions, see detailed comments in source code
26 **/
27 void testAPI();
28
29 /**
30 * Test formatting
31 */
32 void testFormat();
33
34 /**
35 * Test formatting using user defined DateIntervalInfo
36 */
37 void testFormatUserDII();
38
51004dcb
A
39 /**
40 * Test for no unwanted side effects when setting
41 * interval patterns.
42 */
43 void testSetIntervalPatternNoSideEffect();
44
57a6839d
A
45 /**
46 * Tests different year formats.
47 */
48 void testYearFormats();
49
46f4442e
A
50 /**
51 * Stress test -- stress test formatting on 40 locales
52 */
53 void testStress();
54
55private:
56 /**
57 * Test formatting against expected result
58 */
59 void expect(const char** data, int32_t data_length);
60
61 /**
62 * Test formatting against expected result using user defined
63 * DateIntervalInfo
64 */
65 void expectUserDII(const char** data, int32_t data_length);
66
67 /**
68 * Stress test formatting
69 */
70 void stress(const char** data, int32_t data_length, const Locale& loc,
71 const char* locName);
72};
73
74#endif /* #if !UCONFIG_NO_FORMATTING */
75
76#endif