aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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"));