4 #include <QNetworkReply>
5 #include "qnetworkaccessmanager.h"
12 #define private public
18 QNetworkAccessManager::urls.clear();
19 QSettings::values.clear();
20 QNetworkReply::data.close();
21 QNetworkReply::data.setData("");
24 void Ut_Remote::initTestCase()
29 void Ut_Remote::cleanupTestCase()
33 void Ut_Remote::init()
35 subject = new Remote();
39 void Ut_Remote::cleanup()
41 if (subject != NULL) {
48 void Ut_Remote::testSaveToFile_normal()
50 connect(subject, SIGNAL(saveFinished()),
51 this, SLOT(wakeTest()));
52 subject->m_name = "testname";
54 settings.setValue("lircConf", "/tmp/irwiTestLircConf");
55 QNetworkReply::data.close();
56 QNetworkReply::data.setData("testdata");
57 QNetworkReply::data.open(QIODevice::ReadOnly);
59 subject->saveToFile();
64 cond.wait(&mutex, 1000);
67 QCOMPARE(QNetworkAccessManager::urls.count(), 1);
68 QCOMPARE(QNetworkAccessManager::urls[0],
69 QString("http://mercury.wipsl.com/irwi/uploaded/testname"));
70 QCOMPARE(settings.value("remoteName", "fail").toString(),
72 QFile f("/tmp/irwiTestLircConf");
73 f.open(QIODevice::ReadOnly);
74 QByteArray testData = f.readAll();
76 QCOMPARE(testData, QNetworkReply::data.data());
79 void Ut_Remote::testSaveToFile_emptyname()
82 subject->saveToFile();
83 QCOMPARE(QNetworkAccessManager::urls.count(), 0);
85 QCOMPARE(settings.value("remoteName", "testname").toString(),
89 void Ut_Remote::testUpdateInfo_normal()
91 connect(subject, SIGNAL(infoUpdated()),
92 this, SLOT(wakeTest()));
93 subject->m_name = "testname";
94 QNetworkReply::data.close();
95 QNetworkReply::data.setData("1\n2\ntestmfg\n");
96 QNetworkReply::data.open(QIODevice::ReadOnly);
97 subject->updateInfo();
102 cond.wait(&mutex, 1000);
105 QCOMPARE(QNetworkAccessManager::urls.count(), 1);
106 QCOMPARE(QNetworkAccessManager::urls[0],
107 QString("http://mercury.wipsl.com/irwi/vote/get?name=testname"));
108 QCOMPARE(subject->rating(), 1);
109 QCOMPARE(subject->voteCount(), 2);
110 QCOMPARE(subject->mfg(), QString("testmfg"));
113 void Ut_Remote::testUpdateInfo_emptyname()
115 subject->m_name = "";
116 subject->updateInfo();
117 QCOMPARE(QNetworkAccessManager::urls.count(), 0);
120 void Ut_Remote::testSendRating_up()
122 subject->m_name = "testname";
123 subject->sendRating(Rating::Up);
124 QCOMPARE(QNetworkAccessManager::urls.count(), 1);
125 QCOMPARE(QNetworkAccessManager::urls[0],
126 QString("http://mercury.wipsl.com/irwi/vote/up?name=testname"));
129 void Ut_Remote::testSendRating_down()
131 subject->m_name = "testname";
132 subject->sendRating(Rating::Down);
133 QCOMPARE(QNetworkAccessManager::urls.count(), 1);
134 QCOMPARE(QNetworkAccessManager::urls[0],
135 QString("http://mercury.wipsl.com/irwi/vote/down?name=testname"));
138 void Ut_Remote::wakeTest()
144 QTEST_MAIN(Ut_Remote)