summaryrefslogtreecommitdiffstats
path: root/tests/auto/unit/qmediaplayer
diff options
context:
space:
mode:
authorDmytro Poplavskiy <dmytro.poplavskiy@nokia.com>2012-01-19 10:01:02 +1000
committerQt by Nokia <qt-info@nokia.com>2012-01-24 09:11:07 +0100
commita78a95ccd4c876bca7fe748c44c9744e828d375e (patch)
tree4a72285e10aab435682fb7cdbbc4e70432191b20 /tests/auto/unit/qmediaplayer
parentadb2bd2cd4bb2b01b15f6213681654949f2c797c (diff)
Removed QMediaServiceProvider parameter from media objects constructors.
QMediaServiceProvider should be removed from the public API, to provide media objects with a custom media service. A protected QMediaPlayer/QCamera/QRadioTuner/etc constructor with QMediaService* parameter is a cleaner and more flexible solution. Change-Id: I335cce4bbebe0e548c3df338f206e7be7c93c3dd Reviewed-by: Michael Goddard <michael.goddard@nokia.com> Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
Diffstat (limited to 'tests/auto/unit/qmediaplayer')
-rw-r--r--tests/auto/unit/qmediaplayer/tst_qmediaplayer.cpp81
1 files changed, 41 insertions, 40 deletions
diff --git a/tests/auto/unit/qmediaplayer/tst_qmediaplayer.cpp b/tests/auto/unit/qmediaplayer/tst_qmediaplayer.cpp
index e2131cc45..e441d26b9 100644
--- a/tests/auto/unit/qmediaplayer/tst_qmediaplayer.cpp
+++ b/tests/auto/unit/qmediaplayer/tst_qmediaplayer.cpp
@@ -179,30 +179,32 @@ void tst_QMediaPlayer::initTestCase()
qRegisterMetaType<QMediaPlayer::Error>("QMediaPlayer::Error");
qRegisterMetaType<QMediaPlayer::MediaStatus>("QMediaPlayer::MediaStatus");
qRegisterMetaType<QMediaContent>("QMediaContent");
-
- mockService = new MockMediaPlayerService;
- mockProvider = new MockMediaServiceProvider(mockService, true);
- player = new QMediaPlayer(0, 0, mockProvider);
}
void tst_QMediaPlayer::cleanupTestCase()
{
- delete player;
}
void tst_QMediaPlayer::init()
{
- mockService->reset();
+ mockService = new MockMediaPlayerService;
+ mockProvider = new MockMediaServiceProvider(mockService);
+ QMediaServiceProvider::setDefaultServiceProvider(mockProvider);
+
+ player = new QMediaPlayer;
}
void tst_QMediaPlayer::cleanup()
{
+ delete player;
+ delete mockProvider;
+ delete mockService;
}
void tst_QMediaPlayer::testNullService()
{
- MockMediaServiceProvider provider(0);
- QMediaPlayer player(0, 0, &provider);
+ mockProvider->service = 0;
+ QMediaPlayer player;
const QIODevice *nullDevice = 0;
@@ -901,7 +903,6 @@ void tst_QMediaPlayer::testPlayerFlags()
MockMediaServiceProvider provider(0, true);
QMediaPlayer::Flag flags = QMediaPlayer::LowLatency;
- QMediaPlayer player(0, flags, &provider);
QMediaServiceProviderHint::Feature feature;
if (flags & QMediaPlayer::LowLatency)
@@ -926,7 +927,6 @@ void tst_QMediaPlayer::testPlayerFlags()
flags = QMediaPlayer::StreamPlayback;
/* Construct a QMediaPlayer that uses the playback service from provider,
parented to parent and with flags.*/
- QMediaPlayer player2(0,flags , &provider);
if (flags & QMediaPlayer::StreamPlayback)
{
@@ -948,16 +948,23 @@ void tst_QMediaPlayer::testPlayerFlags()
void tst_QMediaPlayer::testDestructor()
{
+ //don't use the same service as tst_QMediaPlayer::player
+ mockProvider->service = new MockMediaPlayerService;
+ mockProvider->deleteServiceOnRelease = true;
+
/* create an object for player */
- MockMediaPlayerService service;
- MockMediaServiceProvider provider(&service);
- QMediaPlayer *victim = new QMediaPlayer(0, 0, &provider);
+ QMediaPlayer *victim = new QMediaPlayer;
/* check whether the object is created */
QVERIFY(victim);
/* delete the instance (a crash is a failure :) */
delete victim;
+
+ //service is released
+ QVERIFY(mockProvider->service == 0);
+
+ mockProvider->deleteServiceOnRelease = false;
}
void tst_QMediaPlayer::testNetworkAccess()
@@ -992,27 +999,23 @@ void tst_QMediaPlayer::testSetVideoOutput()
{
MockVideoSurface surface;
- MockMediaPlayerService service;
- MockMediaServiceProvider provider(&service);
- QMediaPlayer player(0, 0, &provider);
-
- player.setVideoOutput(reinterpret_cast<QVideoWidget *>(0));
- player.setVideoOutput(reinterpret_cast<QGraphicsVideoItem *>(0));
+ player->setVideoOutput(reinterpret_cast<QVideoWidget *>(0));
+ player->setVideoOutput(reinterpret_cast<QGraphicsVideoItem *>(0));
- player.setVideoOutput(&surface);
- QVERIFY(service.rendererControl->surface() == &surface);
+ player->setVideoOutput(&surface);
+ QVERIFY(mockService->rendererControl->surface() == &surface);
- player.setVideoOutput(reinterpret_cast<QAbstractVideoSurface *>(0));
- QVERIFY(service.rendererControl->surface() == 0);
+ player->setVideoOutput(reinterpret_cast<QAbstractVideoSurface *>(0));
+ QVERIFY(mockService->rendererControl->surface() == 0);
- player.setVideoOutput(&surface);
- QVERIFY(service.rendererControl->surface() == &surface);
+ player->setVideoOutput(&surface);
+ QVERIFY(mockService->rendererControl->surface() == &surface);
- player.setVideoOutput(reinterpret_cast<QVideoWidget *>(0));
- QVERIFY(service.rendererControl->surface() == 0);
+ player->setVideoOutput(reinterpret_cast<QVideoWidget *>(0));
+ QVERIFY(mockService->rendererControl->surface() == 0);
- player.setVideoOutput(&surface);
- QVERIFY(service.rendererControl->surface() == &surface);
+ player->setVideoOutput(&surface);
+ QVERIFY(mockService->rendererControl->surface() == &surface);
}
@@ -1021,7 +1024,8 @@ void tst_QMediaPlayer::testSetVideoOutputNoService()
MockVideoSurface surface;
MockMediaServiceProvider provider(0, true);
- QMediaPlayer player(0, 0, &provider);
+ QMediaServiceProvider::setDefaultServiceProvider(&provider);
+ QMediaPlayer player;
player.setVideoOutput(&surface);
// Nothing we can verify here other than it doesn't assert.
@@ -1035,7 +1039,8 @@ void tst_QMediaPlayer::testSetVideoOutputNoControl()
service.rendererRef = 1;
MockMediaServiceProvider provider(&service);
- QMediaPlayer player(0, 0, &provider);
+ QMediaServiceProvider::setDefaultServiceProvider(&provider);
+ QMediaPlayer player;
player.setVideoOutput(&surface);
QVERIFY(service.rendererControl->surface() == 0);
@@ -1044,18 +1049,14 @@ void tst_QMediaPlayer::testSetVideoOutputNoControl()
void tst_QMediaPlayer::testSetVideoOutputDestruction()
{
MockVideoSurface surface;
-
- MockMediaPlayerService service;
- MockMediaServiceProvider provider(&service);
-
{
- QMediaPlayer player(0, 0, &provider);
+ QMediaPlayer player;
player.setVideoOutput(&surface);
- QVERIFY(service.rendererControl->surface() == &surface);
- QCOMPARE(service.rendererRef, 1);
+ QVERIFY(mockService->rendererControl->surface() == &surface);
+ QCOMPARE(mockService->rendererRef, 1);
}
- QVERIFY(service.rendererControl->surface() == 0);
- QCOMPARE(service.rendererRef, 0);
+ QVERIFY(mockService->rendererControl->surface() == 0);
+ QCOMPARE(mockService->rendererRef, 0);
}
void tst_QMediaPlayer::testPositionPropertyWatch()