diff options
-rw-r--r-- | tests/auto/unit/multimedia/qmediarecorder/tst_qmediarecorder.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/auto/unit/multimedia/qmediarecorder/tst_qmediarecorder.cpp b/tests/auto/unit/multimedia/qmediarecorder/tst_qmediarecorder.cpp index 882ef82f2..30ba55c33 100644 --- a/tests/auto/unit/multimedia/qmediarecorder/tst_qmediarecorder.cpp +++ b/tests/auto/unit/multimedia/qmediarecorder/tst_qmediarecorder.cpp @@ -32,11 +32,13 @@ #include <QDebug> #include <QtMultimedia/qmediametadata.h> #include <private/qplatformmediarecorder_p.h> +#include "private/qguiapplication_p.h" #include <qmediarecorder.h> #include <qaudioformat.h> #include <qmockintegration_p.h> #include <qmediacapturesession.h> +#include "qguiapplication_platform.h" #include "qmockmediacapturesession.h" #include "qmockmediaencoder.h" @@ -70,6 +72,8 @@ private slots: void testVideoSettingsQuality(); void testVideoSettingsEncodingMode(); + void testApplicationInative(); + private: QMockIntegration *mockIntegration = nullptr; QMediaCaptureSession *captureSession; @@ -455,5 +459,32 @@ void tst_QMediaRecorder::testVideoSettingsEncodingMode() QCOMPARE(recorder.encodingMode(), QMediaRecorder::AverageBitRateEncoding); } +void tst_QMediaRecorder::testApplicationInative() +{ + QMediaCaptureSession session; + QMediaRecorder encoder; + session.setRecorder(&encoder); + + encoder.setVideoResolution(640, 480); + encoder.setQuality(QMediaRecorder::VeryHighQuality); + + encoder.setOutputLocation(QUrl("test.tmp")); + QCOMPARE(encoder.outputLocation().toString(), QString("test.tmp")); + QCOMPARE(encoder.actualLocation(), QUrl()); + + encoder.record(); + + QGuiApplicationPrivate::setApplicationState(Qt::ApplicationInactive); + QCoreApplication::processEvents(); + + QGuiApplicationPrivate::setApplicationState(Qt::ApplicationActive); + QCoreApplication::processEvents(); + + encoder.stop(); + + // the actual location is available after record + QCOMPARE(encoder.actualLocation().toString(), QString("test.tmp")); +} + QTEST_GUILESS_MAIN(tst_QMediaRecorder) #include "tst_qmediarecorder.moc" |