]> git.saurik.com Git - apple/icu.git/blob - icuSources/test/intltest/regextst.h
ICU-461.13.tar.gz
[apple/icu.git] / icuSources / test / intltest / regextst.h
1 /********************************************************************
2 * COPYRIGHT:
3 * Copyright (c) 2002-2010, International Business Machines Corporation and
4 * others. All Rights Reserved.
5 ********************************************************************/
6
7
8 #ifndef REGEXTST_H
9 #define REGEXTST_H
10
11 #include "unicode/utypes.h"
12 #if !UCONFIG_NO_REGULAR_EXPRESSIONS
13
14 #include "intltest.h"
15
16 struct UText;
17 typedef struct UText UText;
18
19 class RegexTest: public IntlTest {
20 public:
21
22 RegexTest();
23 virtual ~RegexTest();
24
25 virtual void runIndexedTest(int32_t index, UBool exec, const char* &name, char* par = NULL );
26
27 // The following are test functions that are visible from the intltest test framework.
28 virtual void API_Match();
29 virtual void API_Pattern();
30 virtual void API_Replace();
31 virtual void Basic();
32 virtual void Extended();
33 virtual void Errors();
34 virtual void PerlTests();
35 virtual void Bug6149();
36 virtual void Callbacks();
37 virtual void FindProgressCallbacks();
38 virtual void UTextBasic();
39 virtual void API_Match_UTF8();
40 virtual void API_Pattern_UTF8();
41 virtual void API_Replace_UTF8();
42 virtual void PerlTestsUTF8();
43 virtual void PreAllocatedUTextCAPI();
44 virtual void Bug7651();
45 virtual void Bug7740();
46
47 // The following functions are internal to the regexp tests.
48 virtual void assertUText(const char *expected, UText *actual, const char *file, int line);
49 virtual void assertUTextInvariant(const char *invariant, UText *actual, const char *file, int line);
50 virtual UBool doRegexLMTest(const char *pat, const char *text, UBool looking, UBool match, int32_t line);
51 virtual UBool doRegexLMTestUTF8(const char *pat, const char *text, UBool looking, UBool match, int32_t line);
52 virtual void regex_find(const UnicodeString &pat, const UnicodeString &flags,
53 const UnicodeString &input, const char *srcPath, int32_t line);
54 virtual void regex_err(const char *pat, int32_t errline, int32_t errcol,
55 UErrorCode expectedStatus, int32_t line);
56 virtual UChar *ReadAndConvertFile(const char *fileName, int32_t &len, const char *charset, UErrorCode &status);
57 virtual const char *getPath(char buffer[2048], const char *filename);
58
59 };
60
61 #endif // !UCONFIG_NO_REGULAR_EXPRESSIONS
62 #endif