Imported Upstream version 58.2
[platform/upstream/icu.git] / source / test / intltest / restest.h
1 // Copyright (C) 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /********************************************************************
4  * COPYRIGHT: 
5  * Copyright (c) 1997-2003, International Business Machines Corporation and
6  * others. All Rights Reserved.
7  ********************************************************************/
8
9 #ifndef RESOURCEBUNDLETEST_H
10 #define RESOURCEBUNDLETEST_H
11
12 #include "intltest.h"
13
14 /**
15  * Tests for class ResourceBundle
16  **/
17 class ResourceBundleTest: public IntlTest {
18 public:
19     ResourceBundleTest();
20     virtual ~ResourceBundleTest();
21     
22     void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
23
24     /** 
25      * Perform several extensive tests using the subtest routine testTag
26      **/
27     void TestResourceBundles(void);
28     /** 
29      * Test construction of ResourceBundle accessing a custom test resource-file
30      **/
31     void TestConstruction(void);
32
33     void TestExemplar(void);
34
35     void TestGetSize(void);
36     void TestGetLocaleByType(void);
37
38 private:
39     /**
40      * The assignment operator has no real implementation.
41      * It is provided to make the compiler happy. Do not call.
42      */
43     ResourceBundleTest& operator=(const ResourceBundleTest&) { return *this; }
44
45     /**
46      * extensive subtests called by TestResourceBundles
47      **/
48     UBool testTag(const char* frag, UBool in_Root, UBool in_te, UBool in_te_IN);
49
50     void record_pass(UnicodeString passMessage);
51     void record_fail(UnicodeString errMessage);
52
53     int32_t pass;
54     int32_t fail;
55 };
56
57 #endif