More tests for remotelist
[irwi] / ut / ut_remotelist / ut_remotelist.cpp
1 #include "ut_remotelist.h"
2 #include "remotelist.h"
3 #include <QtTest>
4 #include <QStringList>
5
6 void Ut_RemoteList::initTestCase()
7 {
8     // TODO rewrite
9     validLetters << "L" << "M" << "P" << "T";
10
11     QStringList ll;
12     ll << "Lg" << "Leadtek";
13
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"));
18
19 //    validModels.insert("Leadtek", QStringList("Y04G0004"));
20 //    validModels.insert("Microsoft", QStringList("Xbox360"));
21 //    validModels.insert("Philips", QStringList("15PF4121"));
22 //    validModels.insert("Topfield", QStringList("PVR5000"));
23 }
24
25 void Ut_RemoteList::cleanupTestCase()
26 {
27 }
28
29 void Ut_RemoteList::init()
30 {
31 }
32
33 void Ut_RemoteList::testSetContent()
34 {
35 }
36
37 void Ut_RemoteList::testIsValid()
38 {
39     RemoteList subject("remotes.xml");
40     QCOMPARE(subject.isValid(), true);
41 }
42
43 void Ut_RemoteList::testIsValid_InvalidFile()
44 {
45     RemoteList subject("notxml");
46     QCOMPARE(subject.isValid(), false);
47 }
48
49 void Ut_RemoteList::testIsValid_FileNotFound()
50 {
51     RemoteList subject("thisdoesnotexist");
52     QCOMPARE(subject.isValid(), false);
53 }
54  
55 void Ut_RemoteList::testLetters()
56 {
57     QStringList letters = RemoteList("remotes.xml").letters();
58     QCOMPARE(validLetters.size(), letters.size());
59
60     for (int i = 0; i < letters.size(); ++i)
61     {
62         QCOMPARE(validLetters.at(i), letters.at(i));
63     }
64 }
65
66 void Ut_RemoteList::testManufacturers()
67 {
68     RemoteList subject("remotes.xml");
69
70     for (int i = 0; i < validMfgs.keys().size(); ++i)
71     {
72         QString letter = validMfgs.keys().at(i);
73         for (int j = 0; j < validMfgs.value(letter).size(); ++j)
74         {
75             QCOMPARE(validMfgs.value(letter).at(j), 
76                      subject.manufacturers(letter).at(j));
77         }
78     }
79 }
80
81 void Ut_RemoteList::testModels()
82 {
83     RemoteList subject("remotes.xml");
84
85     for (int i = 0; i < validModels.keys().size(); ++i)
86     {
87         QString mfg = validModels.keys().at(i);
88         for (int j = 0; j < validModels.value(mfg).size(); ++j)
89         {
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);
94         }
95     }
96 }
97
98
99 QTEST_MAIN(Ut_RemoteList)
100
101