1/********************************************************************
2 * COPYRIGHT:
3 * Copyright (c) 1997-2015, International Business Machines Corporation and
4 * others. All Rights Reserved.
5 ********************************************************************/
6
7
8#ifndef MULTITHREADTEST_H
9#define MULTITHREADTEST_H
10
11#include "intltest.h"
12#include "mutex.h"
13
14
15
16/**
17 * Tests actual threading
18 **/
19class MultithreadTest : public IntlTest
20{
21public:
22    MultithreadTest();
23    virtual ~MultithreadTest();
24
25    void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
26
27    /**
28     * test that threads even work
29     **/
30    void TestThreads(void);
31
32	/**
33     * test that arabic shaping can work in threads
34     **/
35    void TestArabicShapingThreads(void);
36
37    /**
38     * test that mutexes work
39     **/
40    void TestMutex(void);
41#if !UCONFIG_NO_FORMATTING
42    /**
43     * test that intl functions work in a multithreaded context
44     **/
45    void TestThreadedIntl(void);
46#endif
47    void TestCollators(void);
48    void TestString();
49    void TestAnyTranslit();
50    void TestConditionVariables();
51    void TestUnifiedCache();
52    void TestBreakTranslit();
53
54};
55
56#endif
57
58