diff -r c5af8598d22c -r e4c884866116 logsui/logsapp/tsrc/ut_logsapp/src/ut_logsrecentcallsview.cpp --- a/logsui/logsapp/tsrc/ut_logsapp/src/ut_logsrecentcallsview.cpp Thu Sep 02 20:27:05 2010 +0300 +++ b/logsui/logsapp/tsrc/ut_logsapp/src/ut_logsrecentcallsview.cpp Fri Sep 17 08:29:34 2010 +0300 @@ -29,11 +29,11 @@ #include "logsmessage.h" #include "logscontact.h" #include "logsmatchesmodel.h" +#include "logsmainwindow.h" //SYSTEM #include #include -#include #include #include #include @@ -59,7 +59,7 @@ void UT_LogsRecentCallsView::initTestCase() { - mMainWindow = new HbMainWindow(); + mMainWindow = new LogsMainWindow(); mViewManager = new LogsViewManagerStub(*mMainWindow); } @@ -132,20 +132,33 @@ QVERIFY( view->mInitialized ); QVERIFY( view->mFilter ); QVERIFY( view->mEmptyListLabel ); + QVERIFY( !view->mModel->mMissedCallsCounterCleared ); VERIFY_CHECKED_ACTION( view, logsShowFilterRecentMenuActionId ) // Change views view->activated(false, QVariant(XQService::LogsViewReceived)); QVERIFY( view->mFilter ); QVERIFY( view->mFilter->filterType() == LogsFilter::Received ); + QVERIFY( !view->mModel->mMissedCallsCounterCleared ); VERIFY_CHECKED_ACTION( view, logsShowFilterReceivedMenuActionId ) view->activated(false, QVariant(XQService::LogsViewMissed)); - QVERIFY( view->mFilter->filterType() == LogsFilter::Missed ); + QVERIFY( view->mFilter->filterType() == LogsFilter::Missed ); + QVERIFY( view->mModel->mMissedCallsCounterCleared ); VERIFY_CHECKED_ACTION( view, logsShowFilterMissedMenuActionId ) + + // Change to missed view again, no need to update view, only + // missed call counter updated + view->mModel->mMissedCallsCounterCleared = false; + view->updateFilter(LogsFilter::Received); + view->activated(false, QVariant(XQService::LogsViewMissed)); + QVERIFY( view->mFilter->filterType() == LogsFilter::Received ); + QVERIFY( view->mModel->mMissedCallsCounterCleared ); + view->mModel->mMissedCallsCounterCleared = false; view->activated(false, QVariant(XQService::LogsViewCalled)); QVERIFY( view->mFilter->filterType() == LogsFilter::Called ); + QVERIFY( !view->mModel->mMissedCallsCounterCleared ); VERIFY_CHECKED_ACTION( view, logsShowFilterDialledMenuActionId ) view->mViewManager.mainWindow().setOrientation( Qt::Horizontal ); @@ -153,6 +166,7 @@ view->mActivating = true; view->activated(false, QVariant(XQService::LogsViewAll)); QVERIFY( view->mFilter->filterType() == LogsFilter::All ); + QVERIFY( !view->mModel->mMissedCallsCounterCleared ); VERIFY_CHECKED_ACTION( view, logsShowFilterRecentMenuActionId ) QVERIFY( !view->mDialpad->editor().text().isEmpty() ); QVERIFY( view->mListView->layoutName() == logsListLandscapeLayout ); @@ -440,8 +454,28 @@ QCOMPARE(view->mCurrentView, XQService::LogsViewCalled); QCOMPARE(view->mAppearingView, XQService::LogsViewCalled); + //vertical swipe started, gesture cancel policy not modified + HbStubHelper::setGestureState(Qt::GestureStarted); + event2.setAccepted(Qt::SwipeGesture, false); + swipe->setSceneSwipeAngle(70); + QVERIFY(swipe->gestureCancelPolicy() == QGesture::CancelNone); + view->gestureEvent(&event2); + QCOMPARE(view->mCurrentView, XQService::LogsViewCalled); + QCOMPARE(view->mAppearingView, XQService::LogsViewCalled); + QVERIFY(swipe->gestureCancelPolicy() == QGesture::CancelNone); + + //horizontal swipe started, gesture cancel policy modified to prevent tap + const int swipeAngleRight = 10; + HbStubHelper::setGestureState(Qt::GestureStarted); + event2.setAccepted(Qt::SwipeGesture, false); + swipe->setSceneSwipeAngle(swipeAngleRight); + QVERIFY(swipe->gestureCancelPolicy() == QGesture::CancelNone); + view->gestureEvent(&event2); + QCOMPARE(view->mCurrentView, XQService::LogsViewCalled); + QCOMPARE(view->mAppearingView, XQService::LogsViewCalled); + QVERIFY(swipe->gestureCancelPolicy() == QGesture::CancelAllInContext); + //swipe right - const int swipeAngleRight = 10; HbStubHelper::setGestureState(Qt::GestureFinished); event2.setAccepted(Qt::SwipeGesture, false); swipe->setSceneSwipeAngle(swipeAngleRight); @@ -979,38 +1013,3 @@ QVERIFY( args2.toInt() == XQService::LogsViewMissed); } - -void UT_LogsRecentCallsView::testEventFilter() -{ - // Non-gesture event - HbLabel object; - QEvent dummyEvent(QEvent::Show); - QVERIFY( !mRecentCallsView->eventFilter(&object, &dummyEvent) ); - - // Swipe gesture event - QList list; - QGestureEvent event(list); - QSwipeGesture* swipe = new QSwipeGesture(); - list.append(swipe); - QVERIFY( !mRecentCallsView->eventFilter(&object, &event) ); - QVERIFY( !swipe->property("horizontallyRestricted").isValid() ); - - // Tap gesture on some other object (not mListView) - QTapGesture* tap = new QTapGesture(); - list.append(tap); - QGestureEvent event2(list); - HbStubHelper::setGestureState(Qt::GestureStarted); - QVERIFY( !mRecentCallsView->eventFilter(&object, &event2) ); - QVERIFY( !tap->property("horizontallyRestricted").isValid() ); - - //Tap gesture on list item => property is set - mRecentCallsView->mListView = new HbListView(); - mRepository->model()->mTextData.append("testdata"); - HbAbstractViewItem* viewItem = mRecentCallsView->mListView->currentViewItem(); - QVERIFY( !mRecentCallsView->eventFilter(viewItem, &event2) ); - QVERIFY( tap->property("horizontallyRestricted").isValid() ); - - qDeleteAll(list); - delete mRecentCallsView->mListView; - mRecentCallsView->mListView = 0; -}