logsui/logsapp/tsrc/ut_logsapp/src/ut_logsbaseview.cpp
changeset 19 e4c884866116
parent 16 c5af8598d22c
child 18 acd4e87b24b4
equal deleted inserted replaced
16:c5af8598d22c 19:e4c884866116
    24 #include "logsmessage.h"
    24 #include "logsmessage.h"
    25 #include "logscontact.h"
    25 #include "logscontact.h"
    26 #include "hbstubs_helper.h"
    26 #include "hbstubs_helper.h"
    27 #include "logsmodel.h"
    27 #include "logsmodel.h"
    28 #include "logsdetailsmodel.h"
    28 #include "logsdetailsmodel.h"
       
    29 #include "logsmainwindow.h"
    29 
    30 
    30 //SYSTEM
    31 //SYSTEM
    31 #include <QtTest/QtTest>
    32 #include <QtTest/QtTest>
    32 #include <hbmainwindow.h>
       
    33 #include <hbaction.h>
    33 #include <hbaction.h>
    34 #include <hbinstance.h>
    34 #include <hbinstance.h>
    35 #include <hbmenu.h>
    35 #include <hbmenu.h>
    36 #include <dialpad.h>
    36 #include <dialpad.h>
    37 #include <hblineedit.h>
    37 #include <hblineedit.h>
    42 #include <hbapplication.h>
    42 #include <hbapplication.h>
    43 #include <hbactivitymanager.h>
    43 #include <hbactivitymanager.h>
    44 
    44 
    45 void UT_LogsBaseView::initTestCase()
    45 void UT_LogsBaseView::initTestCase()
    46 {
    46 {
    47     mMainWindow = new HbMainWindow();
    47     mMainWindow = new LogsMainWindow();
    48     mViewManager = new LogsViewManagerStub(*mMainWindow);
    48     mViewManager = new LogsViewManagerStub(*mMainWindow);
    49 }
    49 }
    50 
    50 
    51 void UT_LogsBaseView::cleanupTestCase()
    51 void UT_LogsBaseView::cleanupTestCase()
    52 {
    52 {
   101     mBaseView->deactivated(); // NOP
   101     mBaseView->deactivated(); // NOP
   102 }
   102 }
   103 
   103 
   104 void UT_LogsBaseView::testResetView()
   104 void UT_LogsBaseView::testResetView()
   105 {
   105 {
   106     // Opened dialpad is closed and text in it is cleared
   106     mBaseView->resetView(); // NOP
   107     mBaseView->mDialpad->mIsOpen = true;
       
   108     mBaseView->mDialpad->mLineEdit->setText("testing");
       
   109     mBaseView->resetView();
       
   110     QVERIFY( !mBaseView->mDialpad->mIsOpen );
       
   111     QVERIFY( mBaseView->mDialpad->mLineEdit->text() == "" );
       
   112     
       
   113     // Text is cleared even if dialpad would be closed
       
   114     mBaseView->mDialpad->mLineEdit->setText("testingagain");
       
   115     mBaseView->resetView();
       
   116     QVERIFY( !mBaseView->mDialpad->mIsOpen );
       
   117     QVERIFY( mBaseView->mDialpad->mLineEdit->text() == "" );
       
   118 }
   107 }
   119 
   108 
   120 void UT_LogsBaseView::testShowFilterMenu()
   109 void UT_LogsBaseView::testShowFilterMenu()
   121 {
   110 {
   122     HbStubHelper::reset();
   111     HbStubHelper::reset();
   656     model2.setStringList(itemTexts);
   645     model2.setStringList(itemTexts);
   657     
   646     
   658     list.setModel(&model);
   647     list.setModel(&model);
   659     
   648     
   660     // No content found, nop
   649     // No content found, nop
   661     mBaseView->ensureListPositioning(list);
   650     mBaseView->ensureListPositioning(list, false);
   662     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   651     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   663     QVERIFY( !HbStubHelper::listScrollToCalled() );
   652     QVERIFY( !HbStubHelper::listScrollToCalled() );
   664     
   653     
   665     // Content found, no visible items, nop
   654     // Content found, no visible items, nop
   666     mRepository->recentCallsView();
   655     mRepository->recentCallsView();
   667     mBaseView->activated(false, QVariant());
   656     mBaseView->activated(false, QVariant());
   668     mBaseView->ensureListPositioning(list);
   657     mBaseView->ensureListPositioning(list, false);
   669     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   658     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   670     QVERIFY( !HbStubHelper::listScrollToCalled() );
   659     QVERIFY( !HbStubHelper::listScrollBarPolicySet() );
   671     
   660     
   672     // Content found and visible items which can fit the screen, height of item zero, nop
   661     // Content found and visible items which can fit the screen, height of item zero, nop
   673     HbWidget* content = 
   662     HbWidget* content = 
   674             qobject_cast<HbWidget*>( mRepository->findWidget( logsContentId ) );
   663             qobject_cast<HbWidget*>( mRepository->findWidget( logsContentId ) );
   675     content->setContentsMargins(0,0,0,0);
   664     content->setContentsMargins(0,0,0,0);
   677     
   666     
   678     HbListViewItem* item = new HbListViewItem;
   667     HbListViewItem* item = new HbListViewItem;
   679     HbStubHelper::listItems().append(item);
   668     HbStubHelper::listItems().append(item);
   680     HbListViewItem* item2 = new HbListViewItem;
   669     HbListViewItem* item2 = new HbListViewItem;
   681     HbStubHelper::listItems().append(item2);
   670     HbStubHelper::listItems().append(item2);
   682     mBaseView->ensureListPositioning(list);
   671     mBaseView->ensureListPositioning(list, false);
   683     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   672     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   684     QVERIFY( !HbStubHelper::listScrollToCalled() );
   673     QVERIFY( !HbStubHelper::listScrollToCalled() );
   685     
   674     QVERIFY( !HbStubHelper::listScrollBarPolicySet() );
   686     // Screen is already filled with items, nop
   675     
       
   676     // Screen is already filled with items, scrolled to first fully visible item
   687     list.setModel(&model2);
   677     list.setModel(&model2);
   688     HbListViewItem* item3 = new HbListViewItem;
   678     HbListViewItem* item3 = new HbListViewItem;
   689     HbStubHelper::listItems().append(item3);
   679     HbStubHelper::listItems().append(item3);
   690     item->setGeometry(QRectF(0,0,100,100));
   680     item->setGeometry(QRectF(0,0,100,100));
   691     item2->setGeometry(QRectF(0,0,100,100));
   681     item2->setGeometry(QRectF(0,0,100,100));
   692     item3->setGeometry(QRectF(0,0,100,100));
   682     item3->setGeometry(QRectF(0,0,100,100));
   693     mBaseView->ensureListPositioning(list);
   683     mBaseView->ensureListPositioning(list, false);
   694     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   684     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   695     QVERIFY( !HbStubHelper::listScrollToCalled() );
   685     QVERIFY( !HbStubHelper::listScrollToCalled() ); // Should be true but stub does not work due virtual method definition
       
   686     // List size not decreased, therefore no scrollbar force
       
   687     QVERIFY( !HbStubHelper::listScrollBarPolicySet() );
   696        
   688        
   697     // Content found and visible items which can fit the screen, all items ensured visible
   689     // Content found and visible items which can fit the screen, all items ensured visible
       
   690     HbStubHelper::resetListScrolling();
   698     list.setModel(&model);
   691     list.setModel(&model);
   699     delete HbStubHelper::listItems().takeLast();
   692     delete HbStubHelper::listItems().takeLast();
   700     mBaseView->ensureListPositioning(list);
   693     mBaseView->ensureListPositioning(list, true);
   701     QVERIFY( HbStubHelper::listEnsureVisibleCalled() );
   694     QVERIFY( HbStubHelper::listEnsureVisibleCalled() );
   702     QVERIFY( !HbStubHelper::listScrollToCalled() );
   695     QVERIFY( !HbStubHelper::listScrollToCalled() );
       
   696     // List size decreased but items fit the screen, therefore no scrollbar force
       
   697     QVERIFY( !HbStubHelper::listScrollBarPolicySet() );
   703     
   698     
   704     // Content found and more visible items which can fit the screen and currently screen
   699     // Content found and more visible items which can fit the screen and currently screen
   705     // is not full of items, ensure that area is filled by scrolling 
   700     // is not full of items, ensure that area is filled by scrolling 
       
   701     HbStubHelper::resetListScrolling();
   706     list.setModel(&model2);
   702     list.setModel(&model2);
   707     list.setCurrentIndex(model2.index(0,0));
   703     list.setCurrentIndex(model2.index(0,0));
   708     delete HbStubHelper::listItems().takeLast();
   704     delete HbStubHelper::listItems().takeLast();
   709     mBaseView->ensureListPositioning(list);
   705     mBaseView->ensureListPositioning(list, true);
   710     QVERIFY( HbStubHelper::listEnsureVisibleCalled() );
   706     QVERIFY( !HbStubHelper::listEnsureVisibleCalled() );
   711     // TODO: stub does not work due it uses virtual table inside hbcore. Whole
   707     QVERIFY( !HbStubHelper::listScrollToCalled() ); // Should be true but stub does not work due virtual method definition
   712     // list should be stubbed.
   708     // List size decreased and all items do not fit the screen, therefore scrollbar force
   713     //QVERIFY( HbStubHelper::listScrollToCalled() );
   709     QVERIFY( HbStubHelper::listScrollBarPolicySet() );
   714 }
   710 }
   715 
   711 
   716 void UT_LogsBaseView::testCancelServiceRequest()
   712 void UT_LogsBaseView::testCancelServiceRequest()
   717 {
   713 {
   718     QVERIFY( !mBaseView->mContact );
   714     QVERIFY( !mBaseView->mContact );