summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Adams <chris.adams@qinetic.com.au>2018-07-19 18:08:40 +1000
committerChristopher Adams <chris.adams@jollamobile.com>2018-07-20 05:19:51 +0000
commitbfd521d0a159fc6adca7f9e58fb9285953780ae2 (patch)
tree2c55e126e3e63f8515f9c7c3b786b1902bc98334
parent93123aa03dbe1ee1ff4616c281c892ca4c63363f (diff)
Adapt to new QVariant<QDateTime>().toString() behavior
The behavior of QVariant::toString() was changed in qtbase in commit 64a3bba7b8f0a59a57d8249c266d3eb6c408a761 to include millisecond information in order to be round-trip-stable. This commit ensures that QtPIM unit tests are adapted to enforce that behavior. Change-Id: Ic3147d2455f7db5373022dea6189a2789076c322 Reviewed-by: Matthew Vogt <matthew.vogt@qinetic.com.au>
-rw-r--r--tests/auto/contacts/qcontactdetail/tst_qcontactdetail.cpp8
-rw-r--r--tests/auto/contacts/qmlcontacts/testcases/tst_contactdetail.qml21
-rw-r--r--tests/auto/contacts/qmlcontacts/testcases/tst_contacts_export_import_details_e2e.qml2
-rw-r--r--tests/auto/organizer/qorganizeritemdetail/tst_qorganizeritemdetail.cpp18
-rw-r--r--tests/auto/versit/qversitcontactexporter/tst_qversitcontactexporter.cpp6
-rw-r--r--tests/auto/versitorganizer/qversitorganizerexporter/tst_qversitorganizerexporter.cpp6
6 files changed, 34 insertions, 27 deletions
diff --git a/tests/auto/contacts/qcontactdetail/tst_qcontactdetail.cpp b/tests/auto/contacts/qcontactdetail/tst_qcontactdetail.cpp
index 27115c450..c12e068ea 100644
--- a/tests/auto/contacts/qcontactdetail/tst_qcontactdetail.cpp
+++ b/tests/auto/contacts/qcontactdetail/tst_qcontactdetail.cpp
@@ -328,7 +328,7 @@ void tst_QContactDetail::values()
// string accessors with const char* key
QCOMPARE(p.value(QContactAddress::FieldStreet).toString(), QString("This is a string"));
QCOMPARE(p.value(QContactAddress::FieldLocality).toString(), d.toString(Qt::ISODate));
- QCOMPARE(p.value(QContactAddress::FieldRegion).toString(), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value(QContactAddress::FieldRegion).toString(), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value(QContactAddress::FieldPostcode).toString(), QString("6"));
QCOMPARE(p.value(QContactAddress::FieldSubTypes).toString(), d.toString(Qt::ISODate));
QCOMPARE(p.value(QContactAddress::FieldPostOfficeBox).toString(), dt.toString(Qt::ISODate));
@@ -344,7 +344,7 @@ void tst_QContactDetail::values()
/* Typed accessors, string first, const char* key */
QCOMPARE(p.value<QString>(QContactAddress::FieldStreet), QString("This is a string"));
QCOMPARE(p.value<QString>(QContactAddress::FieldLocality), d.toString(Qt::ISODate));
- QCOMPARE(p.value<QString>(QContactAddress::FieldRegion), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value<QString>(QContactAddress::FieldRegion), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value<QString>(QContactAddress::FieldPostcode), QString("6"));
QCOMPARE(p.value<QString>(QContactAddress::FieldSubTypes), d.toString(Qt::ISODate));
QCOMPARE(p.value<QString>(QContactAddress::FieldPostOfficeBox), dt.toString(Qt::ISODate));
@@ -419,7 +419,7 @@ void tst_QContactDetail::values()
/* String accessors */
QCOMPARE(p.value(QContactAddress::FieldStreet).toString(), QString("This is a string"));
QCOMPARE(p.value(QContactAddress::FieldLocality).toString(), d.toString(Qt::ISODate));
- QCOMPARE(p.value(QContactAddress::FieldRegion).toString(), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value(QContactAddress::FieldRegion).toString(), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value(QContactAddress::FieldPostcode).toString(), QString("6"));
QCOMPARE(p.value(QContactAddress::FieldSubTypes).toString(), d.toString(Qt::ISODate));
QCOMPARE(p.value(QContactAddress::FieldPostOfficeBox).toString(), dt.toString(Qt::ISODate));
@@ -427,7 +427,7 @@ void tst_QContactDetail::values()
/* Typed accessors, string first */
QCOMPARE(p.value<QString>(QContactAddress::FieldStreet), QString("This is a string"));
QCOMPARE(p.value<QString>(QContactAddress::FieldLocality), d.toString(Qt::ISODate));
- QCOMPARE(p.value<QString>(QContactAddress::FieldRegion), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value<QString>(QContactAddress::FieldRegion), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value<QString>(QContactAddress::FieldPostcode), QString("6"));
QCOMPARE(p.value<QString>(QContactAddress::FieldSubTypes), d.toString(Qt::ISODate));
QCOMPARE(p.value<QString>(QContactAddress::FieldPostOfficeBox), dt.toString(Qt::ISODate));
diff --git a/tests/auto/contacts/qmlcontacts/testcases/tst_contactdetail.qml b/tests/auto/contacts/qmlcontacts/testcases/tst_contactdetail.qml
index 60259db54..878990987 100644
--- a/tests/auto/contacts/qmlcontacts/testcases/tst_contactdetail.qml
+++ b/tests/auto/contacts/qmlcontacts/testcases/tst_contactdetail.qml
@@ -197,9 +197,16 @@ TestCase {
compare(anniversary.calendarId, "myCalendarId")
//compare(anniversary.originalDate, "")
- var dateTime = new Date(2001, 5, 21) // 21 May 2001 14:13:09
+ var dateTime = new Date(2001, 4, 21) // 21 May 2001
anniversary.originalDate = dateTime
- compare(anniversary.originalDate, dateTime)
+ // Round trip is not guaranteed to be stable, due to the fact
+ // that ECMA262 Date does not support "Date-only" semantics.
+ // While the originalDate property in C++ side contains the
+ // appropriate QDate value, when converted back into JS Date
+ // we find that it will have been converted to a Date which
+ // matches 2001-05-21T00:00:00.000Z according to the local
+ // timezone, e.g. 2001-05-21T10:00:00.000+10:00.
+ //compare(anniversary.originalDate, dateTime)
compare(anniversary.event, "")
anniversary.event = "myEvent"
@@ -223,7 +230,7 @@ TestCase {
function test_birthday() {
- var dateTime = new Date(2001, 5, 21, 14, 13, 09) // 21 May 2001 14:13:09
+ var dateTime = new Date(2001, 4, 21, 14, 13, 09) // 21 May 2001 14:13:09
//compare(birthday.birthday, "")
birthday.birthday = dateTime;
compare(birthday.birthday, dateTime)
@@ -354,14 +361,14 @@ TestCase {
location.speed = 30.0;
compare(location.speed, 30.0)
- var dateTime = new Date(2001, 5, 21, 14, 13, 09) // 21 May 2001 14:13:09
+ var dateTime = new Date(2001, 4, 21, 14, 13, 09) // 21 May 2001 14:13:09
location.timestamp = dateTime;
compare(location.timestamp, dateTime)
}
function test_globalpresence() {
- var dateTime = new Date(2001, 5, 21, 14, 13, 09) // 21 May 2001 14:13:09
+ var dateTime = new Date(2001, 4, 21, 14, 13, 09) // 21 May 2001 14:13:09
globalpresence.timestamp = dateTime;
compare(globalpresence.timestamp, dateTime)
@@ -498,7 +505,7 @@ TestCase {
}
function test_presence() {
- var DateTime = new Date(2001, 5, 21) // 21 May 2001
+ var DateTime = new Date(2001, 4, 21) // 21 May 2001
presence.timestamp = DateTime;
compare(presence.timestamp , DateTime)
@@ -554,7 +561,7 @@ TestCase {
function test_timestamp() {
- var modifiedDateTime = new Date(2002, 5, 21) // 21 May 2001
+ var modifiedDateTime = new Date(2002, 4, 21) // 21 May 2002
timestamp.lastModified = modifiedDateTime;
compare(timestamp.lastModified, modifiedDateTime)
}
diff --git a/tests/auto/contacts/qmlcontacts/testcases/tst_contacts_export_import_details_e2e.qml b/tests/auto/contacts/qmlcontacts/testcases/tst_contacts_export_import_details_e2e.qml
index 785c8c910..ee1b0e1d5 100644
--- a/tests/auto/contacts/qmlcontacts/testcases/tst_contacts_export_import_details_e2e.qml
+++ b/tests/auto/contacts/qmlcontacts/testcases/tst_contacts_export_import_details_e2e.qml
@@ -371,7 +371,7 @@ ContactsSavingTestCase {
// QML/V8 javascript Date.parse cannot be used to parse it,
// since it interprets a date string without timezone as using UTC.
compare(importedExtendedDetails[i].data,
- Qt.formatDateTime(megaContact.extendedDetails[i].data, 'yyyy-MM-ddThh:mm:ss'), "extended detail data");
+ Qt.formatDateTime(megaContact.extendedDetails[i].data, 'yyyy-MM-ddThh:mm:ss.zzz'), "extended detail data");
} else {
compare(importedExtendedDetails[i].data, megaContact.extendedDetails[i].data, "extended detail data");
}
diff --git a/tests/auto/organizer/qorganizeritemdetail/tst_qorganizeritemdetail.cpp b/tests/auto/organizer/qorganizeritemdetail/tst_qorganizeritemdetail.cpp
index bab5d6b90..6eda6fccf 100644
--- a/tests/auto/organizer/qorganizeritemdetail/tst_qorganizeritemdetail.cpp
+++ b/tests/auto/organizer/qorganizeritemdetail/tst_qorganizeritemdetail.cpp
@@ -329,7 +329,7 @@ void tst_QOrganizerItemDetail::values()
p.setValue(104, (int)6);
p.setValue(105, d.toString(Qt::ISODate));
- p.setValue(106, dt.toString(Qt::ISODate));
+ p.setValue(106, dt.toString(Qt::ISODateWithMs));
// Test the setter that takes a QString
p.setValue(107, "123");
@@ -356,17 +356,17 @@ void tst_QOrganizerItemDetail::values()
QCOMPARE(p.value(103), QVariant(dt));
QCOMPARE(p.value(104), QVariant((int)6));
QCOMPARE(p.value(105), QVariant(d.toString(Qt::ISODate)));
- QCOMPARE(p.value(106), QVariant(dt.toString(Qt::ISODate)));
+ QCOMPARE(p.value(106), QVariant(dt.toString(Qt::ISODateWithMs)));
QCOMPARE(p.value(107), QVariant(QString("123")));
QCOMPARE(p.value(QOrganizerItemPriority::FieldPriority).toInt(), static_cast<int>(QOrganizerItemPriority::ExtremelyHighPriority));
/* Typed accessors */
QCOMPARE(p.value<QString>(101), QString("This is a string"));
QCOMPARE(p.value<QString>(102), d.toString(Qt::ISODate));
- QCOMPARE(p.value<QString>(103), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value<QString>(103), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value<QString>(104), QString("6"));
QCOMPARE(p.value<QString>(105), d.toString(Qt::ISODate));
- QCOMPARE(p.value<QString>(106), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value<QString>(106), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value<QString>(107), QString("123"));
QCOMPARE(p.value<int>(QOrganizerItemPriority::FieldPriority), static_cast<int>(QOrganizerItemPriority::ExtremelyHighPriority));
@@ -426,7 +426,7 @@ void tst_QOrganizerItemDetail::values()
values.insert(104, (int)6);
values.insert(105, d.toString(Qt::ISODate));
- values.insert(106, dt.toString(Qt::ISODate));
+ values.insert(106, dt.toString(Qt::ISODateWithMs));
values.insert(107, "123");
values.insert(101, QString("This is a string"));
@@ -448,19 +448,19 @@ void tst_QOrganizerItemDetail::values()
/* String accessors */
QCOMPARE(p.value(101).toString(), QString("This is a string"));
QCOMPARE(p.value(102).toString(), d.toString(Qt::ISODate));
- QCOMPARE(p.value(103).toString(), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value(103).toString(), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value(104).toString(), QString("6"));
QCOMPARE(p.value(105).toString(), d.toString(Qt::ISODate));
- QCOMPARE(p.value(106).toString(), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value(106).toString(), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value(107).toString(), QString("123"));
/* Typed accessors, string first */
QCOMPARE(p.value<QString>(101), QString("This is a string"));
QCOMPARE(p.value<QString>(102), d.toString(Qt::ISODate));
- QCOMPARE(p.value<QString>(103), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value<QString>(103), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value<QString>(104), QString("6"));
QCOMPARE(p.value<QString>(105), d.toString(Qt::ISODate));
- QCOMPARE(p.value<QString>(106), dt.toString(Qt::ISODate));
+ QCOMPARE(p.value<QString>(106), dt.toString(Qt::ISODateWithMs));
QCOMPARE(p.value<QString>(107), QString("123"));
/* Now individual original types */
diff --git a/tests/auto/versit/qversitcontactexporter/tst_qversitcontactexporter.cpp b/tests/auto/versit/qversitcontactexporter/tst_qversitcontactexporter.cpp
index 2061345ab..f2e21636e 100644
--- a/tests/auto/versit/qversitcontactexporter/tst_qversitcontactexporter.cpp
+++ b/tests/auto/versit/qversitcontactexporter/tst_qversitcontactexporter.cpp
@@ -1468,17 +1468,17 @@ void tst_QVersitContactExporter::testEncodeExtendedDetail_data()
QTest::newRow("datetime data (using local time)")
<< QString("name")
<< QVariant(QDateTime::fromString("1997-07-16T19:20:30.123+01:00", Qt::ISODate))
- << jsonArrayWithString.arg("1997-07-16T19:20:30+01:00")
+ << jsonArrayWithString.arg("1997-07-16T19:20:30.123+01:00")
<< true;
QTest::newRow("datetime data (using UTC)")
<< QString("name")
<< QVariant(QDateTime::fromString("1997-07-16T19:20:30.123+01:00", Qt::ISODate).toUTC())
- << jsonArrayWithString.arg("1997-07-16T18:20:30Z")
+ << jsonArrayWithString.arg("1997-07-16T18:20:30.123Z")
<< true;
QTest::newRow("datetime data (using local time with unspecified timezone)")
<< QString("name")
<< QVariant(QDateTime::fromString("1997-07-16T19:20:30", Qt::ISODate))
- << jsonArrayWithString.arg("1997-07-16T19:20:30")
+ << jsonArrayWithString.arg("1997-07-16T19:20:30.000")
<< true;
}
diff --git a/tests/auto/versitorganizer/qversitorganizerexporter/tst_qversitorganizerexporter.cpp b/tests/auto/versitorganizer/qversitorganizerexporter/tst_qversitorganizerexporter.cpp
index 62029fcba..18bda063f 100644
--- a/tests/auto/versitorganizer/qversitorganizerexporter/tst_qversitorganizerexporter.cpp
+++ b/tests/auto/versitorganizer/qversitorganizerexporter/tst_qversitorganizerexporter.cpp
@@ -1537,17 +1537,17 @@ void tst_QVersitOrganizerExporter::testExtendedDetail_data()
QTest::newRow("datetime data (using local time)")
<< QString("name")
<< QVariant(QDateTime::fromString("1997-07-16T19:20:30.123+01:00", Qt::ISODate))
- << jsonArrayWithString.arg("1997-07-16T19:20:30+01:00")
+ << jsonArrayWithString.arg("1997-07-16T19:20:30.123+01:00")
<< true;
QTest::newRow("datetime data (using UTC)")
<< QString("name")
<< QVariant(QDateTime::fromString("1997-07-16T19:20:30.123+01:00", Qt::ISODate).toUTC())
- << jsonArrayWithString.arg("1997-07-16T18:20:30Z")
+ << jsonArrayWithString.arg("1997-07-16T18:20:30.123Z")
<< true;
QTest::newRow("datetime data (using local time with unspecified timezone)")
<< QString("name")
<< QVariant(QDateTime::fromString("1997-07-16T19:20:30", Qt::ISODate))
- << jsonArrayWithString.arg("1997-07-16T19:20:30")
+ << jsonArrayWithString.arg("1997-07-16T19:20:30.000")
<< true;
}