Merge "Merge remote-tracking branch 'origin/5.3' into 5.4" into refs/staging/5.4
This commit is contained in:
2
tests/auto/unit/qmediaplaylist/testdata/empty.pls
vendored
Normal file
2
tests/auto/unit/qmediaplaylist/testdata/empty.pls
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
[playlist]
|
||||
NumberOfEntries=100
|
||||
27
tests/auto/unit/qmediaplaylist/testdata/test.pls
vendored
Normal file
27
tests/auto/unit/qmediaplaylist/testdata/test.pls
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
[playlist]
|
||||
|
||||
File1=http://test.host/path
|
||||
Title1=First
|
||||
Length1=-1
|
||||
File2= http://test.host/path
|
||||
Title2=Second
|
||||
Length2=-1
|
||||
File3=testfile
|
||||
Title3=Third
|
||||
Length3=-1
|
||||
|
||||
|
||||
|
||||
File4=testdir/testfile
|
||||
Title4=Fourth
|
||||
Length4=-1
|
||||
File5=/testdir/testfile
|
||||
Title5=Fifth
|
||||
Length5=-1
|
||||
File6=file://path/name#suffix
|
||||
Title6=Sixth
|
||||
Length6=-1
|
||||
File7=testfile2#suffix
|
||||
Title7=Seventh
|
||||
Length7=-1
|
||||
NumberOfEntries=7
|
||||
5
tests/auto/unit/qmediaplaylist/testdata/totem-pl-example.pls
vendored
Normal file
5
tests/auto/unit/qmediaplaylist/testdata/totem-pl-example.pls
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
[playlist]
|
||||
X-GNOME-Title=totem-pl-file-example
|
||||
NumberOfEntries=1
|
||||
File1=http://test.host/path
|
||||
Title1=Silence
|
||||
@@ -78,6 +78,7 @@ private slots:
|
||||
void currentItem();
|
||||
void saveAndLoad();
|
||||
void loadM3uFile();
|
||||
void loadPLSFile();
|
||||
void playbackMode();
|
||||
void playbackMode_data();
|
||||
void shuffle();
|
||||
@@ -348,8 +349,10 @@ void tst_QMediaPlaylist::saveAndLoad()
|
||||
QVERIFY(playlist.error() == QMediaPlaylist::FormatNotSupportedError);
|
||||
QVERIFY(!playlist.errorString().isEmpty());
|
||||
|
||||
QSignalSpy loadedSignal(&playlist, SIGNAL(loaded()));
|
||||
QSignalSpy errorSignal(&playlist, SIGNAL(loadFailed()));
|
||||
playlist.load(&buffer, "unsupported_format");
|
||||
QTRY_VERIFY(loadedSignal.isEmpty());
|
||||
QCOMPARE(errorSignal.size(), 1);
|
||||
QVERIFY(playlist.error() != QMediaPlaylist::NoError);
|
||||
QVERIFY(!playlist.errorString().isEmpty());
|
||||
@@ -359,8 +362,10 @@ void tst_QMediaPlaylist::saveAndLoad()
|
||||
QVERIFY(playlist.error() != QMediaPlaylist::NoError);
|
||||
QVERIFY(!playlist.errorString().isEmpty());
|
||||
|
||||
loadedSignal.clear();
|
||||
errorSignal.clear();
|
||||
playlist.load(QUrl::fromLocalFile(QLatin1String("tmp.unsupported_format")), "unsupported_format");
|
||||
QTRY_VERIFY(loadedSignal.isEmpty());
|
||||
QCOMPARE(errorSignal.size(), 1);
|
||||
QVERIFY(playlist.error() == QMediaPlaylist::FormatNotSupportedError);
|
||||
QVERIFY(!playlist.errorString().isEmpty());
|
||||
@@ -372,7 +377,11 @@ void tst_QMediaPlaylist::saveAndLoad()
|
||||
buffer.seek(0);
|
||||
|
||||
QMediaPlaylist playlist2;
|
||||
QSignalSpy loadedSignal2(&playlist2, SIGNAL(loaded()));
|
||||
QSignalSpy errorSignal2(&playlist2, SIGNAL(loadFailed()));
|
||||
playlist2.load(&buffer, "m3u");
|
||||
QCOMPARE(loadedSignal2.size(), 1);
|
||||
QTRY_VERIFY(errorSignal2.isEmpty());
|
||||
QCOMPARE(playlist.error(), QMediaPlaylist::NoError);
|
||||
|
||||
QCOMPARE(playlist.mediaCount(), playlist2.mediaCount());
|
||||
@@ -382,9 +391,13 @@ void tst_QMediaPlaylist::saveAndLoad()
|
||||
res = playlist.save(QUrl::fromLocalFile(QLatin1String("tmp.m3u")), "m3u");
|
||||
QVERIFY(res);
|
||||
|
||||
loadedSignal2.clear();
|
||||
errorSignal2.clear();
|
||||
playlist2.clear();
|
||||
QVERIFY(playlist2.isEmpty());
|
||||
playlist2.load(QUrl::fromLocalFile(QLatin1String("tmp.m3u")), "m3u");
|
||||
QCOMPARE(loadedSignal2.size(), 1);
|
||||
QTRY_VERIFY(errorSignal2.isEmpty());
|
||||
QCOMPARE(playlist.error(), QMediaPlaylist::NoError);
|
||||
|
||||
QCOMPARE(playlist.mediaCount(), playlist2.mediaCount());
|
||||
@@ -398,12 +411,20 @@ void tst_QMediaPlaylist::loadM3uFile()
|
||||
QMediaPlaylist playlist;
|
||||
|
||||
// Try to load playlist that does not exist in the testdata folder
|
||||
QSignalSpy loadSpy(&playlist, SIGNAL(loaded()));
|
||||
QSignalSpy loadFailedSpy(&playlist, SIGNAL(loadFailed()));
|
||||
QString testFileName = QFINDTESTDATA("testdata");
|
||||
playlist.load(QUrl::fromLocalFile(testFileName + "/missing_file.m3u"));
|
||||
QTRY_VERIFY(loadSpy.isEmpty());
|
||||
QVERIFY(!loadFailedSpy.isEmpty());
|
||||
QVERIFY(playlist.error() != QMediaPlaylist::NoError);
|
||||
|
||||
loadSpy.clear();
|
||||
loadFailedSpy.clear();
|
||||
testFileName = QFINDTESTDATA("testdata/test.m3u");
|
||||
playlist.load(QUrl::fromLocalFile(testFileName));
|
||||
QTRY_VERIFY(!loadSpy.isEmpty());
|
||||
QVERIFY(loadFailedSpy.isEmpty());
|
||||
QCOMPARE(playlist.error(), QMediaPlaylist::NoError);
|
||||
QCOMPARE(playlist.mediaCount(), 7);
|
||||
|
||||
@@ -420,10 +441,80 @@ void tst_QMediaPlaylist::loadM3uFile()
|
||||
//ensure #2 suffix is not stripped from path
|
||||
testFileName = QFINDTESTDATA("testdata/testfile2#suffix");
|
||||
QCOMPARE(playlist.media(6).canonicalUrl(), QUrl::fromLocalFile(testFileName));
|
||||
|
||||
// check ability to load from QNetworkRequest
|
||||
loadSpy.clear();
|
||||
loadFailedSpy.clear();
|
||||
playlist.load(QNetworkRequest(QUrl::fromLocalFile(QFINDTESTDATA("testdata/test.m3u"))));
|
||||
QTRY_VERIFY(!loadSpy.isEmpty());
|
||||
QVERIFY(loadFailedSpy.isEmpty());
|
||||
}
|
||||
|
||||
void tst_QMediaPlaylist::loadPLSFile()
|
||||
{
|
||||
QMediaPlaylist playlist;
|
||||
|
||||
// Try to load playlist that does not exist in the testdata folder
|
||||
QSignalSpy loadSpy(&playlist, SIGNAL(loaded()));
|
||||
QSignalSpy loadFailedSpy(&playlist, SIGNAL(loadFailed()));
|
||||
playlist.load(QNetworkRequest(QUrl::fromLocalFile(QFINDTESTDATA("testdata/test.m3u"))));
|
||||
QString testFileName = QFINDTESTDATA("testdata");
|
||||
playlist.load(QUrl::fromLocalFile(testFileName + "/missing_file.pls"));
|
||||
QTRY_VERIFY(loadSpy.isEmpty());
|
||||
QVERIFY(!loadFailedSpy.isEmpty());
|
||||
QVERIFY(playlist.error() != QMediaPlaylist::NoError);
|
||||
|
||||
// Try to load empty playlist
|
||||
loadSpy.clear();
|
||||
loadFailedSpy.clear();
|
||||
testFileName = QFINDTESTDATA("testdata/empty.pls");
|
||||
playlist.load(QUrl::fromLocalFile(testFileName));
|
||||
QTRY_VERIFY(!loadSpy.isEmpty());
|
||||
QVERIFY(loadFailedSpy.isEmpty());
|
||||
QCOMPARE(playlist.error(), QMediaPlaylist::NoError);
|
||||
QCOMPARE(playlist.mediaCount(), 0);
|
||||
|
||||
// Try to load regular playlist
|
||||
loadSpy.clear();
|
||||
loadFailedSpy.clear();
|
||||
testFileName = QFINDTESTDATA("testdata/test.pls");
|
||||
playlist.load(QUrl::fromLocalFile(testFileName));
|
||||
QTRY_VERIFY(!loadSpy.isEmpty());
|
||||
QVERIFY(loadFailedSpy.isEmpty());
|
||||
QCOMPARE(playlist.error(), QMediaPlaylist::NoError);
|
||||
QCOMPARE(playlist.mediaCount(), 7);
|
||||
|
||||
QCOMPARE(playlist.media(0).canonicalUrl(), QUrl(QLatin1String("http://test.host/path")));
|
||||
QCOMPARE(playlist.media(1).canonicalUrl(), QUrl(QLatin1String("http://test.host/path")));
|
||||
testFileName = QFINDTESTDATA("testdata/testfile");
|
||||
QCOMPARE(playlist.media(2).canonicalUrl(),
|
||||
QUrl::fromLocalFile(testFileName));
|
||||
testFileName = QFINDTESTDATA("testdata");
|
||||
QCOMPARE(playlist.media(3).canonicalUrl(),
|
||||
QUrl::fromLocalFile(testFileName + "/testdir/testfile"));
|
||||
QCOMPARE(playlist.media(4).canonicalUrl(), QUrl(QLatin1String("file:///testdir/testfile")));
|
||||
QCOMPARE(playlist.media(5).canonicalUrl(), QUrl(QLatin1String("file://path/name#suffix")));
|
||||
//ensure #2 suffix is not stripped from path
|
||||
testFileName = QFINDTESTDATA("testdata/testfile2#suffix");
|
||||
QCOMPARE(playlist.media(6).canonicalUrl(), QUrl::fromLocalFile(testFileName));
|
||||
|
||||
// Try to load a totem-pl generated playlist
|
||||
// (Format doesn't respect the spec)
|
||||
loadSpy.clear();
|
||||
loadFailedSpy.clear();
|
||||
playlist.clear();
|
||||
testFileName = QFINDTESTDATA("testdata/totem-pl-example.pls");
|
||||
playlist.load(QUrl::fromLocalFile(testFileName));
|
||||
QTRY_VERIFY(!loadSpy.isEmpty());
|
||||
QVERIFY(loadFailedSpy.isEmpty());
|
||||
QCOMPARE(playlist.error(), QMediaPlaylist::NoError);
|
||||
QCOMPARE(playlist.mediaCount(), 1);
|
||||
QCOMPARE(playlist.media(0).canonicalUrl(), QUrl(QLatin1String("http://test.host/path")));
|
||||
|
||||
|
||||
// check ability to load from QNetworkRequest
|
||||
loadSpy.clear();
|
||||
loadFailedSpy.clear();
|
||||
playlist.load(QNetworkRequest(QUrl::fromLocalFile(QFINDTESTDATA("testdata/test.pls"))));
|
||||
QTRY_VERIFY(!loadSpy.isEmpty());
|
||||
QVERIFY(loadFailedSpy.isEmpty());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user