Home | History | Annotate | Download | only in intltest
      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) 2007, International Business Machines Corporation and
      6  * others. All Rights Reserved.
      7  ********************************************************************/
      8 
      9 /**
     10  * DataDrivenCalendarTest is a test class that uses data stored in resource
     11  * bundles to perform testing. For more details on data structure, see
     12  * source/test/testdata/calendar.txt
     13  */
     14 
     15 #ifndef _INTLTESTDATADRIVENCALENDAR
     16 #define _INTLTESTDATADRIVENCALENDAR
     17 
     18 #include "unicode/utypes.h"
     19 
     20 #if !UCONFIG_NO_FORMATTING
     21 
     22 #include "tsdate.h"
     23 #include "uvector.h"
     24 #include "unicode/calendar.h"
     25 #include "fldset.h"
     26 
     27 class TestDataModule;
     28 class TestData;
     29 class DataMap;
     30 class CalendarFieldsSet;
     31 
     32 class DataDrivenCalendarTest : public IntlTest {
     33 	void runIndexedTest(int32_t index, UBool exec, const char* &name,
     34 			char* par = NULL);
     35 public:
     36 	DataDrivenCalendarTest();
     37 	virtual ~DataDrivenCalendarTest();
     38 protected:
     39 
     40 	void DataDrivenTest(char *par);
     41 	void processTest(TestData *testData);
     42 private:
     43 	void testConvert(TestData *testData, const DataMap *settings, UBool fwd);
     44 	void testOps(TestData *testData, const DataMap *settings);
     45 	void testConvert(int32_t n, const CalendarFieldsSet &fromSet,
     46 			Calendar *fromCal, const CalendarFieldsSet &toSet, Calendar *toCal,
     47 			UBool fwd);
     48 private:
     49 	TestDataModule *driver;
     50 };
     51 
     52 #endif /* #if !UCONFIG_NO_COLLATION */
     53 
     54 #endif
     55