summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorEdward Welbourne <edward.welbourne@qt.io>2022-08-03 15:57:08 +0200
committerEdward Welbourne <edward.welbourne@qt.io>2022-08-15 18:19:16 +0200
commitf02b132eaa2eebfc7183a591075b3ae05cb4a2b9 (patch)
treecb9e1a86ebd7ad4a20201c401207369aa9891a1d /tests
parent0fac2ae499d3411200a4f7af2db5228ea60e6178 (diff)
Expand QDateTime edit constructor tests to cover Q(Date|Time)Edit
The constructor_qdate() and constructor_qtime() tests only tested QDateTimeEdit with a QDate or QTime. Extend them to also test QDateEdit and QTimeEdit constructors, respectively. This revealed one surprise; the QDateEdit constructor doesn't replace an invalid QDate with the usual start-date, as the QDateTimeEdit does. It also serves to reproduce a bug reported in Qt 6.3, see Task-number. These are all marked XFail for now. Adapted on cherry-picking to make the tests work with their old columns rather than simplifying to a single column. Task-number: QTBUG-105322 Change-Id: Ifafb40a9b78d9314b74ca9a1710d362b9a3cb18d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit d1d43b231f4c7c5663cb49875c2e5876f352b564)
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp53
1 files changed, 39 insertions, 14 deletions
diff --git a/tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp b/tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp
index 354a5f182f..7111dd76ed 100644
--- a/tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp
+++ b/tests/auto/widgets/widgets/qdatetimeedit/tst_qdatetimeedit.cpp
@@ -524,13 +524,26 @@ void tst_QDateTimeEdit::constructor_qdate()
testWidget->hide();
- QDateTimeEdit dte(parameter);
- dte.show();
- QCOMPARE(dte.dateTime(), displayDateTime);
- QCOMPARE(dte.minimumDate(), minimumDate);
- QCOMPARE(dte.minimumTime(), minimumTime);
- QCOMPARE(dte.maximumDate(), maximumDate);
- QCOMPARE(dte.maximumTime(), maximumTime);
+ {
+ QDateTimeEdit dte(parameter);
+ dte.show();
+ QCOMPARE(dte.dateTime(), displayDateTime);
+ QCOMPARE(dte.minimumDate(), minimumDate);
+ QCOMPARE(dte.minimumTime(), minimumTime);
+ QCOMPARE(dte.maximumDate(), maximumDate);
+ QCOMPARE(dte.maximumTime(), maximumTime);
+ }
+ {
+ QDateEdit dte(parameter);
+ dte.show();
+ QEXPECT_FAIL("normal", "QTBUG-105322: constructors use wrong spec", Continue);
+ QEXPECT_FAIL("invalid", "Constructor neglects default replacement of invalid", Continue);
+ QCOMPARE(dte.date(), displayDateTime.date());
+ QCOMPARE(dte.minimumDate(), minimumDate);
+ QCOMPARE(dte.minimumTime(), minimumTime);
+ QCOMPARE(dte.maximumDate(), maximumDate);
+ QCOMPARE(dte.maximumTime(), maximumTime);
+ }
}
void tst_QDateTimeEdit::constructor_qtime_data()
@@ -564,13 +577,25 @@ void tst_QDateTimeEdit::constructor_qtime()
testWidget->hide();
- QDateTimeEdit dte(parameter);
- dte.show();
- QCOMPARE(dte.dateTime(), displayDateTime);
- QCOMPARE(dte.minimumDate(), minimumDate);
- QCOMPARE(dte.minimumTime(), minimumTime);
- QCOMPARE(dte.maximumDate(), maximumDate);
- QCOMPARE(dte.maximumTime(), maximumTime);
+ {
+ QDateTimeEdit dte(parameter);
+ dte.show();
+ QCOMPARE(dte.dateTime(), displayDateTime);
+ QCOMPARE(dte.minimumDate(), minimumDate);
+ QCOMPARE(dte.minimumTime(), minimumTime);
+ QCOMPARE(dte.maximumDate(), maximumDate);
+ QCOMPARE(dte.maximumTime(), maximumTime);
+ }
+ {
+ QTimeEdit dte(parameter);
+ dte.show();
+ QEXPECT_FAIL("", "QTBUG-105322: constructors use wrong spec", Abort);
+ QCOMPARE(dte.time(), displayDateTime.time());
+ QCOMPARE(dte.minimumDate(), minimumDate);
+ QCOMPARE(dte.minimumTime(), minimumTime);
+ QCOMPARE(dte.maximumDate(), maximumDate);
+ QCOMPARE(dte.maximumTime(), maximumTime);
+ }
}
void tst_QDateTimeEdit::minimumDate_data()