1 #include "ut_remotelist.h"
2 #include "remotelist.h"
6 void Ut_RemoteList::initTestCase()
9 validLetters << "L" << "M" << "P" << "T";
12 ll << "Lg" << "Leadtek";
14 validMfgs.insert(validLetters.at(0), ll);
15 validMfgs.insert(validLetters.at(1), QStringList("Microsoft"));
16 validMfgs.insert(validLetters.at(2), QStringList("Philips"));
17 validMfgs.insert(validLetters.at(3), QStringList("Topfield"));
19 // validModels.insert("Leadtek", QStringList("Y04G0004"));
20 // validModels.insert("Microsoft", QStringList("Xbox360"));
21 // validModels.insert("Philips", QStringList("15PF4121"));
22 // validModels.insert("Topfield", QStringList("PVR5000"));
25 void Ut_RemoteList::cleanupTestCase()
29 void Ut_RemoteList::init()
33 void Ut_RemoteList::testSetContent()
37 void Ut_RemoteList::testIsValid()
39 RemoteList subject("remotes.xml");
40 QCOMPARE(subject.isValid(), true);
43 void Ut_RemoteList::testIsValid_InvalidFile()
45 RemoteList subject("notxml");
46 QCOMPARE(subject.isValid(), false);
49 void Ut_RemoteList::testIsValid_FileNotFound()
51 RemoteList subject("thisdoesnotexist");
52 QCOMPARE(subject.isValid(), false);
55 void Ut_RemoteList::testLetters()
57 QStringList letters = RemoteList("remotes.xml").letters();
58 QCOMPARE(validLetters.size(), letters.size());
60 for (int i = 0; i < letters.size(); ++i)
62 QCOMPARE(validLetters.at(i), letters.at(i));
66 void Ut_RemoteList::testManufacturers()
68 RemoteList subject("remotes.xml");
70 for (int i = 0; i < validMfgs.keys().size(); ++i)
72 QString letter = validMfgs.keys().at(i);
73 for (int j = 0; j < validMfgs.value(letter).size(); ++j)
75 QCOMPARE(validMfgs.value(letter).at(j),
76 subject.manufacturers(letter).at(j));
81 void Ut_RemoteList::testModels()
83 RemoteList subject("remotes.xml");
85 for (int i = 0; i < validModels.keys().size(); ++i)
87 QString mfg = validModels.keys().at(i);
88 for (int j = 0; j < validModels.value(mfg).size(); ++j)
90 QCOMPARE(validModels.value(mfg).at(j).name,
91 subject.models(mfg).at(j).name);
92 QCOMPARE(validModels.value(mfg).at(j).file,
93 subject.models(mfg).at(j).file);
99 QTEST_MAIN(Ut_RemoteList)