2 * This file is part of QMAFW
4 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). All rights
7 * Contact: Visa Smolander <visa.smolander@nokia.com>
9 * This software, including documentation, is protected by copyright controlled
10 * by Nokia Corporation. All rights are reserved. Copying, including
11 * reproducing, storing, adapting or translating, any or all of this material
12 * requires the prior written consent of Nokia Corporation. This material also
13 * contains confidential information which may not be disclosed to others
14 * without the prior written consent of Nokia.
18 #include <QtTest/QtTest>
22 #include "Ut_PlaylistFileUtility.h"
23 #include "../common/MafwStubHelper.h"
24 #include "MafwGstRendererPlaylistFileUtility.h"
26 void Ut_PlaylistFileUtility::initTestCase()
28 m_stubHelper = new MafwStubHelper;
29 m_utility = new MafwGstRendererPlaylistFileUtility(this);
32 void Ut_PlaylistFileUtility::testParsing()
34 QString file("/test-station.pls");
35 file.prepend(QDir::currentPath());
36 file.prepend("file://");
38 QSignalSpy readySpy(m_utility, SIGNAL(parsingReady(bool)));
39 QSignalSpy parsingSpy(m_utility, SIGNAL(firstItemParsed()));
40 m_utility->parsePlaylistFile(QUrl(file));
43 QCOMPARE(readySpy.count(), 1);
44 QList<QVariant> arguments = readySpy.takeFirst();
45 QVERIFY(arguments.at(0).toBool() == true);
46 QCOMPARE(parsingSpy.count(), 1);
48 //There is 19 entries in test-station.pls file
49 for (int i=0; i<19; i++)
51 QVERIFY(m_utility->takeFirstUri().length() > 0);
54 QVERIFY(m_utility->takeFirstUri().length() == 0);
57 void Ut_PlaylistFileUtility::testParsingForNotExistingFile()
59 QString file("/not-existing.pls");
60 file.prepend(QDir::currentPath());
61 file.prepend("file://");
62 QSignalSpy readySpy(m_utility, SIGNAL(parsingReady(bool)));
63 QSignalSpy parsingSpy(m_utility, SIGNAL(firstItemParsed()));
65 m_utility->parsePlaylistFile(QUrl(file));
67 QCOMPARE(readySpy.count(), 1);
68 QCOMPARE(parsingSpy.count(), 0);
69 QList<QVariant> arguments = readySpy.takeFirst();
70 QVERIFY(arguments.at(0).toBool() == false);
73 void Ut_PlaylistFileUtility::testParsingInvalidFileUri()
76 QString file("/test-station.pls");
77 file.prepend(QDir::currentPath());
78 QSignalSpy parsingSpy(m_utility, SIGNAL(firstItemParsed()));
79 QSignalSpy readySpy(m_utility, SIGNAL(parsingReady(bool)));
80 m_utility->parsePlaylistFile(QUrl(file));
82 QCOMPARE(parsingSpy.count(), 0);
83 QCOMPARE(readySpy.count(), 1);
84 QList<QVariant> arguments = readySpy.takeFirst();
85 QVERIFY(arguments.at(0).toBool() == false);
88 QString file2(QDir::currentPath());
89 file2.prepend("file://");
90 m_utility->parsePlaylistFile(file2);
92 QCOMPARE(parsingSpy.count(), 0);
93 QCOMPARE(readySpy.count(), 1);
94 arguments = readySpy.takeFirst();
95 QVERIFY(arguments.at(0).toBool() == false);
98 void Ut_PlaylistFileUtility::testParsingInvalidFile()
100 QString file("/test-station_invalid.pls");
101 file.prepend(QDir::currentPath());
102 file.prepend("file://");
104 QSignalSpy readySpy(m_utility, SIGNAL(parsingReady(bool)));
105 QSignalSpy parsingSpy(m_utility, SIGNAL(firstItemParsed()));
106 m_utility->parsePlaylistFile(QUrl(file));
109 QCOMPARE(readySpy.count(), 1);
110 QList<QVariant> arguments = readySpy.takeFirst();
111 QVERIFY(arguments.at(0).toBool() == true);
112 QCOMPARE(parsingSpy.count(), 0);
114 QVERIFY(m_utility->takeFirstUri().length() == 0);
117 void Ut_PlaylistFileUtility::testParsingASFFile()
119 QString file("/test.asf");
120 file.prepend(QDir::currentPath());
121 file.prepend("file://");
123 QSignalSpy readySpy(m_utility, SIGNAL(parsingReady(bool)));
124 QSignalSpy parsingSpy(m_utility, SIGNAL(firstItemParsed()));
125 m_utility->parsePlaylistFile(QUrl(file));
128 QCOMPARE(readySpy.count(), 1);
129 QList<QVariant> arguments = readySpy.takeFirst();
130 QVERIFY(arguments.at(0).toBool() == true);
131 QCOMPARE(parsingSpy.count(), 1);
133 for (int i=0; i < 1; i++)
135 QString test = m_utility->takeFirstUri();
136 QVERIFY(test.length() > 0);
137 QVERIFY(test.startsWith("mmsh://195"));
138 QVERIFY(test.endsWith(".asf"));
141 QVERIFY(m_utility->takeFirstUri().length() == 0);
144 void Ut_PlaylistFileUtility::cleanupTestCase()
149 QTEST_MAIN(Ut_PlaylistFileUtility)