From 37b47ebf946ef1a37573107375fbe5fc0eb1e6d2 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Sun, 19 Mar 2023 20:35:37 +0100 Subject: Widgets/QCheckBox: change signature of stateChanged() for Qt7 Change the signature of stateChanged(int) to emit Qt::CheckState instead. This was forgotten during Qt6 porting so we have to wait for Qt7. Task-number: QTBUG-104688 Change-Id: Ica2504e5b9ae68612de81524faed0f31c9b10402 Reviewed-by: Friedemann Kleint Reviewed-by: Richard Moe Gustavsen --- .../widgets/widgets/qcheckbox/tst_qcheckbox.cpp | 27 +++++++++++++--------- 1 file changed, 16 insertions(+), 11 deletions(-) (limited to 'tests/auto/widgets') diff --git a/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp b/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp index 7a54a6e5e6..9055b13901 100644 --- a/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp +++ b/tests/auto/widgets/widgets/qcheckbox/tst_qcheckbox.cpp @@ -191,24 +191,29 @@ void tst_QCheckBox::toggled() void tst_QCheckBox::stateChanged() { QCheckBox testWidget; - int cur_state = -1; + QCOMPARE(testWidget.checkState(), Qt::Unchecked); + + Qt::CheckState cur_state = Qt::Unchecked; QSignalSpy stateChangedSpy(&testWidget, &QCheckBox::stateChanged); - connect(&testWidget, &QCheckBox::stateChanged, this, [&](int state) { ++cur_state = state; }); + connect(&testWidget, &QCheckBox::stateChanged, this, [&](auto state) { cur_state = Qt::CheckState(state); }); testWidget.setChecked(true); - QCoreApplication::processEvents(); - QCOMPARE(cur_state, 2); + QVERIFY(QTest::qWaitFor([&]() { return stateChangedSpy.size() == 1; })); + QCOMPARE(stateChangedSpy.size(), 1); + QCOMPARE(cur_state, Qt::Checked); + QCOMPARE(testWidget.checkState(), Qt::Checked); - cur_state = -1; testWidget.setChecked(false); - QCoreApplication::processEvents(); - QCOMPARE(cur_state, 0); + QVERIFY(QTest::qWaitFor([&]() { return stateChangedSpy.size() == 2; })); + QCOMPARE(stateChangedSpy.size(), 2); + QCOMPARE(cur_state, Qt::Unchecked); + QCOMPARE(testWidget.checkState(), Qt::Unchecked); - cur_state = -1; testWidget.setCheckState(Qt::PartiallyChecked); - QCoreApplication::processEvents(); - QCOMPARE(cur_state, 1); - + QVERIFY(QTest::qWaitFor([&]() { return stateChangedSpy.size() == 3; })); QCOMPARE(stateChangedSpy.size(), 3); + QCOMPARE(cur_state, Qt::PartiallyChecked); + QCOMPARE(testWidget.checkState(), Qt::PartiallyChecked); + testWidget.setCheckState(Qt::PartiallyChecked); QCoreApplication::processEvents(); QCOMPARE(stateChangedSpy.size(), 3); -- cgit v1.2.3