controlpanelplugins/themeplugin/tsrc/unit/unittest_cpthemepreview/unittest_cpthemepreview.cpp
--- a/controlpanelplugins/themeplugin/tsrc/unit/unittest_cpthemepreview/unittest_cpthemepreview.cpp Thu Aug 05 11:28:29 2010 +0800
+++ b/controlpanelplugins/themeplugin/tsrc/unit/unittest_cpthemepreview/unittest_cpthemepreview.cpp Tue Aug 24 10:56:32 2010 +0800
@@ -19,116 +19,54 @@
#include "cpthemepreview.h"
#include "cpthemechanger.h"
+#include "cpthemeutil.h"
class TestCpThemePreview : public QObject
{
Q_OBJECT
private slots:
- void init();
-
- void testConstructor();
- void testConstructor2();
- void testSetThemeName();
- void testSetPreviewIcon();
- void testThemeSelected();
-
- void cleanup();
-
-private:
- CpThemeChanger *mThemeChanger;
+
+ void testAll();
+
};
-void TestCpThemePreview::init()
-{
- mThemeChanger = new CpThemeChanger();
-}
-
-void TestCpThemePreview::cleanup()
+void TestCpThemePreview::testAll()
{
- delete mThemeChanger;
-}
+ QList<QPair<QString, QString> > themes = CpThemeUtil::availableThemes();
+
+ QPair<QString, QString> pair;
+
+ pair = themes.at(0);
+
+ QString name = pair.first;
+ QString themePath = pair.second;
+ CpThemeInfo* themeInfo = CpThemeUtil::buildThemeInfo(themePath, name);
+
+ CpThemePreview *obj = new CpThemePreview(*themeInfo);
+
+
+ QVERIFY (obj != 0 );
+ QCOMPARE(obj->themeName(), name);
+ QCOMPARE(obj->themeIcon(), themeInfo->icon());
-void TestCpThemePreview::testConstructor()
-{
- CpThemePreview *obj = new CpThemePreview();
-
- QVERIFY( obj != 0 );
+ delete themeInfo;
+
+ pair = themes.at(1);
+ name = pair.first;
+ themePath = pair.second;
+ themeInfo = CpThemeUtil::buildThemeInfo(themePath, name);
+
+ obj->setThemeInfo(*themeInfo);
+
+ QCOMPARE(obj->themeName(), name);
+ QCOMPARE(obj->themeIcon(), themeInfo->icon());
+
delete obj;
-}
-void TestCpThemePreview::testConstructor2()
-{
- QList<CpThemeChanger::ThemeInfo> themeInfo = mThemeChanger->themes();
-
- for (int i = 0; i < themeInfo.size(); ++i) {
- QString name = themeInfo.at(i).themeName;
- QString icon = themeInfo.at(i).iconPath;
-
- CpThemePreview *obj = new CpThemePreview(name, icon);
- QVERIFY (obj != 0 );
- QCOMPARE(obj->themeName(), name);
-
- delete obj;
- }
-
- // try with gibberish for the name and/or icon
- QString name = QString("alzihgiaureh");
- QString icon = QString("ahilwvihln");
- CpThemePreview *obj = new CpThemePreview(name);
- QVERIFY(obj != 0);
- delete obj;
-
- obj = new CpThemePreview(name,icon);
- QVERIFY(obj != 0);
- delete obj;
}
-void TestCpThemePreview::testSetThemeName()
-{
- CpThemePreview *obj = new CpThemePreview();
- QList<CpThemeChanger::ThemeInfo> themeInfo = mThemeChanger->themes();
-
- for (int i = 0; i < themeInfo.size(); ++i) {
- QString name = themeInfo.at(i).themeName;
-
- obj->setThemeName(name);
- QCOMPARE(obj->themeName(), name);
- }
-
- delete obj;
-}
-
-// NULL TEST
-void TestCpThemePreview::testSetPreviewIcon()
-{
- CpThemePreview *obj = new CpThemePreview();
- QList<CpThemeChanger::ThemeInfo> themeInfo = mThemeChanger->themes();
-
- for (int i = 0; i < themeInfo.size(); ++i) {
- QString name = themeInfo.at(i).themeName;
-
- obj->setThemeName(name);
- QCOMPARE(obj->themeName(), name);
- }
-
- delete obj;
-}
-
-void TestCpThemePreview::testThemeSelected()
-{
- CpThemePreview *obj = new CpThemePreview();
- QSignalSpy spy(obj,SIGNAL(applyTheme(const QString&)));
-
- obj->themeSelected();
-
- QCOMPARE(spy.count(), 1);
-
- delete obj;
-}
-
-
QTEST_MAIN(TestCpThemePreview)
#include "unittest_cpthemepreview.moc"