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-2003, International Business Machines Corporation and
6 * others. All Rights Reserved.
7 ********************************************************************/
8
9/**
10 * CollationSpanishTest is a third level test class. This tests the locale
11 * specific primary and tertiary rules. This Spanish sort uses the traditional
12 * sorting sequence.  The Spanish modern sorting sequence does not sort
13 * ch and ll as unique characters.
14 */
15
16#ifndef _ESCOLL
17#define _ESCOLL
18
19#include "unicode/utypes.h"
20
21#if !UCONFIG_NO_COLLATION
22
23#include "tscoll.h"
24
25class CollationSpanishTest: 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    CollationSpanishTest();
32    virtual ~CollationSpanishTest();
33    void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
34
35    // performs tests with strength PRIMARY
36    void TestPrimary(/* char* par */);
37
38    // prforms test with strength TERTIARY
39    void TestTertiary(/* char* par */);
40
41private:
42    static const UChar testSourceCases[][MAX_TOKEN_LEN];
43    static const UChar testTargetCases[][MAX_TOKEN_LEN];
44    static const Collator::EComparisonResult results[];
45
46    Collator *myCollation;
47};
48
49#endif /* #if !UCONFIG_NO_COLLATION */
50
51#endif
52