]> git.saurik.com Git - apple/icu.git/blame - icuSources/test/intltest/dtifmtts.h
ICU-511.32.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
46f4442e
A
45 /**
46 * Stress test -- stress test formatting on 40 locales
47 */
48 void testStress();
49
50private:
51 /**
52 * Test formatting against expected result
53 */
54 void expect(const char** data, int32_t data_length);
55
56 /**
57 * Test formatting against expected result using user defined
58 * DateIntervalInfo
59 */
60 void expectUserDII(const char** data, int32_t data_length);
61
62 /**
63 * Stress test formatting
64 */
65 void stress(const char** data, int32_t data_length, const Locale& loc,
66 const char* locName);
67};
68
69#endif /* #if !UCONFIG_NO_FORMATTING */
70
71#endif