| Index: source/test/perf/normperf/dtfmtrtperf.h
|
| diff --git a/source/test/perf/normperf/dtfmtrtperf.h b/source/test/perf/normperf/dtfmtrtperf.h
|
| deleted file mode 100644
|
| index 6be40f4351eecce4de19279863170d1725f28253..0000000000000000000000000000000000000000
|
| --- a/source/test/perf/normperf/dtfmtrtperf.h
|
| +++ /dev/null
|
| @@ -1,231 +0,0 @@
|
| -/*
|
| -**********************************************************************
|
| -* Copyright (c) 2010-2011,International Business Machines
|
| -* Corporation and others. All Rights Reserved.
|
| -**********************************************************************
|
| -**********************************************************************
|
| -*/
|
| -
|
| -#ifndef _DTFMTRTPERF_H
|
| -#define _DTFMTRTPERF_H
|
| -
|
| -#include "unicode/utypes.h"
|
| -#include "unicode/uperf.h"
|
| -#include "unicode/timezone.h"
|
| -#include "unicode/simpletz.h"
|
| -#include "unicode/calendar.h"
|
| -#include "unicode/strenum.h"
|
| -#include "unicode/smpdtfmt.h"
|
| -#include "unicode/uchar.h"
|
| -#include "unicode/basictz.h"
|
| -#include "cstring.h"
|
| -
|
| -#include "unicode/uperf.h"
|
| -#include "unicode/unistr.h"
|
| -#include "unicode/datefmt.h"
|
| -#include "unicode/calendar.h"
|
| -#include "unicode/uclean.h"
|
| -#include "unicode/brkiter.h"
|
| -#include "util.h"
|
| -
|
| -static const char* PATTERNS[] = {"z", "zzzz", "Z", "ZZZZ", "v", "vvvv", "V", "VVVV"};
|
| -static const int NUM_PATTERNS = sizeof(PATTERNS)/sizeof(const char*);
|
| -
|
| -#include <iostream>
|
| -#include <stdlib.h>
|
| -#include <fstream>
|
| -#include <string>
|
| -using namespace std;
|
| -
|
| -// Stubs for Windows API functions when building on UNIXes.
|
| -//
|
| -#if U_PLATFORM_USES_ONLY_WIN32_API
|
| -// do nothing
|
| -#else
|
| -#define _UNICODE
|
| -typedef int DWORD;
|
| -inline int FoldStringW(DWORD dwMapFlags, const UChar* lpSrcStr,int cchSrc, UChar* lpDestStr,int cchDest);
|
| -#endif
|
| -
|
| -class DateTimeRoundTripFunction : public UPerfFunction
|
| -{
|
| -private:
|
| - int nLocales;
|
| -public:
|
| -
|
| - DateTimeRoundTripFunction()
|
| - {
|
| - nLocales = 0;
|
| - }
|
| -
|
| - DateTimeRoundTripFunction(int locs)
|
| - {
|
| - nLocales = locs;
|
| - }
|
| -
|
| - virtual void call(UErrorCode* status)
|
| - {
|
| - *status = U_ZERO_ERROR;
|
| -
|
| - SimpleTimeZone unknownZone(-31415, (UnicodeString)"Etc/Unknown");
|
| - int32_t badDstOffset = -1234;
|
| - int32_t badZoneOffset = -2345;
|
| -
|
| - int32_t testDateData[][3] = {
|
| - {2007, 1, 15},
|
| - {2007, 6, 15},
|
| - {1990, 1, 15},
|
| - {1990, 6, 15},
|
| - {1960, 1, 15},
|
| - {1960, 6, 15},
|
| - };
|
| -
|
| - Calendar *cal = Calendar::createInstance(*status);
|
| - if (U_FAILURE(*status)) {
|
| - //dataerrln("Calendar::createInstance failed: %s", u_errorName(*status));
|
| - return;
|
| - }
|
| -
|
| - // Set up rule equivalency test range
|
| - UDate low, high;
|
| - cal->set(1900, UCAL_JANUARY, 1);
|
| - low = cal->getTime(*status);
|
| - cal->set(2040, UCAL_JANUARY, 1);
|
| - high = cal->getTime(*status);
|
| - if (U_FAILURE(*status)) {
|
| - //errln("getTime failed");
|
| - return;
|
| - }
|
| -
|
| - // Set up test dates
|
| - UDate DATES[(sizeof(testDateData)/sizeof(int32_t))/3];
|
| - const int32_t nDates = (sizeof(testDateData)/sizeof(int32_t))/3;
|
| - cal->clear();
|
| - for (int32_t i = 0; i < nDates; i++) {
|
| - cal->set(testDateData[i][0], testDateData[i][1], testDateData[i][2]);
|
| - DATES[i] = cal->getTime(*status);
|
| - if (U_FAILURE(*status)) {
|
| - //errln("getTime failed");
|
| - return;
|
| - }
|
| - }
|
| -
|
| - // Set up test locales
|
| - const Locale testLocales[] = {
|
| - Locale("en"),
|
| - Locale("en_US"),
|
| - Locale("en_AU"),
|
| - Locale("de_DE"),
|
| - Locale("fr"),
|
| - Locale("ja_JP"),
|
| - Locale("ko"),
|
| - Locale("pt"),
|
| - Locale("th_TH"),
|
| - Locale("zh_Hans"),
|
| -
|
| - Locale("it"),
|
| -
|
| - Locale("en"),
|
| - Locale("en_US"),
|
| - Locale("en_AU"),
|
| - Locale("de_DE"),
|
| - Locale("fr"),
|
| - Locale("ja_JP"),
|
| - Locale("ko"),
|
| - Locale("pt"),
|
| - Locale("th_TH"),
|
| - Locale("zh_Hans"),
|
| - };
|
| -
|
| - const Locale *LOCALES;
|
| - LOCALES = testLocales;
|
| -
|
| - StringEnumeration *tzids = TimeZone::createEnumeration();
|
| - if (U_FAILURE(*status)) {
|
| - //errln("tzids->count failed");
|
| - return;
|
| - }
|
| -
|
| - // Run the roundtrip test
|
| - for (int32_t locidx = 0; locidx < nLocales; locidx++) {
|
| - for (int32_t patidx = 0; patidx < NUM_PATTERNS; patidx++) {
|
| - SimpleDateFormat *sdf = new SimpleDateFormat((UnicodeString)PATTERNS[patidx], LOCALES[locidx], *status);
|
| - if (U_FAILURE(*status)) {
|
| - //errcheckln(*status, (UnicodeString)"new SimpleDateFormat failed for pattern " +
|
| - // PATTERNS[patidx] + " for locale " + LOCALES[locidx].getName() + " - " + u_errorName(*status));
|
| - *status = U_ZERO_ERROR;
|
| - continue;
|
| - }
|
| -
|
| - tzids->reset(*status);
|
| - const UnicodeString *tzid;
|
| - while ((tzid = tzids->snext(*status))) {
|
| - TimeZone *tz = TimeZone::createTimeZone(*tzid);
|
| -
|
| - for (int32_t datidx = 0; datidx < nDates; datidx++) {
|
| - UnicodeString tzstr;
|
| - FieldPosition fpos(0);
|
| -
|
| - // Format
|
| - sdf->setTimeZone(*tz);
|
| - sdf->format(DATES[datidx], tzstr, fpos);
|
| -
|
| - // Before parse, set unknown zone to SimpleDateFormat instance
|
| - // just for making sure that it does not depends on the time zone
|
| - // originally set.
|
| - sdf->setTimeZone(unknownZone);
|
| -
|
| - // Parse
|
| - ParsePosition pos(0);
|
| - Calendar *outcal = Calendar::createInstance(unknownZone, *status);
|
| - if (U_FAILURE(*status)) {
|
| - //errln("Failed to create an instance of calendar for receiving parse result.");
|
| - *status = U_ZERO_ERROR;
|
| - continue;
|
| - }
|
| - outcal->set(UCAL_DST_OFFSET, badDstOffset);
|
| - outcal->set(UCAL_ZONE_OFFSET, badZoneOffset);
|
| - sdf->parse(tzstr, *outcal, pos);
|
| -
|
| - // clean loop
|
| - delete outcal;
|
| -
|
| - }
|
| - delete tz;
|
| - // break time zone loop
|
| - break;
|
| -
|
| - }
|
| - delete sdf;
|
| - }
|
| - }
|
| - delete cal;
|
| - delete tzids;
|
| -
|
| - }
|
| -
|
| - virtual long getOperationsPerIteration()
|
| - {
|
| - return NUM_PATTERNS * nLocales * 6;
|
| - }
|
| -};
|
| -
|
| -
|
| -class DateTimeRoundTripPerfTest : public UPerfTest
|
| -{
|
| -private:
|
| -
|
| -public:
|
| -
|
| - DateTimeRoundTripPerfTest(int32_t argc, const char* argv[], UErrorCode& status);
|
| - ~DateTimeRoundTripPerfTest();
|
| - virtual UPerfFunction* runIndexedTest(int32_t index, UBool exec,const char* &name, char* par);
|
| -
|
| - UPerfFunction* RoundTripLocale1();
|
| - UPerfFunction* RoundTripLocale10();
|
| - UPerfFunction* RoundTripLocale11();
|
| - UPerfFunction* RoundTripLocale21();
|
| -};
|
| -
|
| -
|
| -#endif // DateTimeRoundTripPerfTest
|
|
|