Unit tests for RemoteList
authorJari Jarvi <t7jaja00@students.oamk.fi>
Sun, 13 Jun 2010 17:14:50 +0000 (20:14 +0300)
committerJari Jarvi <t7jaja00@students.oamk.fi>
Sun, 13 Jun 2010 17:14:50 +0000 (20:14 +0300)
src/model.h
ut/ut_remotelist/remotes.xml
ut/ut_remotelist/ut_remotelist.cpp
ut/ut_remotelist/ut_remotelist.h
ut/ut_remotelist/ut_remotelist.pro

index 0b0b127..d22681b 100644 (file)
@@ -3,6 +3,10 @@
 
 struct Model
 {
+    Model()
+    {
+    }
+
     Model(const QString &name, const QString &file)
         : name(name)
         , file(file)
index 30266da..ea236df 100644 (file)
@@ -3,6 +3,7 @@
 <char id="P">
     <mfg id="Philips">
         <model file="15PF4121_00" name="15PF4121"/>
+        <model file="filename" name="modelname"/>
     </mfg>
 </char>
 <char id="L">
index 6eb7d8a..3aed64c 100644 (file)
@@ -5,21 +5,39 @@
 
 void Ut_RemoteList::initTestCase()
 {
+    QStringList mfgs;
+    mfgs << "Lg" << "Leadtek" << "Microsoft" << "Philips" << "Topfield";
+
+    for (int i = 0; i < mfgs.size(); ++i)
+    {
+        QChar letter = mfgs.at(i).at(0);
+        QStringList l;
+
+        for (int j = 0; j < mfgs.size(); ++j)
+        {
+            if (mfgs.at(j).at(0) == letter)
+                l << mfgs.at(j);
+        }
+        validMfgs.insert(letter, l);
+        l.clear();
+    }
+
     // TODO rewrite
-    validLetters << "L" << "M" << "P" << "T";
+    validModels.insert("Lg", QList<Model>());
+    validModels["Lg"].append(Model("AKB69680403", "AKB69680_00"));
+
+    validModels.insert("Leadtek", QList<Model>()); 
+    validModels["Leadtek"].append(Model("Y04G0004", "Y04G0004_00"));
 
-    QStringList ll;
-    ll << "Lg" << "Leadtek";
+    validModels.insert("Microsoft", QList<Model>()); 
+    validModels["Microsoft"].append(Model("Xbox360", "Xbox360_00"));
 
-    validMfgs.insert(validLetters.at(0), ll);
-    validMfgs.insert(validLetters.at(1), QStringList("Microsoft"));
-    validMfgs.insert(validLetters.at(2), QStringList("Philips"));
-    validMfgs.insert(validLetters.at(3), QStringList("Topfield"));
+    validModels.insert("Philips", QList<Model>()); 
+    validModels["Philips"].append(Model("15PF4121", "15PF4121_00"));
+    validModels["Philips"].append(Model("modelname", "filename"));
 
-//    validModels.insert("Leadtek", QStringList("Y04G0004"));
-//    validModels.insert("Microsoft", QStringList("Xbox360"));
-//    validModels.insert("Philips", QStringList("15PF4121"));
-//    validModels.insert("Topfield", QStringList("PVR5000"));
+    validModels.insert("Topfield", QList<Model>()); 
+    validModels["Topfield"].append(Model("PVR5000", "PVR_5000_00"));
 }
 
 void Ut_RemoteList::cleanupTestCase()
@@ -55,6 +73,7 @@ void Ut_RemoteList::testIsValid_FileNotFound()
 void Ut_RemoteList::testLetters()
 {
     QStringList letters = RemoteList("remotes.xml").letters();
+    QStringList validLetters = validMfgs.keys();
     QCOMPARE(validLetters.size(), letters.size());
 
     for (int i = 0; i < letters.size(); ++i)
index a904c11..478ca28 100644 (file)
@@ -14,7 +14,7 @@ class Ut_RemoteList: public QObject
 private slots:
     void initTestCase();
     void cleanupTestCase();
-    void init();    // Before each test case
+    void init();
     
     void testSetContent();
     void testIsValid();
@@ -25,10 +25,11 @@ private slots:
     void testModels();
 
 private:
-    QStringList validLetters;
-    QMap<QString, QStringList> validMfgs;
-    QMap<QString, QList<Model> > validModels;
+    QMap<QString, QStringList> validMfgs;       // letter -- mfgs
+    QMap<QString, QList<Model> > validModels;   // mfg ----- models
 };
 
 #endif // UT_REMOTELIST_H
 
+
+
index 471db5a..acc9cb3 100644 (file)
@@ -3,7 +3,6 @@
 }
 
 QT += xml 
-QT += testlib
 
 HEADERS += model.h
 HEADERS += ut_remotelist.h
@@ -12,3 +11,5 @@ HEADERS += remotelist.h
 SOURCES += ut_remotelist.cpp
 SOURCES += remotelist.cpp
 
+# unix:QMAKE_POST_LINK=./$$TARGET
+