diff options
author | Yoann Lopes <yoann.lopes@digia.com> | 2014-09-19 12:01:08 +0200 |
---|---|---|
committer | Yoann Lopes <yoann.lopes@digia.com> | 2014-09-26 14:27:13 +0200 |
commit | 99a55585e961818b3153e99b8368cba00fc7c108 (patch) | |
tree | cd946dad688822cac13b1beaa48e3a608c9f6d50 /tests/auto | |
parent | ec245921865eda2bc57397c1979c92fa10adfd98 (diff) |
Add metadata test for qmediaplayerbackend auto-test.
Change-Id: I419496293b11b6a941af08e9709595458b7ca423
Reviewed-by: Andrew den Exter <andrew.den.exter@qinetic.com.au>
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/integration/qmediaplayerbackend/testdata/nokia-tune.mp3 | bin | 61472 -> 62715 bytes | |||
-rw-r--r-- | tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp | 38 |
2 files changed, 38 insertions, 0 deletions
diff --git a/tests/auto/integration/qmediaplayerbackend/testdata/nokia-tune.mp3 b/tests/auto/integration/qmediaplayerbackend/testdata/nokia-tune.mp3 Binary files differindex 674c83405..2435f65b8 100644 --- a/tests/auto/integration/qmediaplayerbackend/testdata/nokia-tune.mp3 +++ b/tests/auto/integration/qmediaplayerbackend/testdata/nokia-tune.mp3 diff --git a/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp b/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp index b4e2f1f17..0a1441cda 100644 --- a/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp +++ b/tests/auto/integration/qmediaplayerbackend/tst_qmediaplayerbackend.cpp @@ -39,6 +39,7 @@ #include "qaudioprobe.h" #include "qvideoprobe.h" #include <qmediaplaylist.h> +#include <qmediametadata.h> //TESTED_COMPONENT=src/multimedia @@ -77,6 +78,7 @@ private slots: void playlist(); void surfaceTest_data(); void surfaceTest(); + void metadata(); private: QMediaContent selectVideoFile(const QStringList& mediaCandidates); @@ -87,6 +89,7 @@ private: QMediaContent localWavFile2; QMediaContent localVideoFile; QMediaContent localCompressedSoundFile; + QMediaContent localFileWithMetadata; bool m_inCISystem; }; @@ -226,6 +229,8 @@ void tst_QMediaPlayerBackend::initTestCase() mediaCandidates << QFINDTESTDATA("testdata/nokia-tune.mp3"); localCompressedSoundFile = selectMediaFile(mediaCandidates); + localFileWithMetadata = selectMediaFile(QStringList() << QFINDTESTDATA("testdata/nokia-tune.mp3")); + qgetenv("QT_TEST_CI").toInt(&m_inCISystem,10); } @@ -1147,6 +1152,39 @@ void tst_QMediaPlayerBackend::surfaceTest() QVERIFY(surface.m_totalFrames >= 25); } +void tst_QMediaPlayerBackend::metadata() +{ + if (localFileWithMetadata.isNull()) + QSKIP("No supported media file"); + + QMediaPlayer player; + + QSignalSpy metadataAvailableSpy(&player, SIGNAL(metaDataAvailableChanged(bool))); + QSignalSpy metadataChangedSpy(&player, SIGNAL(metaDataChanged())); + + player.setMedia(localFileWithMetadata); + + QTRY_VERIFY(player.isMetaDataAvailable()); + QCOMPARE(metadataAvailableSpy.count(), 1); + QVERIFY(metadataAvailableSpy.last()[0].toBool()); + QVERIFY(metadataChangedSpy.count() > 0); + + QCOMPARE(player.metaData(QMediaMetaData::Title).toString(), QStringLiteral("Nokia Tune")); + QCOMPARE(player.metaData(QMediaMetaData::ContributingArtist).toString(), QStringLiteral("TestArtist")); + QCOMPARE(player.metaData(QMediaMetaData::AlbumTitle).toString(), QStringLiteral("TestAlbum")); + + metadataAvailableSpy.clear(); + metadataChangedSpy.clear(); + + player.setMedia(QMediaContent()); + + QVERIFY(!player.isMetaDataAvailable()); + QCOMPARE(metadataAvailableSpy.count(), 1); + QVERIFY(!metadataAvailableSpy.last()[0].toBool()); + QCOMPARE(metadataChangedSpy.count(), 1); + QVERIFY(player.availableMetaData().isEmpty()); +} + TestVideoSurface::TestVideoSurface(bool storeFrames): m_totalFrames(0), m_storeFrames(storeFrames) |