1ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru/********************************************************************
2ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru * COPYRIGHT:
383a171d1a62abf406f7f44ae671823d5ec20db7dCraig Cornelius * Copyright (c) 1997-2011, International Business Machines Corporation and
4ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru * others. All Rights Reserved.
5ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru ********************************************************************/
6ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
7ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
8ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#ifndef _PUTILTEST_
9ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#define _PUTILTEST_
10ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
11ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#include "intltest.h"
12ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
13ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru/**
14ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru * Test putil.h
15ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru **/
16ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queruclass PUtilTest : public IntlTest {
17ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    // IntlTest override
18ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par );
19ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Querupublic:
20ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
21ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru//    void testIEEEremainder(void);
22ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void testMaxMin(void);
23ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
24ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queruprivate:
25ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru//    void remainderTest(double x, double y, double exp);
26ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void maxMinTest(double a, double b, double exp, UBool max);
27ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
28ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    // the actual tests; methods return the number of errors
29ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void testNaN(void);
30ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void testPositiveInfinity(void);
31ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void testNegativeInfinity(void);
32ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void testZero(void);
33ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
34ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    // subtests of testNaN
35ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void testIsNaN(void);
36ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void NaNGT(void);
37ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void NaNLT(void);
38ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void NaNGTE(void);
39ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void NaNLTE(void);
40ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void NaNE(void);
41ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru    void NaNNE(void);
42ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
43ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru};
44ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru
45ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#endif
46ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru//eof
47