aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlan Alpert <alan.alpert@nokia.com>2011-11-16 18:03:56 +1100
committerQt by Nokia <qt-info@nokia.com>2011-11-17 02:52:09 +0100
commit82dac4c5c1ad7a3704558dca4d70068fe0383c17 (patch)
tree1de70edcf64ec447e6a6c0c1394cc08d7f7ebea8
parenta69a7c6f7cd83c559593161c86fec70fd125198e (diff)
Stabilize test
Test failed in DST when JS and QDateTime DST methods conflict. The time in ms since epoch is still correct though, so test data is now within ranges where they do not conflict (only happens with historical data). Task-number: QTBUG-22408 Change-Id: I884e28b4681cc10fb25e777d2eabe20d8ac0bce4 Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
-rw-r--r--doc/src/declarative/basictypes.qdoc4
-rw-r--r--tests/auto/declarative/qdeclarativeqt/data/dateTimeConversion.qml10
-rw-r--r--tests/auto/declarative/qdeclarativeqt/tst_qdeclarativeqt.cpp10
3 files changed, 15 insertions, 9 deletions
diff --git a/doc/src/declarative/basictypes.qdoc b/doc/src/declarative/basictypes.qdoc
index d59e599bed..c128239b53 100644
--- a/doc/src/declarative/basictypes.qdoc
+++ b/doc/src/declarative/basictypes.qdoc
@@ -313,6 +313,10 @@
To read a time value returned from a C++ extension class, use
\l{QML:Qt::formatTime()}{Qt.formatTime()} and \l{QML:Qt::formatDateTime()}{Qt.formatDateTime()}.
+ Note that when converting historical times to and from javascript that QDateTime and the JS Date object
+ have different methods of calculating historical daylight savings time application. This can lead to variations of one hour
+ when converting to historical local time.
+
\sa {QML Basic Types}
*/
diff --git a/tests/auto/declarative/qdeclarativeqt/data/dateTimeConversion.qml b/tests/auto/declarative/qdeclarativeqt/data/dateTimeConversion.qml
index 06203285a9..4260c8ab22 100644
--- a/tests/auto/declarative/qdeclarativeqt/data/dateTimeConversion.qml
+++ b/tests/auto/declarative/qdeclarativeqt/data/dateTimeConversion.qml
@@ -2,13 +2,13 @@ import QtQuick 1.0
QtObject {
// months are 0-based - so January = 0, December = 11.
- property variant qtime: new Date(0,0,0,14,15,38,200) // yyyy/MM/dd 14:15:38.200
+ property variant qtime: new Date(2000,0,0,14,15,38,200) // yyyy/MM/dd 14:15:38.200
property variant qdate: new Date(2008,11,24) // 2008/12/24 hh:mm:ss.zzz
property variant qdatetime: new Date(2008,11,24,14,15,38,200) // 2008/12/24 14:15:38.200
property variant qdatetime2: new Date(2852,11,31,23,59,59,500) // 2852/12/31 23:59:59.500
- property variant qdatetime3: new Date(1970,0,1,0,0,0,0) // 1970/01/01 00:00:00.000
- property variant qdatetime4: new Date(1586,1,2) // 1586/02/02 hh:mm:ss.zzz
- property variant qdatetime5: new Date(955,0,1,0,0,0,0) // 955/01/01 00:00:00.000
- property variant qdatetime6: new Date(113,1,24,14,15,38,200) // 113/02/24 14:15:38.200
+ property variant qdatetime3: new Date(2000,0,1,0,0,0,0) // 2000/01/01 00:00:00.000
+ property variant qdatetime4: new Date(2001,1,2) // 2001/02/02 hh:mm:ss.zzz
+ property variant qdatetime5: new Date(1999,0,1,2,3,4) // 1999/01/01 02:03:04.zzz
+ property variant qdatetime6: new Date(2008,1,24,14,15,38,200) // 2008/02/24 14:15:38.200
}
diff --git a/tests/auto/declarative/qdeclarativeqt/tst_qdeclarativeqt.cpp b/tests/auto/declarative/qdeclarativeqt/tst_qdeclarativeqt.cpp
index 83bed2bf5b..d2feb85200 100644
--- a/tests/auto/declarative/qdeclarativeqt/tst_qdeclarativeqt.cpp
+++ b/tests/auto/declarative/qdeclarativeqt/tst_qdeclarativeqt.cpp
@@ -503,11 +503,13 @@ void tst_qdeclarativeqt::dateTimeConversion()
QDate date(2008,12,24);
QTime time(14,15,38,200);
QDateTime dateTime(date, time);
+ //Note that when converting Date to QDateTime they can argue over historical DST data when converting to local time.
+ //Tests should use UTC or recent dates.
QDateTime dateTime2(QDate(2852,12,31), QTime(23,59,59,500));
- QDateTime dateTime3(QDate(1970,1,1), QTime(0,0,0,0));
- QDateTime dateTime4(QDate(1586,2,2), QTime(0,0,0,0));
- QDateTime dateTime5(QDate(955,1,1), QTime(0,0,0,0));
- QDateTime dateTime6(QDate(113,2,24), QTime(14,15,38,200));
+ QDateTime dateTime3(QDate(2000,1,1), QTime(0,0,0,0));
+ QDateTime dateTime4(QDate(2001,2,2), QTime(0,0,0,0));
+ QDateTime dateTime5(QDate(1999,1,1), QTime(2,3,4,0));
+ QDateTime dateTime6(QDate(2008,2,24), QTime(14,15,38,200));
QDeclarativeEngine eng;
QDeclarativeComponent component(&eng, TEST_FILE("dateTimeConversion.qml"));