1/**
2 *******************************************************************************
3 * Copyright (C) 2001-2003, International Business Machines Corporation and    *
4 * others. All Rights Reserved.                                                *
5 *******************************************************************************
6 *
7 *******************************************************************************
8 */
9
10#ifndef ICUSVTST_H
11#define ICUSVTST_H
12
13#include "unicode/utypes.h"
14
15#if !UCONFIG_NO_SERVICE
16
17#include "intltest.h"
18
19class Integer;
20
21class ICUServiceTest : public IntlTest
22{
23 public:
24  ICUServiceTest();
25  virtual ~ICUServiceTest();
26
27  void runIndexedTest(int32_t index, UBool exec, const char* &name, char* par = NULL);
28
29  void testAPI_One(void);
30  void testAPI_Two(void);
31  void testRBF(void);
32  void testNotification(void);
33  void testLocale(void);
34  void testWrapFactory(void);
35  void testCoverage(void);
36
37 private:
38  UnicodeString& lrmsg(UnicodeString& result, const UnicodeString& message, const UObject* lhs, const UObject* rhs) const;
39  void confirmBoolean(const UnicodeString& message, UBool val);
40#if 0
41  void confirmEqual(const UnicodeString& message, const UObject* lhs, const UObject* rhs);
42#else
43  void confirmEqual(const UnicodeString& message, const Integer* lhs, const Integer* rhs);
44  void confirmEqual(const UnicodeString& message, const UnicodeString* lhs, const UnicodeString* rhs);
45  void confirmEqual(const UnicodeString& message, const Locale* lhs, const Locale* rhs);
46#endif
47  void confirmStringsEqual(const UnicodeString& message, const UnicodeString& lhs, const UnicodeString& rhs);
48  void confirmIdentical(const UnicodeString& message, const UObject* lhs, const UObject* rhs);
49  void confirmIdentical(const UnicodeString& message, int32_t lhs, int32_t rhs);
50
51  void msgstr(const UnicodeString& message, UObject* obj, UBool err = TRUE);
52  void logstr(const UnicodeString& message, UObject* obj) {
53        msgstr(message, obj, FALSE);
54  }
55};
56
57
58/* UCONFIG_NO_SERVICE */
59#endif
60
61/* ICUSVTST_H */
62#endif
63