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>
This commit is contained in:
Dmytro Poplavskiy
2012-01-19 10:01:02 +10:00
committed by Qt by Nokia
parent adb2bd2cd4
commit a78a95ccd4
26 changed files with 309 additions and 371 deletions

View File

@@ -85,7 +85,8 @@ void tst_QRadioData::initTestCase()
mock = new MockRadioDataControl(this);
service = new MockMediaService(this, mock);
provider = new MockMediaServiceProvider(service);
radio = new QRadioData(0,provider);
QMediaServiceProvider::setDefaultServiceProvider(provider);
radio = new QRadioData;
QVERIFY(radio->service() != 0);
QVERIFY(radio->isAvailable());
QVERIFY(radio->availabilityError() == QtMultimedia::NoError);
@@ -105,8 +106,10 @@ void tst_QRadioData::testNullService()
{
const QPair<int, int> nullRange(0, 0);
MockMediaServiceProvider provider(0);
QRadioData radio(0, &provider);
MockMediaServiceProvider nullProvider(0);
QMediaServiceProvider::setDefaultServiceProvider(&nullProvider);
QRadioData radio;
QVERIFY(!radio.isAvailable());
QCOMPARE(radio.error(), QRadioData::ResourceError);
QCOMPARE(radio.errorString(), QString());
@@ -125,7 +128,8 @@ void tst_QRadioData::testNullControl()
MockMediaService service(0, 0);
MockMediaServiceProvider provider(&service);
QRadioData radio(0, &provider);
QMediaServiceProvider::setDefaultServiceProvider(&provider);
QRadioData radio;
QVERIFY(!radio.isAvailable());
QCOMPARE(radio.error(), QRadioData::ResourceError);
QCOMPARE(radio.errorString(), QString());