• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /********************************************************************
2  * COPYRIGHT:
3  * Copyright (c) 2002-2007, 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 
17 class RegexTest: public IntlTest {
18 public:
19 
20     RegexTest();
21     virtual ~RegexTest();
22 
23     virtual void runIndexedTest(int32_t index, UBool exec, const char* &name, char* par = NULL );
24 
25     // The following are test functions that are visible from the intltest test framework.
26     virtual void API_Match();
27     virtual void API_Pattern();
28     virtual void API_Replace();
29     virtual void Basic();
30     virtual void Extended();
31     virtual void Errors();
32     virtual void PerlTests();
33 
34     // The following functions are internal to the regexp tests.
35     virtual UBool doRegexLMTest(const char *pat, const char *text, UBool looking, UBool match, int32_t line);
36     virtual void regex_find(const UnicodeString &pat, const UnicodeString &flags,
37         const UnicodeString &input, int32_t line);
38     virtual void regex_err(const char *pat, int32_t errline, int32_t errcol,
39                             UErrorCode expectedStatus, int32_t line);
40     virtual UChar *ReadAndConvertFile(const char *fileName, int32_t &len, const char *charset, UErrorCode &status);
41     virtual const char *getPath(char buffer[2048], const char *filename);
42 
43 };
44 
45 #endif   // !UCONFIG_NO_REGULAR_EXPRESSIONS
46 #endif
47