diff options
author | Tim Blechmann <tim@klingt.org> | 2024-04-09 15:50:20 +0800 |
---|---|---|
committer | Jøger Hansegård <joger.hansegard@qt.io> | 2024-04-27 05:39:51 +0200 |
commit | 57155746ba8c90fa74af0aae7f15550ed48ce330 (patch) | |
tree | 80b95ff83de67938b2a0d028ad2c949ebe4552be | |
parent | d27311be4a07051e0fd17b0535ea378c29e464e8 (diff) |
Tests: QScreenCapture - relax backend tests
With larger waiting times and a smaller expected frame count, the tests
reliably pass on my workstation.
Pick-to: 6.5 6.7
Task-number: QTBUG-122577
Change-Id: Id26f04e8d97748cecc38b345bd4ed472833ee282
Reviewed-by: Mikko Hallamaa <mikko.hallamaa@qt.io>
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
-rw-r--r-- | tests/auto/integration/qscreencapturebackend/tst_qscreencapturebackend.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/tests/auto/integration/qscreencapturebackend/tst_qscreencapturebackend.cpp b/tests/auto/integration/qscreencapturebackend/tst_qscreencapturebackend.cpp index 73f9fd123..522d9bcdd 100644 --- a/tests/auto/integration/qscreencapturebackend/tst_qscreencapturebackend.cpp +++ b/tests/auto/integration/qscreencapturebackend/tst_qscreencapturebackend.cpp @@ -248,7 +248,7 @@ void tst_QScreenCaptureBackend::capture(QTestWidget &widget, const QPoint &drawi delay / static_cast<int>(1000 / std::min(widget.screen()->refreshRate(), 60.)); const int framesCount = static_cast<int>(sink.images().size()); QCOMPARE_LE(framesCount, expectedFramesCount + 2); - QCOMPARE_GE(framesCount, expectedFramesCount / 2); + QCOMPARE_GE(framesCount, 1); for (const auto &image : sink.images()) { auto pixelColor = [&drawingOffset, pixelRatio, &image](int x, int y) { @@ -409,7 +409,7 @@ void tst_QScreenCaptureBackend::capture_capturesToFile_whenConnectedToMediaRecor sc.setActive(true); - QTest::qWait(200); // wait a bit for SC threading activating + QTest::qWait(1000); // wait a bit for SC threading activating { QSignalSpy recorderStateChanged(&recorder, &QMediaRecorder::recorderStateChanged); @@ -420,9 +420,9 @@ void tst_QScreenCaptureBackend::capture_capturesToFile_whenConnectedToMediaRecor QCOMPARE(recorder.recorderState(), QMediaRecorder::RecordingState); } - QTest::qWait(300); + QTest::qWait(1000); widget->setColors(QColor(0, 0xFF, 0), QColor(0, 0xFF, 0)); // Change widget color - QTest::qWait(300); + QTest::qWait(1000); { QSignalSpy recorderStateChanged(&recorder, &QMediaRecorder::recorderStateChanged); @@ -440,9 +440,11 @@ void tst_QScreenCaptureBackend::capture_capturesToFile_whenConnectedToMediaRecor TestVideoSink sink; QMediaPlayer player; player.setSource(fileName); - QCOMPARE_EQ(player.metaData().value(QMediaMetaData::Resolution).toSize(), QSize(videoResolution)); + QTRY_COMPARE(player.mediaStatus(), QMediaPlayer::LoadedMedia); + QCOMPARE_EQ(player.metaData().value(QMediaMetaData::Resolution).toSize(), + QSize(videoResolution)); QCOMPARE_GT(player.duration(), 350); - QCOMPARE_LT(player.duration(), 650); + QCOMPARE_LT(player.duration(), 3000); // Convert video frames to QImages player.setVideoSink(&sink); |