summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/qmediarecorder/tst_qmediarecorder.cpp20
-rwxr-xr-xtests/auto/qmediarecorder/tst_qmediarecorder.h1
2 files changed, 21 insertions, 0 deletions
diff --git a/tests/auto/qmediarecorder/tst_qmediarecorder.cpp b/tests/auto/qmediarecorder/tst_qmediarecorder.cpp
index 6805a2680..4f46f54f5 100644
--- a/tests/auto/qmediarecorder/tst_qmediarecorder.cpp
+++ b/tests/auto/qmediarecorder/tst_qmediarecorder.cpp
@@ -165,6 +165,26 @@ void tst_QMediaRecorder::testNullControls()
QCOMPARE(spy.count(), 0);
}
+void tst_QMediaRecorder::testDeleteMediaObject()
+{
+ MockMediaRecorderControl *mock = new MockMediaRecorderControl(this);
+ MockMediaRecorderService *service = new MockMediaRecorderService(this, mock);
+ MockMediaObject *object = new MockMediaObject(this, service);
+ QMediaRecorder *capture = new QMediaRecorder(object);
+
+ QVERIFY(capture->mediaObject() == object);
+ QVERIFY(capture->isAvailable());
+
+ delete object;
+ delete service;
+ delete mock;
+
+ QVERIFY(capture->mediaObject() == 0);
+ QVERIFY(!capture->isAvailable());
+
+ delete capture;
+}
+
void tst_QMediaRecorder::testError()
{
const QString errorString(QLatin1String("format error"));
diff --git a/tests/auto/qmediarecorder/tst_qmediarecorder.h b/tests/auto/qmediarecorder/tst_qmediarecorder.h
index 253a750e6..d0202a0c0 100755
--- a/tests/auto/qmediarecorder/tst_qmediarecorder.h
+++ b/tests/auto/qmediarecorder/tst_qmediarecorder.h
@@ -70,6 +70,7 @@ public slots:
private slots:
void testNullService();
void testNullControls();
+ void testDeleteMediaObject();
void testError();
void testSink();
void testRecord();