From d126c41d6d968b7960497fa29aa0ee72d47b468d Mon Sep 17 00:00:00 2001 From: Jari Jarvi Date: Sun, 13 Jun 2010 20:14:50 +0300 Subject: [PATCH] Unit tests for RemoteList --- src/model.h | 4 ++++ ut/ut_remotelist/remotes.xml | 1 + ut/ut_remotelist/ut_remotelist.cpp | 41 ++++++++++++++++++++++++++---------- ut/ut_remotelist/ut_remotelist.h | 9 ++++---- ut/ut_remotelist/ut_remotelist.pro | 3 ++- 5 files changed, 42 insertions(+), 16 deletions(-) diff --git a/src/model.h b/src/model.h index 0b0b127..d22681b 100644 --- a/src/model.h +++ b/src/model.h @@ -3,6 +3,10 @@ struct Model { + Model() + { + } + Model(const QString &name, const QString &file) : name(name) , file(file) diff --git a/ut/ut_remotelist/remotes.xml b/ut/ut_remotelist/remotes.xml index 30266da..ea236df 100644 --- a/ut/ut_remotelist/remotes.xml +++ b/ut/ut_remotelist/remotes.xml @@ -3,6 +3,7 @@ + diff --git a/ut/ut_remotelist/ut_remotelist.cpp b/ut/ut_remotelist/ut_remotelist.cpp index 6eb7d8a..3aed64c 100644 --- a/ut/ut_remotelist/ut_remotelist.cpp +++ b/ut/ut_remotelist/ut_remotelist.cpp @@ -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()); + validModels["Lg"].append(Model("AKB69680403", "AKB69680_00")); + + validModels.insert("Leadtek", QList()); + validModels["Leadtek"].append(Model("Y04G0004", "Y04G0004_00")); - QStringList ll; - ll << "Lg" << "Leadtek"; + validModels.insert("Microsoft", QList()); + 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()); + 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()); + 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) diff --git a/ut/ut_remotelist/ut_remotelist.h b/ut/ut_remotelist/ut_remotelist.h index a904c11..478ca28 100644 --- a/ut/ut_remotelist/ut_remotelist.h +++ b/ut/ut_remotelist/ut_remotelist.h @@ -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 validMfgs; - QMap > validModels; + QMap validMfgs; // letter -- mfgs + QMap > validModels; // mfg ----- models }; #endif // UT_REMOTELIST_H + + diff --git a/ut/ut_remotelist/ut_remotelist.pro b/ut/ut_remotelist/ut_remotelist.pro index 471db5a..acc9cb3 100644 --- a/ut/ut_remotelist/ut_remotelist.pro +++ b/ut/ut_remotelist/ut_remotelist.pro @@ -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 + -- 1.7.9.5