diff options
Diffstat (limited to 'tests/auto/controls')
-rw-r--r-- | tests/auto/controls/data/tst_calendar.qml | 24 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_rangeddate.qml | 64 |
2 files changed, 50 insertions, 38 deletions
diff --git a/tests/auto/controls/data/tst_calendar.qml b/tests/auto/controls/data/tst_calendar.qml index 17b2b9b4..1f8d9a8d 100644 --- a/tests/auto/controls/data/tst_calendar.qml +++ b/tests/auto/controls/data/tst_calendar.qml @@ -124,11 +124,19 @@ Item { } function test_defaultConstructed() { - calendar.minimumDate = new Date(1, 0, 1); - calendar.maximumDate = new Date(4000, 0, 1); - - compare(calendar.minimumDate, new Date(1, 0, 1)); - compare(calendar.maximumDate, new Date(4000, 0, 1)); + // Minimum date needs to be at least 1921-05-01 due to date problems in < JS7 which + // causes problems with the Finnish timezone in CI. So use 1922 to avoid those + // causing an invalid failure + + // The minimum and maximum are set with "different" times + // to confirm that they have no bearing from what it will + // return later on as we only care about the date part + // and not the specific time in the range. + calendar.minimumDate = new Date(22, 0, 1, 23, 59, 59, 999); + calendar.maximumDate = new Date(4000, 0, 1, 0, 0, 0, 0); + + compare(calendar.minimumDate, new Date(22, 0, 1)); + compare(calendar.maximumDate, new Date(4000, 0, 1, 23, 59, 59, 999)); var expectedDate = new Date(); compare(calendar.selectedDate.getFullYear(), expectedDate.getFullYear()); compare(calendar.selectedDate.getMonth(), expectedDate.getMonth()); @@ -139,15 +147,15 @@ Item { } function test_setAfterConstructed() { - calendar.minimumDate = new Date(1900, 0, 1); + calendar.minimumDate = new Date(1922, 0, 1); calendar.maximumDate = new Date(1999, 11, 31); calendar.selectedDate = new Date(1980, 0, 1); calendar.frameVisible = false; calendar.dayOfWeekFormat = Locale.NarrowFormat; calendar.locale = Qt.locale("de_DE"); - compare(calendar.minimumDate, new Date(1900, 0, 1)); - compare(calendar.maximumDate, new Date(1999, 11, 31)); + compare(calendar.minimumDate, new Date(1922, 0, 1)); + compare(calendar.maximumDate, new Date(1999, 11, 31, 23, 59, 59, 999)); compare(calendar.selectedDate, new Date(1980, 0, 1)); compare(calendar.frameVisible, false); compare(calendar.locale, Qt.locale("de_DE")); diff --git a/tests/auto/controls/data/tst_rangeddate.qml b/tests/auto/controls/data/tst_rangeddate.qml index a1874441..a7d48d85 100644 --- a/tests/auto/controls/data/tst_rangeddate.qml +++ b/tests/auto/controls/data/tst_rangeddate.qml @@ -86,45 +86,49 @@ Item { } function test_constructionPropertyOrder() { + // Minimum date needs to be at least 1921-05-01 due to date problems in < JS7 which + // causes problems with the Finnish timezone in CI. So use 1922 to avoid those + // causing an invalid failure + // All values are valid; fine. rangedDate = Qt.createQmlObject(importsStr + " RangedDate { " - + "date: new Date(1900, 0, 2); " - + "minimumDate: new Date(1900, 0, 1); " - + "maximumDate: new Date(1900, 0, 3); " + + "date: new Date(1922, 0, 2); " + + "minimumDate: new Date(1922, 0, 1); " + + "maximumDate: new Date(1922, 0, 3); " + " }", container, ""); - compare(rangedDate.date.getTime(), new Date(1900, 0, 2).getTime()); - compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 1).getTime()); - compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 3).getTime()); + compare(rangedDate.date.getTime(), new Date(1922, 0, 2).getTime()); + compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 1).getTime()); + compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 3, 23, 59, 59, 999).getTime()); // All values are the same; doesn't make sense, but is fine [1]. rangedDate = Qt.createQmlObject(importsStr + " RangedDate { " - + "date: new Date(1900, 0, 1);" - + "minimumDate: new Date(1900, 0, 1);" - + "maximumDate: new Date(1900, 0, 1);" + + "date: new Date(1922, 0, 1);" + + "minimumDate: new Date(1922, 0, 1);" + + "maximumDate: new Date(1922, 0, 1);" + " }", container, ""); - compare(rangedDate.date.getTime(), new Date(1900, 0, 1).getTime()); - compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 1).getTime()); - compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 1).getTime()); + compare(rangedDate.date.getTime(), new Date(1922, 0, 1).getTime()); + compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 1).getTime()); + compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 1, 23, 59, 59, 999).getTime()); // date is lower than min - should be clamped to min. rangedDate = Qt.createQmlObject(importsStr + " RangedDate { " + "date: new Date(1899, 0, 1);" - + "minimumDate: new Date(1900, 0, 1);" - + "maximumDate: new Date(1900, 0, 1);" + + "minimumDate: new Date(1922, 0, 1);" + + "maximumDate: new Date(1922, 0, 1);" + " }", container, ""); - compare(rangedDate.date.getTime(), new Date(1900, 0, 1).getTime()); - compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 1).getTime()); - compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 1).getTime()); + compare(rangedDate.date.getTime(), new Date(1922, 0, 1).getTime()); + compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 1).getTime()); + compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 1, 23, 59, 59, 999).getTime()); // date is higher than max - should be clamped to max. rangedDate = Qt.createQmlObject(importsStr + " RangedDate { " - + "date: new Date(1900, 0, 2);" - + "minimumDate: new Date(1900, 0, 1);" - + "maximumDate: new Date(1900, 0, 1);" + + "date: new Date(1922, 0, 2);" + + "minimumDate: new Date(1922, 0, 1);" + + "maximumDate: new Date(1922, 0, 1);" + " }", container, ""); - compare(rangedDate.date.getTime(), new Date(1900, 0, 1).getTime()); - compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 1).getTime()); - compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 1).getTime()); + compare(rangedDate.date.getTime(), new Date(1922, 0, 1, 23, 59, 59, 999).getTime()); + compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 1).getTime()); + compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 1, 23, 59, 59, 999).getTime()); // If the order of property construction is undefined (as it should be if it's declarative), // then is min considered higher than max or max lower than min? Which should be changed? @@ -132,13 +136,13 @@ Item { // For now, max will always be the one that's changed. It will be set to min, // as min may already be the largest possible date (See [1]). rangedDate = Qt.createQmlObject(importsStr + " RangedDate { " - + "date: new Date(1900, 0, 1);" - + "minimumDate: new Date(1900, 0, 2);" - + "maximumDate: new Date(1900, 0, 1);" + + "date: new Date(1922, 0, 1);" + + "minimumDate: new Date(1922, 0, 2);" + + "maximumDate: new Date(1922, 0, 1);" + " }", container, ""); - compare(rangedDate.date.getTime(), new Date(1900, 0, 2).getTime()); - compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 2).getTime()); - compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 2).getTime()); + compare(rangedDate.date.getTime(), new Date(1922, 0, 2).getTime()); + compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 2).getTime()); + compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 2, 23, 59, 59, 999).getTime()); // [1] Do we want to enforce min and max being different? E.g. if min // is (1900, 0, 1) and max is (1900, 0, 1), max should be set (1900, 0, 2). @@ -159,7 +163,7 @@ Item { rangedDate.minimumDate = new Date(1990, 0, 1); compare(rangedDate.minimumDate.getTime(), new Date(1990, 0, 1).getTime()); rangedDate.maximumDate = new Date(1999, 0, 1); - compare(rangedDate.maximumDate.getTime(), new Date(1999, 0, 1).getTime()); + compare(rangedDate.maximumDate.getTime(), new Date(1999, 0, 1, 23, 59, 59, 999).getTime()); // MIN DATE MAX // [ 1996 | 1996 | 1999 ] |