aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMike FABIAN <mike.fabian@basyskom.de>2010-07-12 12:15:38 +0300
committerMike FABIAN <mike.fabian@basyskom.de>2010-07-13 17:29:31 +0300
commit91fe39aa5e5bc26fa3d852597867c0d3dd730b2f (patch)
tree6f7495b96f2ec8cd98c50d024b8f9b6bd5aa031c /tests
parent2eb42466987ea974ae95c26e56146798cad76902 (diff)
Changes: add unit test for the 2 variants of formatDateTimeICU()
RevBy: Holger Schröder, Bernd Lamecker, John Tapsell
Diffstat (limited to 'tests')
-rw-r--r--tests/ut_mcalendar/ut_mcalendar.cpp103
-rw-r--r--tests/ut_mcalendar/ut_mcalendar.h3
2 files changed, 106 insertions, 0 deletions
diff --git a/tests/ut_mcalendar/ut_mcalendar.cpp b/tests/ut_mcalendar/ut_mcalendar.cpp
index 8814a63f..c3b93632 100644
--- a/tests/ut_mcalendar/ut_mcalendar.cpp
+++ b/tests/ut_mcalendar/ut_mcalendar.cpp
@@ -1929,6 +1929,109 @@ void Ut_MCalendar::testPosixFormatPattern()
}
}
+void Ut_MCalendar::testFormatDateTimeICU_data()
+{
+ QTest::addColumn<MLocale::CalendarType>("calendarType");
+ QTest::addColumn<int>("year");
+ QTest::addColumn<int>("month");
+ QTest::addColumn<int>("day");
+ QTest::addColumn<int>("hour");
+ QTest::addColumn<int>("minute");
+ QTest::addColumn<int>("second");
+ QTest::addColumn<QString>("localeName");
+ QTest::addColumn<QString>("format");
+ QTest::addColumn<QString>("result");
+
+ QTest::newRow("fi_FI “G”")
+ << MLocale::GregorianCalendar
+ << 2008
+ << 2
+ << 3
+ << 12
+ << 25
+ << 3
+ << "fi_FI"
+ << "G" // era designator
+ << "jKr.";
+ QTest::newRow("de_DE “G”")
+ << MLocale::GregorianCalendar
+ << 2008
+ << 2
+ << 3
+ << 12
+ << 25
+ << 3
+ << "de_DE"
+ << "G" // era designator
+ << "n. Chr.";
+ QTest::newRow("zh_CN “G”")
+ << MLocale::GregorianCalendar
+ << 2008
+ << 2
+ << 3
+ << 12
+ << 25
+ << 3
+ << "zh_CN"
+ << "G" // era designator
+ << "公元";
+ QTest::newRow("ja_JP “G”")
+ << MLocale::GregorianCalendar
+ << 2008
+ << 2
+ << 3
+ << 12
+ << 25
+ << 3
+ << "ja_JP"
+ << "G" // era designator
+ << "AD";
+ QTest::newRow("ja_JP “G”")
+ << MLocale::JapaneseCalendar
+ << 2008
+ << 2
+ << 3
+ << 12
+ << 25
+ << 3
+ << "ja_JP"
+ << "G" // era designator
+ << "平成";
+}
+
+void Ut_MCalendar::testFormatDateTimeICU()
+{
+ QFETCH(MLocale::CalendarType, calendarType);
+ QFETCH(int, year);
+ QFETCH(int, month);
+ QFETCH(int, day);
+ QFETCH(int, hour);
+ QFETCH(int, minute);
+ QFETCH(int, second);
+ QFETCH(QString, localeName);
+ QFETCH(QString, format);
+ QFETCH(QString, result);
+
+ MLocale locale(localeName);
+ locale.setCalendarType(calendarType);
+ MCalendar mcal(locale);
+ mcal.setDate(year, month, day);
+ mcal.setTime(hour, minute, second);
+ QDate date(year, month, day);
+ QTime time(hour, minute, second);
+ QDateTime datetime(date, time, Qt::LocalTime);
+ QLocale qlocale(localeName);
+
+ QTextStream debugStream(stderr);
+ debugStream.setCodec("UTF-8");
+ debugStream << "format: " << format
+ << "actual result: " << locale.formatDateTimeICU(mcal, format)
+ << " expected result: " << result << "\n";
+
+ QCOMPARE(locale.formatDateTimeICU(mcal, format), result);
+ QCOMPARE(locale.formatDateTimeICU(datetime, format), result);
+}
+
void Ut_MCalendar::testWeekdaySymbols_data()
{
QTest::addColumn<QString>("localeName");
diff --git a/tests/ut_mcalendar/ut_mcalendar.h b/tests/ut_mcalendar/ut_mcalendar.h
index 8471f188..b44a7702 100644
--- a/tests/ut_mcalendar/ut_mcalendar.h
+++ b/tests/ut_mcalendar/ut_mcalendar.h
@@ -69,6 +69,9 @@ private slots:
void testPosixFormatPattern_data();
void testPosixFormatPattern();
+ void testFormatDateTimeICU_data();
+ void testFormatDateTimeICU();
+
void testWeekdaySymbols_data();
void testWeekdaySymbols();