26 #include "logsmatchesview.h" |
26 #include "logsmatchesview.h" |
27 #include "logsdetailsview.h" |
27 #include "logsdetailsview.h" |
28 #include "hbstubs_helper.h" |
28 #include "hbstubs_helper.h" |
29 #include "logscontact.h" |
29 #include "logscontact.h" |
30 #include "qthighway_stub_helper.h" |
30 #include "qthighway_stub_helper.h" |
31 #include "logsapplication.h" |
31 #include "hbapplication.h" |
|
32 #include "logsappsettings.h" |
|
33 #include "logsforegroundwatcher.h" |
32 |
34 |
33 //SYSTEM |
35 //SYSTEM |
34 #include <QtTest/QtTest> |
36 #include <QtTest/QtTest> |
35 #include <HbView.h> |
37 #include <HbView.h> |
36 #include <hbapplication.h> |
38 #include <hbapplication.h> |
48 |
50 |
49 void UT_LogsViewManager::init() |
51 void UT_LogsViewManager::init() |
50 { |
52 { |
51 mMainWindow = new LogsMainWindow(); |
53 mMainWindow = new LogsMainWindow(); |
52 mService = new LogsServiceHandler(); |
54 mService = new LogsServiceHandler(); |
53 mServiceOld = new LogsServiceHandlerOld(); |
55 mServiceOld = new LogsServiceHandlerOld(); |
54 mLogsViewManager = new LogsViewManager(*mMainWindow, *mService, *mServiceOld); |
56 int argc = 0; |
|
57 char* argv = 0; |
|
58 mSettings = new LogsAppSettings(argc, &argv); |
|
59 mLogsViewManager = new LogsViewManager(*mMainWindow, *mService, *mServiceOld, *mSettings); |
55 } |
60 } |
56 |
61 |
57 void UT_LogsViewManager::cleanup() |
62 void UT_LogsViewManager::cleanup() |
58 { |
63 { |
59 delete mLogsViewManager; |
64 delete mLogsViewManager; |
76 QVERIFY( mLogsViewManager->mComponentsRepository ); |
80 QVERIFY( mLogsViewManager->mComponentsRepository ); |
77 QVERIFY( mLogsViewManager->mMainWindow.views().count() == 1 ); |
81 QVERIFY( mLogsViewManager->mMainWindow.views().count() == 1 ); |
78 QVERIFY( mLogsViewManager->mMainWindow.currentView() != 0 ); |
82 QVERIFY( mLogsViewManager->mMainWindow.currentView() != 0 ); |
79 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
83 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
80 QVERIFY( mLogsViewManager->mViewStack.count() == 1 ); |
84 QVERIFY( mLogsViewManager->mViewStack.count() == 1 ); |
81 QVERIFY( !mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
85 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
82 |
86 |
83 delete mLogsViewManager; |
87 delete mLogsViewManager; |
84 mLogsViewManager = 0; |
88 mLogsViewManager = 0; |
85 |
89 |
86 // Contructor when activity restoring started the app |
90 // Contructor when activity restoring started the app |
87 delete mMainWindow; |
91 delete mMainWindow; |
88 mMainWindow = 0; |
92 mMainWindow = 0; |
89 mMainWindow = new LogsMainWindow(); |
93 mMainWindow = new LogsMainWindow(); |
90 HbStubHelper::setActivityReason(Hb::ActivationReasonActivity); |
94 HbStubHelper::setActivityReason(Hb::ActivationReasonActivity); |
91 mLogsViewManager = new LogsViewManager(*mMainWindow, *mService, *mServiceOld); |
95 mLogsViewManager = new LogsViewManager(*mMainWindow, *mService, *mServiceOld, *mSettings); |
92 QVERIFY( mLogsViewManager->mComponentsRepository ); |
96 QVERIFY( mLogsViewManager->mComponentsRepository ); |
93 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
97 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
94 QVERIFY( mLogsViewManager->mViewStack.count() == 1 ); |
98 QVERIFY( mLogsViewManager->mViewStack.count() == 1 ); |
95 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
99 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
96 HbStubHelper::reset(); |
100 HbStubHelper::reset(); |
101 mMainWindow = new LogsMainWindow(); |
105 mMainWindow = new LogsMainWindow(); |
102 HbStubHelper::setActivityReason(Hb::ActivationReasonNormal); |
106 HbStubHelper::setActivityReason(Hb::ActivationReasonNormal); |
103 QtHighwayStubHelper::setIsService(true); |
107 QtHighwayStubHelper::setIsService(true); |
104 LogsServiceHandler* handler2 = new LogsServiceHandler(); |
108 LogsServiceHandler* handler2 = new LogsServiceHandler(); |
105 mLogsViewManager->mComponentsRepository->model()->mRefreshCalled = false; |
109 mLogsViewManager->mComponentsRepository->model()->mRefreshCalled = false; |
106 mLogsViewManager = new LogsViewManager(*mMainWindow, *handler2, *mServiceOld); |
110 mLogsViewManager = new LogsViewManager(*mMainWindow, *handler2, *mServiceOld, *mSettings); |
107 QVERIFY( mLogsViewManager->mComponentsRepository ); |
111 QVERIFY( mLogsViewManager->mComponentsRepository ); |
108 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
112 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
109 QVERIFY( mLogsViewManager->mViewStack.count() == 0 ); // Waiting for signal |
113 QVERIFY( mLogsViewManager->mViewStack.count() == 0 ); // Waiting for signal |
110 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
114 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
|
115 QVERIFY( !mLogsViewManager->mBackgroundStartupWatcher ); |
111 HbStubHelper::reset(); |
116 HbStubHelper::reset(); |
112 QtHighwayStubHelper::reset(); |
117 QtHighwayStubHelper::reset(); |
113 delete handler2; |
118 delete handler2; |
|
119 |
|
120 // Preloading startup |
|
121 mSettings->mFeaturePreloadedEnabled = true; |
|
122 delete mMainWindow; |
|
123 mMainWindow = 0; |
|
124 mMainWindow = new LogsMainWindow(); |
|
125 mLogsViewManager->mComponentsRepository->model()->mRefreshCalled = false; |
|
126 mLogsViewManager = new LogsViewManager(*mMainWindow, *mService, *mServiceOld, *mSettings); |
|
127 QVERIFY( mLogsViewManager->mComponentsRepository ); |
|
128 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
|
129 QVERIFY( mLogsViewManager->mViewStack.count() == 0 ); // Waiting for coming to foreground |
|
130 QVERIFY( !mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
|
131 QVERIFY( HbStubHelper::isTsTaskVisibilitySet() ); |
|
132 QVERIFY( !HbStubHelper::tsTaskVisibility() ); |
|
133 QVERIFY( mLogsViewManager->mBackgroundStartupWatcher ); |
|
134 HbStubHelper::reset(); |
|
135 QtHighwayStubHelper::reset(); |
114 } |
136 } |
115 |
137 |
116 |
138 |
117 void UT_LogsViewManager::testActivateView() |
139 void UT_LogsViewManager::testActivateView() |
118 { |
140 { |
245 mLogsViewManager->proceedExit(); |
267 mLogsViewManager->proceedExit(); |
246 QVERIFY( HbStubHelper::quitCalled() ); |
268 QVERIFY( HbStubHelper::quitCalled() ); |
247 QVERIFY( !mLogsViewManager->mComponentsRepository->model()->mCompressCalled ); |
269 QVERIFY( !mLogsViewManager->mComponentsRepository->model()->mCompressCalled ); |
248 |
270 |
249 // Fake exit enabled, data is compressed, app hidden and activity saved |
271 // Fake exit enabled, data is compressed, app hidden and activity saved |
250 LogsApplication* app = static_cast<LogsApplication*>( qApp ); |
272 mSettings->mFeatureFakeExitEnabledVal = 1; |
251 app->mFeatureFakeExitEnabled = true; |
|
252 HbStubHelper::reset(); |
273 HbStubHelper::reset(); |
253 mLogsViewManager->mComponentsRepository->model()->mCompressCalled = false; |
274 mLogsViewManager->mComponentsRepository->model()->mCompressCalled = false; |
254 QtHighwayStubHelper::reset(); |
275 QtHighwayStubHelper::reset(); |
|
276 HbApplication* app = static_cast<HbApplication*>( qApp ); |
255 QCOMPARE( app->activityManager()->activities().count(), 0 ); |
277 QCOMPARE( app->activityManager()->activities().count(), 0 ); |
256 mLogsViewManager->exitApplication(); |
278 mLogsViewManager->exitApplication(); |
257 QVERIFY( !HbStubHelper::quitCalled() ); |
279 QVERIFY( !HbStubHelper::quitCalled() ); |
258 QVERIFY( QtHighwayStubHelper::utilToBackground() ); |
280 QVERIFY( QtHighwayStubHelper::utilToBackground() ); |
259 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mCompressCalled ); |
281 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mCompressCalled ); |
270 LogsMainWindow window; |
292 LogsMainWindow window; |
271 window.setCurrentView(0); // clear stub static data |
293 window.setCurrentView(0); // clear stub static data |
272 LogsServiceHandler service; |
294 LogsServiceHandler service; |
273 LogsServiceHandlerOld serviceOld; |
295 LogsServiceHandlerOld serviceOld; |
274 service.mIsAppStartedUsingService = true; |
296 service.mIsAppStartedUsingService = true; |
275 LogsViewManager vm(window, service, serviceOld); |
297 LogsViewManager vm(window, service, serviceOld, *mSettings); |
276 QVERIFY( vm.mComponentsRepository ); |
298 QVERIFY( vm.mComponentsRepository ); |
277 QVERIFY( vm.mMainWindow.views().count() == 0 ); |
299 QVERIFY( vm.mMainWindow.views().count() == 0 ); |
278 QVERIFY( vm.mMainWindow.currentView() == 0 ); |
300 QVERIFY( vm.mMainWindow.currentView() == 0 ); |
279 QVERIFY( vm.mViewStack.count() == 0 ); |
301 QVERIFY( vm.mViewStack.count() == 0 ); |
280 } |
302 } |
377 emit mLogsViewManager->mViewStack.at(0)->exitAllowed(); |
399 emit mLogsViewManager->mViewStack.at(0)->exitAllowed(); |
378 QVERIFY( !HbStubHelper::quitCalled() ); |
400 QVERIFY( !HbStubHelper::quitCalled() ); |
379 QVERIFY( !mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
401 QVERIFY( !mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
380 |
402 |
381 // Gaining foreground causes data refresh if fake exit or preloading feature is enabled |
403 // Gaining foreground causes data refresh if fake exit or preloading feature is enabled |
382 HbStubHelper::reset(); |
404 // If no view activated yet, default view is activated |
383 LogsApplication* app = static_cast<LogsApplication*>( qApp ); |
405 HbStubHelper::reset(); |
384 app->mFeatureFakeExitEnabled = true; |
406 mMainWindow->setCurrentView(0); |
|
407 mLogsViewManager->mViewStack.clear(); |
|
408 mSettings->mFeatureFakeExitEnabledVal = 1; |
385 mLogsViewManager->appGainedForeground(); |
409 mLogsViewManager->appGainedForeground(); |
386 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
410 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
387 QVERIFY( HbStubHelper::isTsTaskVisibilitySet() ); |
411 QVERIFY( HbStubHelper::isTsTaskVisibilitySet() ); |
388 QVERIFY( HbStubHelper::tsTaskVisibility() ); |
412 QVERIFY( HbStubHelper::tsTaskVisibility() ); |
|
413 QVERIFY( mMainWindow->currentView() != 0 ); |
|
414 QCOMPARE( mLogsViewManager->mViewStack.count(), 1 ); |
389 |
415 |
390 HbStubHelper::reset(); |
416 HbStubHelper::reset(); |
391 mLogsViewManager->mComponentsRepository->model()->mRefreshCalled = false; |
417 mLogsViewManager->mComponentsRepository->model()->mRefreshCalled = false; |
392 app->mFeatureFakeExitEnabled = false; |
418 mSettings->mFeatureFakeExitEnabledVal = 0; |
393 app->mFeaturePreloadedEnabled = true; |
419 mSettings->mFeaturePreloadedEnabled = true; |
394 mLogsViewManager->appGainedForeground(); |
420 mLogsViewManager->appGainedForeground(); |
395 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
421 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
396 QVERIFY( HbStubHelper::isTsTaskVisibilitySet() ); |
422 QVERIFY( HbStubHelper::isTsTaskVisibilitySet() ); |
397 QVERIFY( HbStubHelper::tsTaskVisibility() ); |
423 QVERIFY( HbStubHelper::tsTaskVisibility() ); |
398 } |
424 } |
419 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
445 QVERIFY( static_cast<LogsBaseView*>( mLogsViewManager->mMainWindow.currentView() )->viewId() == LogsRecentViewId ); |
420 QVERIFY( !mLogsViewManager->mComponentsRepository->dialpad()->mIsOpen ); |
446 QVERIFY( !mLogsViewManager->mComponentsRepository->dialpad()->mIsOpen ); |
421 QCOMPARE( mLogsViewManager->mComponentsRepository->dialpad()->mLineEdit->text(), QString("") ); |
447 QCOMPARE( mLogsViewManager->mComponentsRepository->dialpad()->mLineEdit->text(), QString("") ); |
422 QVERIFY( HbStubHelper::isWidgetRaised() ); |
448 QVERIFY( HbStubHelper::isWidgetRaised() ); |
423 } |
449 } |
|
450 |
|
451 void UT_LogsViewManager::testBgStartupForegroundGained() |
|
452 { |
|
453 if ( !mLogsViewManager->mBackgroundStartupWatcher ){ |
|
454 mLogsViewManager->mBackgroundStartupWatcher = new LogsForegroundWatcher(); |
|
455 } |
|
456 HbStubHelper::reset(); |
|
457 mLogsViewManager->mComponentsRepository->model()->mRefreshCalled = false; |
|
458 mSettings->mFeaturePreloadedEnabled = true; |
|
459 mLogsViewManager->bgStartupForegroundGained(); |
|
460 QVERIFY( mLogsViewManager->mComponentsRepository->model()->mRefreshCalled ); |
|
461 QVERIFY( HbStubHelper::isTsTaskVisibilitySet() ); |
|
462 QVERIFY( HbStubHelper::tsTaskVisibility() ); |
|
463 QVERIFY( HbStubHelper::isWidgetRaised() ); |
|
464 } |