1// © 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-2004, International Business Machines Corporation
6 * and others. All Rights Reserved.
7 ***********************************************************************/
8
9/**
10 * CollationDummyTest is a third level test class.  This tests creation of
11 * a customized collator object.  For example, number 1 to be sorted
12 * equlivalent to word 'one'.
13 */
14
15#ifndef _ALLCOLL
16#define _ALLCOLL
17
18#include "unicode/utypes.h"
19
20#if !UCONFIG_NO_COLLATION
21
22#include "unicode/tblcoll.h"
23#include "tscoll.h"
24
25class CollationDummyTest: public IntlTestCollator {
26public:
27    // If this is too small for the test data, just increase it.
28    // Just don't make it too large, otherwise the executable will get too big
29    enum EToken_Len { MAX_TOKEN_LEN = 16 };
30
31    CollationDummyTest();
32    virtual ~CollationDummyTest();
33    void runIndexedTest( int32_t index, UBool exec, const char* &name, char* /*par = NULL */);
34
35    // perform test with strength PRIMARY
36    void TestPrimary(/* char* par */);
37
38    // perform test with strength SECONDARY
39    void TestSecondary(/* char* par */);
40
41    // perform test with strength tertiary
42    void TestTertiary(/* char* par */);
43
44    // perform extra tests
45    void TestExtra(/* char* par */);
46
47    void TestIdentical();
48
49    void TestJB581();
50
51private:
52    static const  Collator::EComparisonResult results[];
53
54    RuleBasedCollator *myCollation;
55};
56
57#endif /* #if !UCONFIG_NO_COLLATION */
58
59#endif
60