Unit tests
authorJoonas Partanen <t7pajo01@students.oamk.fi>
Tue, 8 Jun 2010 05:55:30 +0000 (08:55 +0300)
committerJoonas Partanen <t7pajo01@students.oamk.fi>
Tue, 8 Jun 2010 05:55:30 +0000 (08:55 +0300)
ut/ut_settingstable/ut_settingstable.cpp [new file with mode: 0644]
ut/ut_settingstable/ut_settingstable.h [new file with mode: 0644]
ut/ut_settingstable/ut_settingstable.pro [new file with mode: 0644]

diff --git a/ut/ut_settingstable/ut_settingstable.cpp b/ut/ut_settingstable/ut_settingstable.cpp
new file mode 100644 (file)
index 0000000..e1970b7
--- /dev/null
@@ -0,0 +1,70 @@
+#include "ut_settingstable.h"
+
+#define private public
+#define protected public
+#include "settingstable.h"
+#undef private
+#undef protected
+
+#include <QDebug>
+#include <QHeaderView>
+
+/** test functions() */
+
+void Ut_SettingsTable::initTestCase()
+{
+    subject = new SettingsTable();
+
+    QVERIFY(subject->verticalHeader()->isVisible() == false);
+    QVERIFY(subject->horizontalHeader()->isVisible() == false);
+}
+
+void Ut_SettingsTable::cleanupTestCase()
+{
+    delete subject;
+}
+
+void Ut_SettingsTable::testAppendRow()
+{
+    subject->appendRow(QString("testKey1"), QString("testValue1"));
+    subject->appendRow(QString("testKey2"), QString("testValue2"));
+
+    QCOMPARE(subject->rowCount(), 2);
+    QCOMPARE(subject->item(0,0)->text(), QString("testKey1"));
+    QCOMPARE(subject->item(0,1)->text(), QString("testValue1"));
+    QCOMPARE(subject->item(1,0)->text(), QString("testKey2"));
+    QCOMPARE(subject->item(1,1)->text(), QString("testValue2"));
+    subject->removeAllRows();
+}
+
+void Ut_SettingsTable::testRemoveAllRows()
+{
+    subject->removeAllRows();
+    QVERIFY(subject->rowCount() == 0);
+}
+
+void Ut_SettingsTable::testKey()
+{
+    subject->appendRow(QString("testKey1"), QString("testValue1"));
+    subject->appendRow(QString("testKey2"), QString("testValue2"));
+    subject->appendRow(QString("testKey3"), QString("testValue3"));
+
+    QCOMPARE(subject->key(0), QString("testKey1"));
+    QCOMPARE(subject->key(1), QString("testKey2"));
+    QCOMPARE(subject->key(2), QString("testKey3"));
+    subject->removeAllRows();
+}
+
+void Ut_SettingsTable::testValue()
+{
+    subject->appendRow(QString("testKey1"), QString("testValue1"));
+    subject->appendRow(QString("testKey2"), QString("testValue2"));
+    subject->appendRow(QString("testKey3"), QString("testValue3"));
+
+    QCOMPARE(subject->value(0), QString("testValue1"));
+    QCOMPARE(subject->value(1), QString("testValue2"));
+    QCOMPARE(subject->value(2), QString("testValue3"));
+    subject->removeAllRows();
+}
+
+QTEST_MAIN(Ut_SettingsTable)
diff --git a/ut/ut_settingstable/ut_settingstable.h b/ut/ut_settingstable/ut_settingstable.h
new file mode 100644 (file)
index 0000000..e619684
--- /dev/null
@@ -0,0 +1,27 @@
+#ifndef Ut_SettingsTable_H
+#define Ut_SettingsTable_H
+
+#include <QtTest/QtTest>
+#include <QObject>
+
+class SettingsTable;
+
+class Ut_SettingsTable : public QObject
+{
+    Q_OBJECT
+
+private:
+    SettingsTable *subject;
+
+private slots:
+
+    void initTestCase();
+    void cleanupTestCase();
+
+    void testAppendRow();
+    void testRemoveAllRows();
+    void testKey();
+    void testValue();
+};
+
+#endif // Ut_SettingsTable_H
diff --git a/ut/ut_settingstable/ut_settingstable.pro b/ut/ut_settingstable/ut_settingstable.pro
new file mode 100644 (file)
index 0000000..c321ffe
--- /dev/null
@@ -0,0 +1,10 @@
+!include( ../ut.pri ) {
+    error( Couldnt find the ut.pri file! )
+}
+
+
+HEADERS     += ut_settingstable.h
+HEADERS     += settingstable.h
+
+SOURCES     += ut_settingstable.cpp
+SOURCES     += settingstable.cpp