202 // |
195 // |
203 void TestHintWidget::testActivate() |
196 void TestHintWidget::testActivate() |
204 { |
197 { |
205 init(true); |
198 init(true); |
206 |
199 |
207 HbLabel *hintLabel = mUiLoader->findWidget<HbLabel>(DOCML_NAME_HINT_LABEL); |
|
208 QVERIFY(hintLabel); |
|
209 |
|
210 mTestObject->setVisible(false); |
200 mTestObject->setVisible(false); |
211 |
201 |
212 // mServiceIconString empty. |
202 // mServiceIconString empty. |
213 mTestObject->mServiceIconString = QString(); |
203 mTestObject->mServiceIconString = QString(); |
214 mTestObject->activate(); |
204 mTestObject->activate(); |
215 QVERIFY(mTestObject->mServiceIcon == 0); |
205 QVERIFY(mTestObject->mServiceIcon == 0); |
216 QVERIFY(mTestObject->isVisible() == false); |
206 QVERIFY(mTestObject->isVisible() == false); |
|
207 QVERIFY(mTestObject->mActivated == false); |
217 |
208 |
218 // mServiceIconPressedString empty. |
209 // mServiceIconPressedString empty. |
219 mTestObject->mServiceIconString = "test"; |
210 mTestObject->mServiceIconString = "test"; |
220 mTestObject->mServiceIconPressedString = QString(); |
211 mTestObject->mServiceIconPressedString = QString(); |
221 mTestObject->activate(); |
212 mTestObject->activate(); |
222 QVERIFY(mTestObject->mServiceIcon == 0); |
213 QVERIFY(mTestObject->mServiceIcon == 0); |
223 QVERIFY(mTestObject->isVisible() == false); |
214 QVERIFY(mTestObject->isVisible() == false); |
|
215 QVERIFY(mTestObject->mActivated == false); |
224 |
216 |
225 // successful case. |
217 // successful case. |
226 mTestObject->mServiceIconPressedString = "test2"; |
218 mTestObject->mServiceIconPressedString = "test2"; |
227 hintLabel->setVisible(false); |
219 HbLabel *noVideosLabel = mUiLoader->findWidget<HbLabel>(DOCML_NAME_NO_VIDEOS_LABEL); |
|
220 QVERIFY(noVideosLabel); |
|
221 noVideosLabel->setVisible(false); |
228 |
222 |
229 mTestObject->activate(); |
223 mTestObject->activate(); |
230 QVERIFY(mTestObject->isVisible()); |
224 QVERIFY(mTestObject->isVisible()); |
231 QVERIFY(mTestObject->mServiceIcon != 0); |
225 QVERIFY(mTestObject->mServiceIcon != 0); |
232 QCOMPARE(mTestObject->mServiceIcon->iconName(), mTestObject->mServiceIconString); |
226 QCOMPARE(mTestObject->mServiceIcon->iconName(), mTestObject->mServiceIconString); |
233 QCOMPARE(mTestObject->mServiceIcon->iconName(QIcon::Normal, QIcon::On), |
227 QCOMPARE(mTestObject->mServiceIcon->iconName(QIcon::Normal, QIcon::On), |
234 mTestObject->mServiceIconPressedString); |
228 mTestObject->mServiceIconPressedString); |
235 QVERIFY(hintLabel->isVisible()); // checks that updateUiComponents() has been called. |
229 QVERIFY(noVideosLabel->isVisible()); // checks that updateUiComponents() has been called. |
|
230 QVERIFY(mTestObject->mActivated == true); |
236 |
231 |
237 cleanup(); |
232 cleanup(); |
238 } |
233 } |
239 |
234 |
240 // --------------------------------------------------------------------------- |
235 // --------------------------------------------------------------------------- |
243 // |
238 // |
244 void TestHintWidget::testDeactivate() |
239 void TestHintWidget::testDeactivate() |
245 { |
240 { |
246 init(true); |
241 init(true); |
247 |
242 |
|
243 mTestObject->setVisible(true); |
|
244 mTestObject->mActivated = true; |
|
245 |
|
246 // when serviceButton does not exist |
|
247 mTestObject->mServiceIcon = 0; |
|
248 mTestObject->mAddVideosIcon = 0; |
|
249 HbDocumentLoader::mFindWidgetFails = true; |
|
250 mTestObject->deactivate(); |
|
251 QVERIFY(mTestObject->mActivated == false); |
|
252 QVERIFY(mTestObject->isVisible() == false); |
|
253 |
|
254 // when icons are null, but servicebutton has non-null icon. |
|
255 mTestObject->mActivated = true; |
|
256 mTestObject->setVisible(true); |
|
257 HbDocumentLoader::mFindWidgetFails = false; |
248 HbPushButton *serviceButton = mUiLoader->findWidget<HbPushButton>(DOCML_NAME_HINT_BUTTON); |
258 HbPushButton *serviceButton = mUiLoader->findWidget<HbPushButton>(DOCML_NAME_HINT_BUTTON); |
249 QVERIFY(serviceButton); |
259 QVERIFY(serviceButton); |
250 |
|
251 mTestObject->setVisible(true); |
|
252 |
|
253 serviceButton->setIcon(HbIcon(QIcon(QPixmap(QSize(100,100))))); |
260 serviceButton->setIcon(HbIcon(QIcon(QPixmap(QSize(100,100))))); |
254 mTestObject->mServiceIcon = 0; |
|
255 mTestObject->mAddVideosIcon = 0; |
|
256 QVERIFY(serviceButton->icon().isNull() == false); // make sure test is valid. |
261 QVERIFY(serviceButton->icon().isNull() == false); // make sure test is valid. |
257 |
|
258 mTestObject->deactivate(); |
262 mTestObject->deactivate(); |
259 QVERIFY(serviceButton->icon().isNull()); |
263 QVERIFY(serviceButton->icon().isNull()); |
260 QVERIFY(mTestObject->isVisible() == false); |
264 QVERIFY(mTestObject->isVisible() == false); |
261 |
265 |
|
266 // when icons are non-null, but widget is not activated. |
262 mTestObject->setVisible(true); |
267 mTestObject->setVisible(true); |
263 mTestObject->mServiceIcon = new HbIcon; |
268 mTestObject->mServiceIcon = new HbIcon; |
264 mTestObject->mAddVideosIcon = new HbIcon; |
269 mTestObject->mAddVideosIcon = new HbIcon; |
265 |
270 mTestObject->deactivate(); |
|
271 QVERIFY(mTestObject->mServiceIcon != 0); |
|
272 QVERIFY(mTestObject->mAddVideosIcon != 0); |
|
273 QVERIFY(mTestObject->isVisible() == true); |
|
274 |
|
275 // when icons are non-null and widget is activated. |
|
276 mTestObject->mActivated = true; |
266 mTestObject->deactivate(); |
277 mTestObject->deactivate(); |
267 QVERIFY(mTestObject->mServiceIcon == 0); |
278 QVERIFY(mTestObject->mServiceIcon == 0); |
268 QVERIFY(mTestObject->mAddVideosIcon == 0); |
279 QVERIFY(mTestObject->mAddVideosIcon == 0); |
269 QVERIFY(mTestObject->isVisible() == false); |
280 QVERIFY(mTestObject->isVisible() == false); |
270 |
281 |
280 HbMainWindow *mainWnd = hbInstance->allMainWindows()[0]; |
291 HbMainWindow *mainWnd = hbInstance->allMainWindows()[0]; |
281 mainWnd->setOrientation(Qt::Horizontal); |
292 mainWnd->setOrientation(Qt::Horizontal); |
282 |
293 |
283 init(true); |
294 init(true); |
284 |
295 |
|
296 mTestObject->mServiceIcon = new HbIcon(QIcon(QPixmap(QSize(100,100)))); |
|
297 mTestObject->mAddVideosIcon = new HbIcon(QIcon(QPixmap(QSize(50,50)))); |
|
298 mTestObject->mActivated = true; |
|
299 |
|
300 HbDocumentLoader::mFindWidgetFails = true; |
|
301 // when a widget cannot be found. |
|
302 mTestObject->setLevel(VideoHintWidget::AllVideos); |
|
303 // no verification possible except that it doesn't crash? |
|
304 |
|
305 HbDocumentLoader::mFindWidgetFails = false; |
285 HbLabel *hintLabel = mUiLoader->findWidget<HbLabel>(DOCML_NAME_HINT_LABEL); |
306 HbLabel *hintLabel = mUiLoader->findWidget<HbLabel>(DOCML_NAME_HINT_LABEL); |
286 QVERIFY(hintLabel); |
307 QVERIFY(hintLabel); |
287 HbPushButton *serviceButton = mUiLoader->findWidget<HbPushButton>(DOCML_NAME_HINT_BUTTON); |
308 HbPushButton *serviceButton = mUiLoader->findWidget<HbPushButton>(DOCML_NAME_HINT_BUTTON); |
288 QVERIFY(serviceButton); |
309 QVERIFY(serviceButton); |
289 |
|
290 mTestObject->mServiceIcon = new HbIcon(QIcon(QPixmap(QSize(100,100)))); |
|
291 mTestObject->mAddVideosIcon = new HbIcon(QIcon(QPixmap(QSize(50,50)))); |
|
292 mTestObject->setVisible(true); |
|
293 |
310 |
294 mainWnd->setOrientation(Qt::Vertical); |
311 mainWnd->setOrientation(Qt::Vertical); |
295 mTestObject->setLevel(VideoHintWidget::AllVideos); |
312 mTestObject->setLevel(VideoHintWidget::AllVideos); |
296 QVERIFY(serviceButton->isVisible() == false); |
313 QVERIFY(serviceButton->isVisible() == false); |
297 QVERIFY(serviceButton->icon().isNull() == false); |
314 QVERIFY(serviceButton->icon().isNull() == false); |
298 QVERIFY(serviceButton->icon().qicon().cacheKey() == mTestObject->mServiceIcon->qicon().cacheKey()); |
315 QVERIFY(serviceButton->icon().qicon().cacheKey() == mTestObject->mServiceIcon->qicon().cacheKey()); |
299 QVERIFY(hintLabel->isVisible()); |
316 QVERIFY(hintLabel->isVisible()); |
300 |
317 |
301 mainWnd->setOrientation(Qt::Horizontal); |
318 mainWnd->setOrientation(Qt::Horizontal); |
|
319 mTestObject->mButtonShown = true; |
302 mTestObject->setLevel(VideoHintWidget::Collection); |
320 mTestObject->setLevel(VideoHintWidget::Collection); |
303 QVERIFY(serviceButton->isVisible()); |
321 QVERIFY(serviceButton->isVisible()); |
304 QVERIFY(serviceButton->icon().isNull() == false); |
322 QVERIFY(serviceButton->icon().isNull() == false); |
305 QVERIFY(serviceButton->icon().qicon().cacheKey() == mTestObject->mAddVideosIcon->qicon().cacheKey()); |
323 QVERIFY(serviceButton->icon().qicon().cacheKey() == mTestObject->mAddVideosIcon->qicon().cacheKey()); |
306 QVERIFY(hintLabel->isVisible() == false); |
324 QVERIFY(hintLabel->isVisible() == false); |
307 |
325 |
|
326 mTestObject->mButtonShown = false; |
|
327 mTestObject->setLevel(VideoHintWidget::Collection); |
|
328 QVERIFY(serviceButton->isVisible() == false); |
|
329 |
308 cleanup(); |
330 cleanup(); |
309 } |
331 } |
310 |
332 |
311 // --------------------------------------------------------------------------- |
333 // --------------------------------------------------------------------------- |
312 // testOrientationChangedSlot |
334 // testOrientationChangedSlot |
317 // NOTE: This also checks that the signals are connected and |
339 // NOTE: This also checks that the signals are connected and |
318 // disconnected correctly. |
340 // disconnected correctly. |
319 |
341 |
320 HbMainWindow *mainWnd = hbInstance->allMainWindows()[0]; |
342 HbMainWindow *mainWnd = hbInstance->allMainWindows()[0]; |
321 mainWnd->setOrientation(Qt::Horizontal); |
343 mainWnd->setOrientation(Qt::Horizontal); |
322 |
344 connect(this, SIGNAL(testSignal(Qt::Orientation)), mainWnd, SIGNAL(orientationChanged(Qt::Orientation))); |
323 init(true); |
345 |
324 |
346 init(true); |
325 HbPushButton *serviceButton = mUiLoader->findWidget<HbPushButton>(DOCML_NAME_HINT_BUTTON); |
347 |
326 QVERIFY(serviceButton); |
348 HbLabel *noVideosLabel = mUiLoader->findWidget<HbLabel>(DOCML_NAME_NO_VIDEOS_LABEL); |
|
349 QVERIFY(noVideosLabel); |
327 |
350 |
328 mTestObject->mServiceIconString = "dummy"; |
351 mTestObject->mServiceIconString = "dummy"; |
329 mTestObject->mServiceIconPressedString = "dummy2"; |
352 mTestObject->mServiceIconPressedString = "dummy2"; |
330 |
353 |
331 // test that updateUiComponents is not called when only initialize has been called, |
354 // test that updateUiComponents is not called when only initialize has been called, |
332 // ie that no activate calls have been made yet. |
355 // ie that no activate calls have been made yet. |
|
356 // mTestObject->setVisible is needed because othervise childs cannot be set visible, ie the |
|
357 // serviceButton->setVisible does not work as expected. |
333 mTestObject->setVisible(true); |
358 mTestObject->setVisible(true); |
334 serviceButton->setVisible(true); |
359 noVideosLabel->setVisible(true); |
335 mainWnd->setOrientation(Qt::Vertical); |
360 emit testSignal(Qt::Vertical); |
336 QVERIFY(serviceButton->isVisible()); |
361 QVERIFY(noVideosLabel->isVisible()); |
337 mTestObject->setVisible(false); |
362 mTestObject->setVisible(false); |
338 |
363 |
339 // tests that updateUiComponents is called when widget is visible. |
364 // tests that updateUiComponents is called when widget is visible. |
340 mTestObject->activate(); |
365 mTestObject->activate(); |
341 serviceButton->setVisible(false); |
366 noVideosLabel->setVisible(false); |
342 mainWnd->setOrientation(Qt::Horizontal); |
367 emit testSignal(Qt::Horizontal); |
343 QVERIFY(serviceButton->isVisible()); |
368 QVERIFY(noVideosLabel->isVisible()); |
344 mTestObject->deactivate(); |
369 mTestObject->deactivate(); |
345 |
370 |
346 // tests that updateUiComponents is not called when widget is not visible: |
371 // tests that updateUiComponents is not called when widget is not visible: |
347 |
372 // mTestObject->setVisible is needed because othervise childs cannot be set visible, ie the |
348 // this is needed because othervise childs cannot be set visible, ie the next line does not work as expected. |
373 // serviceButton->setVisible does not work as expected. |
349 mTestObject->setVisible(true); |
374 mTestObject->setVisible(true); |
350 serviceButton->setVisible(true); |
375 noVideosLabel->setVisible(true); |
351 mainWnd->setOrientation(Qt::Vertical); |
376 emit testSignal(Qt::Vertical); |
352 QVERIFY(serviceButton->isVisible()); |
377 QVERIFY(noVideosLabel->isVisible()); |
353 |
378 |
354 cleanup(); |
379 cleanup(); |
355 } |
380 } |
356 |
381 |
357 // end of file |
382 // end of file |