videocollection/videocollectionview/tsrc/testvideolistselectiondialog/src/testvideolistselectiondialog.cpp
changeset 67 72c709219fcd
parent 66 adb51f74b890
equal deleted inserted replaced
66:adb51f74b890 67:72c709219fcd
    17 
    17 
    18 #include <qdebug.h>
    18 #include <qdebug.h>
    19 #include <qapplication.h>
    19 #include <qapplication.h>
    20 #include "hbview.h"
    20 #include "hbview.h"
    21 #include "hbabstractitemview.h"
    21 #include "hbabstractitemview.h"
    22 #include "hbdocumentloader.h"
       
    23 #include "hbstackedwidget.h"
       
    24 #include "hbcheckbox.h"
       
    25 #include "hbinputdialog.h"
    22 #include "hbinputdialog.h"
    26 #include "hbdialog.h"
    23 #include "hbselectiondialog.h"
    27 #include "hbwidget.h"
    24 #include "hbwidget.h"
    28 #include "hblistview.h"
    25 #include "hblistview.h"
    29 #include "hbmessagebox.h"
       
    30 
    26 
    31 #include "testvideolistselectiondialog.h"
    27 #include "testvideolistselectiondialog.h"
    32 
    28 
    33 #include "videocollectionuiloader.h"
       
    34 #include "videolistdatamodel.h"
    29 #include "videolistdatamodel.h"
    35 #include "videoproxymodelgeneric.h"
    30 #include "videoproxymodelgeneric.h"
    36 #include "videolistwidget.h"
       
    37 #include "videocollectionwrapper.h"
    31 #include "videocollectionwrapper.h"
    38 #include "videocollectioncommon.h"
    32 #include "videocollectioncommon.h"
    39 #include <vcxmyvideosdefs.h>
    33 #include <vcxmyvideosdefs.h>
    40 
    34 
    41 #include "videolistdatamodeldata.h"
    35 #include "videolistdatamodeldata.h"
    42 #include "videocollectionwrapperdata.h"
    36 #include "videocollectionwrapperdata.h"
    43 #include "videocollectionuiloaderdata.h"
       
    44 #include "videolistwidgetdata.h"
       
    45 #include "videoproxymodeldata.h"
    37 #include "videoproxymodeldata.h"
    46 #include "videocollectionviewutilsdata.h"
    38 #include "videocollectionviewutilsdata.h"
       
    39 #include "videothumbnailtestdata.h"
    47 
    40 
    48 #define private public
    41 #define private public
    49 #include "videolistselectiondialogtester.h"
    42 #include "videolistselectiondialogtester.h"
    50 #undef private
    43 #undef private
    51 
    44 
   135 //
   128 //
   136 void TestVideoListSelectionDialog::init()
   129 void TestVideoListSelectionDialog::init()
   137 {
   130 {
   138     mTestObject = 0;
   131     mTestObject = 0;
   139     mModel = 0;
   132     mModel = 0;
   140     mTestUiLoader = 0;
       
   141     mTestWidget = 0;
       
   142     
   133     
   143     mInitOk = false;
   134     mInitOk = false;
   144     
   135     
   145     mTestUiLoader = new VideoCollectionUiLoader();
   136     mTestObject = new VideoListSelectionDialog();
   146     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
       
   147     mModel = VideoCollectionWrapper::instance().getGenericModel();
   137     mModel = VideoCollectionWrapper::instance().getGenericModel();
   148     
   138     
   149     mTestHelper->mTestable = mTestObject;
   139     mTestHelper->mTestable = mTestObject;
   150     QVERIFY(mTestHelper->connectSignals());
   140     QVERIFY(mTestHelper->connectSignals());
   151     
   141     
   164     }
   154     }
   165     
   155     
   166     delete mTestObject; 
   156     delete mTestObject; 
   167     mTestObject = 0;
   157     mTestObject = 0;
   168     
   158     
   169     delete mTestUiLoader;
       
   170     mTestUiLoader = 0;  
       
   171     
       
   172     mSourceModel = 0;
   159     mSourceModel = 0;
   173     
   160     
   174     mModel = 0;
   161     mModel = 0;
       
   162     
       
   163     VideoThumbnailTestData::reset();
   175 }
   164 }
   176 
   165 
   177 // ---------------------------------------------------------------------------
   166 // ---------------------------------------------------------------------------
   178 // testConstructDestruct
   167 // testConstructDestruct
   179 // ---------------------------------------------------------------------------
   168 // ---------------------------------------------------------------------------
   191     delete mTestObject;
   180     delete mTestObject;
   192     mTestObject = 0;
   181     mTestObject = 0;
   193     
   182     
   194     // Getting model fails 
   183     // Getting model fails 
   195     VideoCollectionWrapperData::mGetGenericModelFails = true;
   184     VideoCollectionWrapperData::mGetGenericModelFails = true;
   196     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
   185     mTestObject = new VideoListSelectionDialog();
   197     QVERIFY(mTestObject->mModel == 0);
   186     QVERIFY(mTestObject->mModel == 0);
   198     QVERIFY(mTestObject->mListWidget == 0);
       
   199     
   187     
   200     if(mTestHelper) 
   188     if(mTestHelper) 
   201         mTestHelper->disconnectSignals();
   189         mTestHelper->disconnectSignals();
   202     delete mTestObject;
   190     delete mTestObject;
   203     mTestObject = 0;
   191     mTestObject = 0;
   204 
   192 
   205     // List widget initialize fails
       
   206     VideoCollectionWrapperData::mGetGenericModelFails = false;
   193     VideoCollectionWrapperData::mGetGenericModelFails = false;
   207     VideoListWidgetData::mInitializeReturnValue = -1;
       
   208     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
       
   209     QVERIFY(mTestObject->mModel != 0);
       
   210     QVERIFY(mTestObject->mListWidget == 0);
       
   211 }
   194 }
   212 
   195 
   213 // ---------------------------------------------------------------------------
   196 // ---------------------------------------------------------------------------
   214 // testSetupContent
   197 // testSetupContent
   215 // ---------------------------------------------------------------------------
   198 // ---------------------------------------------------------------------------
   216 //
   199 //
   217 void TestVideoListSelectionDialog::testSetupContent()
   200 void TestVideoListSelectionDialog::testSetupContent()
   218 {
   201 {
   219     VideoCollectionWrapperData::reset();
   202     VideoCollectionWrapperData::reset();
   220     VideoListWidgetData::reset();
       
   221     
   203     
   222     QVERIFY(mInitOk == true);
   204     QVERIFY(mInitOk == true);
   223     QVERIFY(mModel != 0);
   205     QVERIFY(mModel != 0);
   224     
   206     
   225     TMPXItemId mpxId;
   207     TMPXItemId mpxId;
   226     
   208     
   227     // invalid type provided, object's internal data will not change
   209     // invalid type provided, object's internal data will not change
   228     mTestObject->mTypeOfSelection = VideoListSelectionDialog::EDeleteVideos;
   210     mTestObject->mTypeOfSelection = VideoListSelectionDialog::EDeleteVideos;
   229     mTestObject->setupContent(-1, mpxId);
   211     mTestObject->setupContent(VideoListSelectionDialog::ENoFunction, mpxId);
   230     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
       
   231     mTestObject->setupContent(600, mpxId);
       
   232     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   212     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   233     
   213     
   234     // No data. type EDeleteVideos. Default mpx item 
   214     // No data. type EDeleteVideos. Default mpx item 
   235     setRowCount(0);
   215     setRowCount(0);
   236     mpxId = TMPXItemId();
   216     mpxId = TMPXItemId();
   237     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   217     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   238     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   218     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   239     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   240     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   219     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   241     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   220     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   242     QVERIFY(mTestObject->mNewAlbumText.isNull());
   221     QVERIFY(mTestObject->mNewAlbumText.isNull());
   243     QVERIFY(mTestObject->mModel != 0);
   222     QVERIFY(mTestObject->mModel != 0);
   244     QVERIFY(mTestObject->mListWidget != 0);
   223     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   245     QVERIFY(mTestObject->mListContainer != 0);
       
   246     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   247     QVERIFY(mTestObject->mHeading != 0);
       
   248     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   249     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   250     QVERIFY(mTestObject->mItemCount != 0);
       
   251     QVERIFY(mTestObject->mCheckBox != 0);
       
   252     QVERIFY(mTestObject->mPrimaryAction != 0);
   224     QVERIFY(mTestObject->mPrimaryAction != 0);
   253     QVERIFY(mTestObject->mSecondaryAction != 0);
   225     QVERIFY(mTestObject->mSecondaryAction != 0);
   254     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   226     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   255     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   227     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   256     QVERIFY(mTestObject->mModelReady == false);
   228     QVERIFY(mTestObject->mModelReady == false);
   259     VideoProxyModelData::reset();
   231     VideoProxyModelData::reset();
   260     
   232     
   261     // second setup (for coverity)
   233     // second setup (for coverity)
   262     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   234     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   263     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   235     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   264     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   265     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   236     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   266     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   237     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   267     QVERIFY(mTestObject->mNewAlbumText.isNull());
   238     QVERIFY(mTestObject->mNewAlbumText.isNull());
   268     QVERIFY(mTestObject->mModel != 0);
   239     QVERIFY(mTestObject->mModel != 0);
   269     QVERIFY(mTestObject->mListWidget != 0);
   240     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   270     QVERIFY(mTestObject->mListContainer != 0);
       
   271     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   272     QVERIFY(mTestObject->mHeading != 0);
       
   273     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   274     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   275     QVERIFY(mTestObject->mItemCount != 0);
       
   276     QVERIFY(mTestObject->mCheckBox != 0);
       
   277     QVERIFY(mTestObject->mPrimaryAction != 0);
   241     QVERIFY(mTestObject->mPrimaryAction != 0);
   278     QVERIFY(mTestObject->mSecondaryAction != 0);
   242     QVERIFY(mTestObject->mSecondaryAction != 0);
   279     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   243     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   280     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   244     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   281     QVERIFY(mTestObject->mModelReady == false);
   245     QVERIFY(mTestObject->mModelReady == false);
   282     QVERIFY(mTestObject->mAlbumListReady == false);
   246     QVERIFY(mTestObject->mAlbumListReady == false);
   283         
   247         
   284     if(mTestHelper) 
   248     if(mTestHelper) 
   285         mTestHelper->disconnectSignals();
   249         mTestHelper->disconnectSignals();
   286     delete mTestObject;
   250     delete mTestObject;
   287     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
   251     mTestObject = new VideoListSelectionDialog();
   288     VideoProxyModelData::reset();
   252     VideoProxyModelData::reset();
   289     
   253     
   290     // No data. type ESelectCollection. Default mpx item 
   254     // No data. type ESelectCollection. Default mpx item 
   291     setRowCount(0);
   255     setRowCount(0);
   292     mpxId = TMPXItemId();
   256     mpxId = TMPXItemId();
   293     mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
   257     mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
   294     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ESelectCollection);
   258     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ESelectCollection);
   295     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   296     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   259     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   297     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   260     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   298     QVERIFY(mTestObject->mNewAlbumText.isNull());
   261     QVERIFY(mTestObject->mNewAlbumText.isNull());
   299     QVERIFY(mTestObject->mModel != 0);
   262     QVERIFY(mTestObject->mModel != 0);
   300     QVERIFY(mTestObject->mListWidget != 0);
   263     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   301     QVERIFY(mTestObject->mListContainer != 0);
       
   302     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   303     QVERIFY(mTestObject->mHeading != 0);
       
   304     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   305     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == false);
       
   306     QVERIFY(mTestObject->mItemCount != 0);
       
   307     QVERIFY(mTestObject->mCheckBox != 0);
       
   308     QVERIFY(mTestObject->mPrimaryAction != 0);
   264     QVERIFY(mTestObject->mPrimaryAction != 0);
   309     QVERIFY(mTestObject->mSecondaryAction != 0);
   265     QVERIFY(mTestObject->mSecondaryAction != 0);
   310     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   266     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   311     QVERIFY(!VideoProxyModelData::mGenericFilterValue);
   267     QVERIFY(!VideoProxyModelData::mGenericFilterValue);
   312     QVERIFY(mTestObject->mModelReady == false);
   268     QVERIFY(mTestObject->mModelReady == false);
   313     QVERIFY(mTestObject->mAlbumListReady == false);
   269     QVERIFY(mTestObject->mAlbumListReady == false);
   314     
   270     
   315     if(mTestHelper) 
   271     if(mTestHelper) 
   316         mTestHelper->disconnectSignals();
   272         mTestHelper->disconnectSignals();
   317     delete mTestObject;
   273     delete mTestObject;
   318     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
   274     mTestObject = new VideoListSelectionDialog();
   319     VideoProxyModelData::reset();
   275     VideoProxyModelData::reset();
   320     
   276     
   321     // No data. type EAddToCollection:. Default mpx item 
   277     // No data. type EAddToCollection:. Default mpx item 
   322     setRowCount(0);
   278     setRowCount(0);
   323     mpxId = TMPXItemId();
   279     mpxId = TMPXItemId();
   324     mTestObject->setupContent(VideoListSelectionDialog::EAddToCollection, mpxId);
   280     mTestObject->setupContent(VideoListSelectionDialog::EAddToCollection, mpxId);
   325     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
   281     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
   326     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   327     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   282     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   328     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   283     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   329     QVERIFY(mTestObject->mNewAlbumText.isNull());
   284     QVERIFY(mTestObject->mNewAlbumText.isNull());
   330     QVERIFY(mTestObject->mModel != 0);
   285     QVERIFY(mTestObject->mModel != 0);
   331     QVERIFY(mTestObject->mListWidget != 0);
   286     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   332     QVERIFY(mTestObject->mListContainer != 0);
       
   333     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   334     QVERIFY(mTestObject->mHeading != 0);
       
   335     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   336     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   337     QVERIFY(mTestObject->mItemCount != 0);
       
   338     QVERIFY(mTestObject->mCheckBox != 0);
       
   339     QVERIFY(mTestObject->mPrimaryAction != 0);
   287     QVERIFY(mTestObject->mPrimaryAction != 0);
   340     QVERIFY(mTestObject->mSecondaryAction != 0);
   288     QVERIFY(mTestObject->mSecondaryAction != 0);
   341     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   289     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   342     QVERIFY(!VideoProxyModelData::mGenericFilterValue);
   290     QVERIFY(!VideoProxyModelData::mGenericFilterValue);
   343     QVERIFY(mTestObject->mModelReady == false);
   291     QVERIFY(mTestObject->mModelReady == false);
   346     // No data. type ECreateCollection:. Default mpx item 
   294     // No data. type ECreateCollection:. Default mpx item 
   347     setRowCount(0);
   295     setRowCount(0);
   348     mpxId = TMPXItemId();
   296     mpxId = TMPXItemId();
   349     mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, mpxId);
   297     mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, mpxId);
   350     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ECreateCollection);
   298     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ECreateCollection);
   351     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   352     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   299     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   353     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   300     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   354     QVERIFY(mTestObject->mNewAlbumText.isNull());
   301     QVERIFY(mTestObject->mNewAlbumText.isNull());
   355     QVERIFY(mTestObject->mModel != 0);
   302     QVERIFY(mTestObject->mModel != 0);
   356     QVERIFY(mTestObject->mListWidget != 0);
   303     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   357     QVERIFY(mTestObject->mListContainer != 0);
       
   358     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   359     QVERIFY(mTestObject->mHeading != 0);
       
   360     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   361     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   362     QVERIFY(mTestObject->mItemCount != 0);
       
   363     QVERIFY(mTestObject->mCheckBox != 0);
       
   364     QVERIFY(mTestObject->mPrimaryAction != 0);
   304     QVERIFY(mTestObject->mPrimaryAction != 0);
   365     QVERIFY(mTestObject->mSecondaryAction != 0);
   305     QVERIFY(mTestObject->mSecondaryAction != 0);
   366     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   306     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   367     QVERIFY(!VideoProxyModelData::mGenericFilterValue);
   307     QVERIFY(!VideoProxyModelData::mGenericFilterValue);
   368     QVERIFY(mTestObject->mModelReady == false);
   308     QVERIFY(mTestObject->mModelReady == false);
   369     QVERIFY(mTestObject->mAlbumListReady == false);
   309     QVERIFY(mTestObject->mAlbumListReady == false);
   370 
   310 
   371     if(mTestHelper) 
   311     if(mTestHelper) 
   372         mTestHelper->disconnectSignals();
   312         mTestHelper->disconnectSignals();
   373     delete mTestObject;
   313     delete mTestObject;
   374     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
   314     mTestObject = new VideoListSelectionDialog();
   375     VideoProxyModelData::reset();
   315     VideoProxyModelData::reset();
   376     
   316     
   377     // No data. type ERemoveFromCollection:. Default mpx item 
   317     // No data. type ERemoveFromCollection:. Default mpx item 
   378     setRowCount(0);
   318     setRowCount(0);
   379     mpxId = TMPXItemId();
   319     mpxId = TMPXItemId();
   380     mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, mpxId);
   320     mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, mpxId);
   381     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ERemoveFromCollection);
   321     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ERemoveFromCollection);
   382     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   383     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   322     QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
   384     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   323     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   385     QVERIFY(mTestObject->mNewAlbumText.isNull());
   324     QVERIFY(mTestObject->mNewAlbumText.isNull());
   386     QVERIFY(mTestObject->mModel != 0);
   325     QVERIFY(mTestObject->mModel != 0);
   387     QVERIFY(mTestObject->mListWidget != 0);
   326     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   388     QVERIFY(mTestObject->mListContainer != 0);
       
   389     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   390     QVERIFY(mTestObject->mHeading != 0);
       
   391     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   392     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   393     QVERIFY(mTestObject->mItemCount != 0);
       
   394     QVERIFY(mTestObject->mCheckBox != 0);
       
   395     QVERIFY(mTestObject->mPrimaryAction != 0);
   327     QVERIFY(mTestObject->mPrimaryAction != 0);
   396     QVERIFY(mTestObject->mSecondaryAction != 0);
   328     QVERIFY(mTestObject->mSecondaryAction != 0);
   397     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   329     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   398     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   330     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   399     QVERIFY(mTestObject->mModelReady == false);
   331     QVERIFY(mTestObject->mModelReady == false);
   400     QVERIFY(mTestObject->mAlbumListReady == false);
   332     QVERIFY(mTestObject->mAlbumListReady == false);
   401     
   333     
   402     if(mTestHelper) 
   334     if(mTestHelper) 
   403         mTestHelper->disconnectSignals();
   335         mTestHelper->disconnectSignals();
   404     delete mTestObject;
   336     delete mTestObject;
   405     mTestObject = new VideoListSelectionDialog(mTestUiLoader);    
   337     mTestObject = new VideoListSelectionDialog();    
   406     VideoProxyModelData::reset();
   338     VideoProxyModelData::reset();
   407     
   339     
   408     // Some data, mpx item type is album 
   340     // Some data, mpx item type is album 
   409     setRowCount(10);
   341     setRowCount(10);
   410     mpxId = TMPXItemId(0, KVcxMvcMediaTypeAlbum);
   342     mpxId = TMPXItemId(0, KVcxMvcMediaTypeAlbum);
   411     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   343     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   412     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   344     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   413     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   414     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   345     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   415     QVERIFY(mTestObject->mSelectedAlbumId == mpxId);
   346     QVERIFY(mTestObject->mSelectedAlbumId == mpxId);
   416     QVERIFY(mTestObject->mNewAlbumText.isNull());
   347     QVERIFY(mTestObject->mNewAlbumText.isNull());
   417     QVERIFY(mTestObject->mModel != 0);
   348     QVERIFY(mTestObject->mModel != 0);
   418     QVERIFY(mTestObject->mListWidget != 0);
   349     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   419     QVERIFY(mTestObject->mListContainer != 0);
       
   420     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   421     QVERIFY(mTestObject->mHeading != 0);
       
   422     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   423     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   424     QVERIFY(mTestObject->mItemCount != 0);
       
   425     QVERIFY(mTestObject->mCheckBox != 0);
       
   426     QVERIFY(mTestObject->mPrimaryAction != 0);
   350     QVERIFY(mTestObject->mPrimaryAction != 0);
   427     QVERIFY(mTestObject->mSecondaryAction != 0);
   351     QVERIFY(mTestObject->mSecondaryAction != 0);
   428     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   352     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   429     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   353     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   430     QVERIFY(mTestObject->mModelReady == false);
   354     QVERIFY(mTestObject->mModelReady == false);
   431     QVERIFY(mTestObject->mAlbumListReady == false);
   355     QVERIFY(mTestObject->mAlbumListReady == false);
   432    
   356    
   433     if(mTestHelper) 
   357     if(mTestHelper) 
   434         mTestHelper->disconnectSignals();
   358         mTestHelper->disconnectSignals();
   435     delete mTestObject;
   359     delete mTestObject;
   436     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
   360     mTestObject = new VideoListSelectionDialog();
   437     VideoProxyModelData::reset();
   361     VideoProxyModelData::reset();
   438     
   362     
   439     // Some data, mpx item type is invalid: category
   363     // Some data, mpx item type is invalid: category
   440     mpxId = TMPXItemId(0, KVcxMvcMediaTypeCategory);
   364     mpxId = TMPXItemId(0, KVcxMvcMediaTypeCategory);
   441     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   365     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   442     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   366     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   443     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   444     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   367     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   445     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   368     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   446     QVERIFY(mTestObject->mNewAlbumText.isNull());
   369     QVERIFY(mTestObject->mNewAlbumText.isNull());
   447     QVERIFY(mTestObject->mModel != 0);
   370     QVERIFY(mTestObject->mModel != 0);
   448     QVERIFY(mTestObject->mListWidget != 0);
   371     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   449     QVERIFY(mTestObject->mListContainer != 0);
       
   450     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   451     QVERIFY(mTestObject->mHeading != 0);
       
   452     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   453     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   454     QVERIFY(mTestObject->mItemCount != 0);
       
   455     QVERIFY(mTestObject->mCheckBox != 0);
       
   456     QVERIFY(mTestObject->mPrimaryAction != 0);
   372     QVERIFY(mTestObject->mPrimaryAction != 0);
   457     QVERIFY(mTestObject->mSecondaryAction != 0);
   373     QVERIFY(mTestObject->mSecondaryAction != 0);
   458     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   374     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   459     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   375     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   460     QVERIFY(mTestObject->mModelReady == false);
   376     QVERIFY(mTestObject->mModelReady == false);
   461     QVERIFY(mTestObject->mAlbumListReady == false);
   377     QVERIFY(mTestObject->mAlbumListReady == false);
   462    
   378    
   463     if(mTestHelper) 
   379     if(mTestHelper) 
   464         mTestHelper->disconnectSignals();
   380         mTestHelper->disconnectSignals();
   465     delete mTestObject;
   381     delete mTestObject;
   466     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
   382     mTestObject = new VideoListSelectionDialog();
   467     VideoProxyModelData::reset();
   383     VideoProxyModelData::reset();
   468     
   384     
   469     // Some data, mpx item type is invalid id
   385     // Some data, mpx item type is invalid id
   470     mpxId = TMPXItemId::InvalidId();
   386     mpxId = TMPXItemId::InvalidId();
   471     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   387     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   472     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   388     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   473     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   474     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   389     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   475     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   390     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   476     QVERIFY(mTestObject->mNewAlbumText.isNull());
   391     QVERIFY(mTestObject->mNewAlbumText.isNull());
   477     QVERIFY(mTestObject->mModel != 0);
   392     QVERIFY(mTestObject->mModel != 0);
   478     QVERIFY(mTestObject->mListWidget != 0);
   393     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   479     QVERIFY(mTestObject->mListContainer != 0);
       
   480     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   481     QVERIFY(mTestObject->mHeading != 0);
       
   482     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   483     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   484     QVERIFY(mTestObject->mItemCount != 0);
       
   485     QVERIFY(mTestObject->mCheckBox != 0);
       
   486     QVERIFY(mTestObject->mPrimaryAction != 0);
   394     QVERIFY(mTestObject->mPrimaryAction != 0);
   487     QVERIFY(mTestObject->mSecondaryAction != 0);  
   395     QVERIFY(mTestObject->mSecondaryAction != 0);  
   488     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   396     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   489     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   397     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   490     QVERIFY(mTestObject->mModelReady == false);
   398     QVERIFY(mTestObject->mModelReady == false);
   491     QVERIFY(mTestObject->mAlbumListReady == false);
   399     QVERIFY(mTestObject->mAlbumListReady == false);
   492    
   400    
   493     VideoProxyModelData::reset();
   401     VideoProxyModelData::reset();
   494     // some data, second initialization without widget and model, for coverity
   402     // some data, second initialization without widget and model, for coverity
   495     delete mTestObject->mListWidget;
       
   496     mTestObject->mListWidget = 0;
       
   497     mTestObject->mModel = 0;
   403     mTestObject->mModel = 0;
   498     mTestObject->mListContainer = 0;
       
   499     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   404     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   500     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   405     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   501     QCOMPARE(mTestObject->mSelection.count(), 0);
       
   502     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   406     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   503     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   407     QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
   504     QVERIFY(mTestObject->mNewAlbumText.isNull());
   408     QVERIFY(mTestObject->mNewAlbumText.isNull());
   505     QVERIFY(mTestObject->mModel != 0);
   409     QVERIFY(mTestObject->mModel != 0);
   506     QVERIFY(mTestObject->mListWidget != 0);
   410     QVERIFY(mTestObject->mScrollPositionTimer != 0);
   507     QVERIFY(mTestObject->mListContainer != 0);
       
   508     QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
       
   509     QVERIFY(mTestObject->mHeading != 0);
       
   510     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   511     QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
       
   512     QVERIFY(mTestObject->mItemCount != 0);
       
   513     QVERIFY(mTestObject->mCheckBox != 0);
       
   514     QVERIFY(mTestObject->mPrimaryAction != 0);
   411     QVERIFY(mTestObject->mPrimaryAction != 0);
   515     QVERIFY(mTestObject->mSecondaryAction != 0);  
   412     QVERIFY(mTestObject->mSecondaryAction != 0);  
   516     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   413     QVERIFY(VideoProxyModelData::mGenericFilterId == mpxId);
   517     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   414     QVERIFY(VideoProxyModelData::mGenericFilterValue);
   518     QVERIFY(mTestObject->mModelReady == false);
   415     QVERIFY(mTestObject->mModelReady == false);
   528     TMPXItemId mpxId;
   425     TMPXItemId mpxId;
   529     
   426     
   530     // initDialog fails because model get fails. 
   427     // initDialog fails because model get fails. 
   531     QVERIFY(mTestObject->mModel != 0);
   428     QVERIFY(mTestObject->mModel != 0);
   532     VideoProxyModelGeneric *backup = mTestObject->mModel;
   429     VideoProxyModelGeneric *backup = mTestObject->mModel;
   533     VideoListWidget *backupWidget = mTestObject->mListWidget;
       
   534     mTestObject->mModel = 0;
   430     mTestObject->mModel = 0;
   535     mTestObject->mListWidget = 0;
       
   536     VideoCollectionWrapperData::mGetGenericModelFails = true;
   431     VideoCollectionWrapperData::mGetGenericModelFails = true;
   537     mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
   432     mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
   538     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   433     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   539     VideoCollectionWrapperData::mGetGenericModelFails = false;
   434     VideoCollectionWrapperData::mGetGenericModelFails = false;
   540     QVERIFY(mTestObject->mModel == 0);
   435     QVERIFY(mTestObject->mModel == 0);
   541     QVERIFY(mTestObject->mListWidget == 0);
   436     QVERIFY(mTestObject->mScrollPositionTimer == 0);
   542     QVERIFY(mTestObject->mListContainer == 0);
       
   543     QVERIFY(mTestObject->mHeading == 0);
       
   544     QVERIFY(mTestObject->mCheckboxContainer == 0);
       
   545     QVERIFY(mTestObject->mItemCount == 0);
       
   546     QVERIFY(mTestObject->mCheckBox == 0);
       
   547     mTestObject->mModel = backup; backup = 0;
   437     mTestObject->mModel = backup; backup = 0;
   548     mTestObject->mListWidget = backupWidget; backupWidget = 0;
       
   549     
   438     
   550     if(mTestHelper) 
   439     if(mTestHelper) 
   551         mTestHelper->disconnectSignals();
   440         mTestHelper->disconnectSignals();
   552     delete mTestObject;
   441     delete mTestObject;
   553     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
   442     mTestObject = new VideoListSelectionDialog();
   554     
   443     
       
   444 	/*
       
   445 	 * TODO
   555     // initDialog fails because mListWidget::initialize
   446     // initDialog fails because mListWidget::initialize
   556     QVERIFY(mTestObject->mModel != 0);
   447     QVERIFY(mTestObject->mModel != 0);
   557     VideoListWidgetData::mInitializeReturnValue = -1;
   448     VideoListWidgetData::mInitializeReturnValue = -1;
   558     backupWidget = mTestObject->mListWidget;
   449     backupWidget = mTestObject->mListWidget;
   559     mTestObject->mListWidget = 0;
   450     mTestObject->mListWidget = 0;
   560     mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
   451     mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
   561     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   452     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
   562     QVERIFY(mTestObject->mModel != 0);
   453     QVERIFY(mTestObject->mModel != 0);
   563     QVERIFY(mTestObject->mListWidget == 0);    
   454     QVERIFY(mTestObject->mScrollPositionTimer == 0);
   564     QVERIFY(mTestObject->mListContainer == 0);
       
   565     QVERIFY(mTestObject->mHeading == 0);
       
   566     QVERIFY(mTestObject->mCheckboxContainer == 0);
       
   567     QVERIFY(mTestObject->mItemCount == 0);
       
   568     QVERIFY(mTestObject->mCheckBox == 0);  
       
   569     VideoListWidgetData::mInitializeReturnValue = 0;
   455     VideoListWidgetData::mInitializeReturnValue = 0;
   570     
   456     
   571     if(mTestHelper) 
   457     if(mTestHelper) 
   572         mTestHelper->disconnectSignals();
   458         mTestHelper->disconnectSignals();
   573     delete mTestObject;
   459     delete mTestObject;
   574     mTestObject = new VideoListSelectionDialog(mTestUiLoader);
   460     mTestObject = new VideoListSelectionDialog();
   575     
   461 	*/
   576     // initdialog fails because DOCML_NAME_LIST_CONTAINER finding fails
       
   577     VideoCollectionUiLoaderData::mFindFailure = false;
       
   578     VideoCollectionUiLoaderData::mFindFailureNameList.clear();
       
   579     VideoCollectionUiLoaderData::mFindFailureNameList.append(DOCML_NAME_LIST_CONTAINER);
       
   580     mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
       
   581     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
       
   582     QVERIFY(mTestObject->mModel != 0);
       
   583     QVERIFY(mTestObject->mListWidget != 0);    
       
   584     QVERIFY(mTestObject->mListContainer == 0);
       
   585     QVERIFY(mTestObject->mHeading != 0);
       
   586     QVERIFY(mTestObject->mCheckboxContainer != 0);
       
   587     QVERIFY(mTestObject->mItemCount != 0);
       
   588     QVERIFY(mTestObject->mCheckBox != 0);     
       
   589     VideoCollectionUiLoaderData::mFindFailureNameList.clear();
       
   590 }
   462 }
   591 
   463 
   592 // ---------------------------------------------------------------------------
   464 // ---------------------------------------------------------------------------
   593 // testExec
   465 // testExec
   594 // ---------------------------------------------------------------------------
   466 // ---------------------------------------------------------------------------
   698 
   570 
   699     HbDialog::execReturnPrimary = true;    
   571     HbDialog::execReturnPrimary = true;    
   700     
   572     
   701     ////////////
   573     ////////////
   702     // mTypeOfSelection == ESelectCollection     
   574     // mTypeOfSelection == ESelectCollection     
   703     //  mSelectedAlbumId != TMPXItemId::InvalidId())    
   575     // mSelectedAlbumId != TMPXItemId::InvalidId())    
   704     VideoCollectionViewUtilsData::mLastError = -1;    
   576     VideoCollectionViewUtilsData::mLastError = -1;    
   705     mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
   577     mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
   706     mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
   578     mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
   707     mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
   579     mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
   708     VideoProxyModelData::reset();
   580     VideoProxyModelData::reset();
   884     mTestObject->exec();  
   756     mTestObject->exec();  
   885     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   757     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
   886     QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusDeleteInProgress);
   758     QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusDeleteInProgress);
   887     
   759     
   888     // invalid type
   760     // invalid type
   889     mTestObject->mTypeOfSelection = 500;
   761     mTestObject->mTypeOfSelection = VideoListSelectionDialog::ENoFunction;
   890     VideoCollectionViewUtilsData::mLastError = -1;
   762     VideoCollectionViewUtilsData::mLastError = -1;
   891     mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
   763     mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
   892     mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
   764     mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
   893     VideoProxyModelData::reset();
   765     VideoProxyModelData::reset();
   894     mTestObject->exec();  
   766     mTestObject->exec();  
   895     QVERIFY(mTestObject->mTypeOfSelection == 500);
   767     QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ENoFunction);
   896     QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
   768     QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
   897     QVERIFY(!VideoProxyModelData::mItemIds.count());
   769     QVERIFY(!VideoProxyModelData::mItemIds.count());
   898    
   770 }
   899 }
   771 
   900 
   772 
   901 void TestVideoListSelectionDialog::testMarkAllStateChangedSlot()
   773 void TestVideoListSelectionDialog::testSelectionChangedSlot()
   902 {
   774 {
   903     VideoCollectionWrapperData::reset();
       
   904     VideoListWidgetData::reset();
       
   905     VideoProxyModelData::reset();
       
   906 
       
   907     mTestHelper->mTestable = mTestObject;
   775     mTestHelper->mTestable = mTestObject;
   908     mTestHelper->connectSignals();
   776     mTestHelper->connectSignals();
   909     
   777     
   910     HbListView::mAllSelectedStatus = -1;
       
   911     
       
   912     // forced check
       
   913     mTestObject->mForcedCheck = true;
       
   914     mTestHelper->emitMarkAllStateChanged(Qt::Checked);
       
   915     mTestObject->mForcedCheck = false;
       
   916     QVERIFY(HbListView::mAllSelectedStatus == -1);
       
   917     
       
   918     // checked
       
   919     mTestHelper->emitMarkAllStateChanged(Qt::Checked);
       
   920     QVERIFY(HbListView::mAllSelectedStatus == 1);
       
   921     HbListView::mAllSelectedStatus = -1;
       
   922     
       
   923     // unchecked
       
   924     mTestHelper->emitMarkAllStateChanged(Qt::Unchecked);
       
   925     QVERIFY(HbListView::mAllSelectedStatus == 0);
       
   926     
       
   927     HbListView::mAllSelectedStatus = -1;
       
   928     
       
   929     mTestHelper->disconnectSignals();
       
   930 
       
   931 }
       
   932 
       
   933 void TestVideoListSelectionDialog::testSelectionChangedSlot()
       
   934 {
       
   935     QItemSelection selected;
       
   936     QItemSelection deselected;
       
   937     
       
   938     mTestHelper->mTestable = mTestObject;
       
   939     mTestHelper->connectSignals();
       
   940     
       
   941     mTestObject->mSelection.clear();
       
   942     
       
   943     // no primary action
   778     // no primary action
   944     mTestHelper->emitSelectionChangedSlot(selected, deselected);
   779     mTestHelper->emitSelectionChangedSlot();
   945     QVERIFY(!mTestObject->mSelection.count());
       
   946     
   780     
   947     TMPXItemId mpxId = TMPXItemId::InvalidId();
   781     TMPXItemId mpxId = TMPXItemId::InvalidId();
   948     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,1));
   782     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,1));
   949 
   783 
   950     setRowCount(10);
   784     setRowCount(10);
   951     
   785     
   952     // select item
   786     // select item
   953     mTestObject->mPrimaryAction->setEnabled(false);
   787     mTestObject->mPrimaryAction->setEnabled(false);
   954     QModelIndex index = mModel->index(0, 0);
   788     {
   955     QItemSelectionRange range(mModel->index(0, 0));
   789         QModelIndex index = mModel->index(0, 0);
   956     selected.append(range);
   790         QModelIndexList selected;
   957     mTestHelper->emitSelectionChangedSlot(selected, deselected);
   791         selected.append(index);
   958     QVERIFY(mTestObject->mSelection.count() == 1);
   792         mTestObject->setSelectedModelIndexes(selected);
       
   793     }
       
   794     mTestHelper->emitSelectionChangedSlot();
   959     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
   795     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
   960     
   796     
   961     // deselect item
   797     // deselect item
   962     selected.clear();
   798     {
   963     deselected.append(range);
   799         QModelIndexList selected;
   964     mTestHelper->emitSelectionChangedSlot(selected, deselected);
   800         mTestObject->setSelectedModelIndexes(selected);
   965     QVERIFY(mTestObject->mSelection.count() == 0);
   801     }
       
   802     mTestHelper->emitSelectionChangedSlot();
   966     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == false);
   803     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == false);
   967     
   804     
   968     mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, TMPXItemId::InvalidId());
   805     mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, TMPXItemId::InvalidId());
   969     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
   806     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
   970     QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_ok"));
   807     QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_ok"));
   971     
   808     
   972     // select item, type ECreateCollection
   809     // select item, type ECreateCollection
   973     deselected.clear();
   810     {
   974     selected.append(range);
   811         QModelIndex index = mModel->index(0, 0);
   975     mTestHelper->emitSelectionChangedSlot(selected, deselected);
   812         QModelIndexList selected;
   976     QVERIFY(mTestObject->mSelection.count() == 1);
   813         selected.append(index);
       
   814         mTestObject->setSelectedModelIndexes(selected);
       
   815     }
       
   816     mTestHelper->emitSelectionChangedSlot();
   977     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
   817     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
   978     QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_add"));
   818     QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_add"));
   979     
   819     
   980     // desect item, type ECreateCollection
   820     // deselect item, type ECreateCollection
   981     selected.clear();
   821     {
   982     deselected.append(range);
   822         QModelIndexList selected;
   983     mTestHelper->emitSelectionChangedSlot(selected, deselected);
   823         mTestObject->setSelectedModelIndexes(selected);
   984     QVERIFY(mTestObject->mSelection.count() == 0);
   824     }
       
   825     mTestHelper->emitSelectionChangedSlot();
   985     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
   826     QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
   986     QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_ok"));
   827     QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_ok"));
   987     
       
   988     mTestHelper->disconnectSignals();
       
   989 }
       
   990 
       
   991 void TestVideoListSelectionDialog::testSingleItemSelectedSlot()
       
   992 {
       
   993     mTestHelper->mTestable = mTestObject;
       
   994     mTestHelper->connectSignals();
       
   995     
       
   996     setRowCount(10);
       
   997     TMPXItemId mpxId = TMPXItemId::InvalidId();
       
   998     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
       
   999     
       
  1000     mTestObject->mTypeOfSelection = VideoListSelectionDialog::ESelectCollection;
       
  1001     mTestHelper->emitSingleItemSelectedSlot(mModel->index(0, 0));
       
  1002     
       
  1003     mTestObject->mTypeOfSelection = VideoListSelectionDialog::ESelectCollection;
       
  1004     QModelIndex invalidIndex;
       
  1005     mTestHelper->emitSingleItemSelectedSlot(invalidIndex);
       
  1006     
       
  1007     mTestObject->mTypeOfSelection = VideoListSelectionDialog::EDeleteVideos;
       
  1008     mTestHelper->emitSingleItemSelectedSlot(mModel->index(0, 0));
       
  1009     
   828     
  1010     mTestHelper->disconnectSignals();
   829     mTestHelper->disconnectSignals();
  1011 }
   830 }
  1012 
   831 
  1013 void TestVideoListSelectionDialog::testModelReadySlot()
   832 void TestVideoListSelectionDialog::testModelReadySlot()
  1051     QModelIndex index = mModel->index(5, 0);
   870     QModelIndex index = mModel->index(5, 0);
  1052     
   871     
  1053     // type ECreateCollection, dialog hidden
   872     // type ECreateCollection, dialog hidden
  1054     mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, TMPXItemId::InvalidId());
   873     mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, TMPXItemId::InvalidId());
  1055     mTestObject->hide();
   874     mTestObject->hide();
  1056     HbListView::mLatestScrollToIndex = index;
       
  1057     mTestHelper->emitModelReadySlot();
   875     mTestHelper->emitModelReadySlot();
  1058     QCOMPARE(HbListView::mLatestScrollToIndex, index);
       
  1059     
   876     
  1060     // type EDeleteVideos, dialog hidden.
   877     // type EDeleteVideos, dialog hidden.
  1061     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,2));
   878     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,2));
  1062     mTestObject->hide();
   879     mTestObject->hide();
  1063     mTestHelper->emitModelReadySlot();
   880     mTestHelper->emitModelReadySlot();
  1064     QCOMPARE(HbListView::mLatestScrollToIndex, mModel->index(0, 0));
       
  1065     
   881     
  1066     // type EDeleteVideos, dialog visible.
   882     // type EDeleteVideos, dialog visible.
  1067     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,2));
   883     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,2));
  1068     HbListView::mLatestScrollToIndex = index;
       
  1069     mTestObject->setVisible(true);
   884     mTestObject->setVisible(true);
  1070     mTestHelper->emitModelReadySlot();
   885     mTestHelper->emitModelReadySlot();
  1071     QCOMPARE(HbListView::mLatestScrollToIndex, index);
       
  1072     
       
  1073     mTestHelper->disconnectSignals();
       
  1074 }
       
  1075 
       
  1076 void TestVideoListSelectionDialog::testUpdateCounterSlot()
       
  1077 {
       
  1078     mTestHelper->mTestable = mTestObject;
       
  1079     mTestHelper->connectSignals();
       
  1080     
       
  1081     TMPXItemId mpxId = TMPXItemId::InvalidId();
       
  1082     mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
       
  1083     
       
  1084     // itemCount is null
       
  1085     HbLabel *labelBackup = mTestObject->mItemCount;
       
  1086     mTestObject->mCheckBox->setChecked(true);
       
  1087     mTestObject->mItemCount = 0;
       
  1088     mTestHelper->emitUpdateCounterSlot();
       
  1089     mTestObject->mItemCount = labelBackup;
       
  1090     QVERIFY(mTestObject->mCheckBox->mChecked == true);
       
  1091     
       
  1092     // no items in model
       
  1093     setRowCount(0);
       
  1094     mTestObject->mCheckBox->setChecked(true);
       
  1095     mTestHelper->emitUpdateCounterSlot();
       
  1096     QVERIFY(mTestObject->mCheckBox->mChecked == false);
       
  1097 
       
  1098     // all selected.
       
  1099     setRowCount(1);
       
  1100     mTestObject->mCheckBox->setChecked(false);
       
  1101     QItemSelection selected;
       
  1102     QItemSelectionRange range(mTestObject->mModel->index(0, 0));
       
  1103     selected.append(range);
       
  1104     mTestObject->mSelection.merge(selected, QItemSelectionModel::Select);
       
  1105     mTestHelper->emitUpdateCounterSlot();
       
  1106     QVERIFY(mTestObject->mCheckBox->mChecked == true);
       
  1107     
       
  1108     // not all selected
       
  1109     setRowCount(10);
       
  1110     mTestObject->mCheckBox->setChecked(true);
       
  1111     selected.clear();
       
  1112     range = QItemSelectionRange(mModel->index(0, 0));
       
  1113     selected.append(range);
       
  1114     mTestObject->mSelection.clear();
       
  1115     mTestObject->mSelection.merge(selected, QItemSelectionModel::Select);
       
  1116     mTestHelper->emitUpdateCounterSlot();
       
  1117     QVERIFY(mTestObject->mCheckBox->mChecked == false);
       
  1118     
   886     
  1119     mTestHelper->disconnectSignals();
   887     mTestHelper->disconnectSignals();
  1120 }
   888 }
  1121 
   889 
  1122 void TestVideoListSelectionDialog::testPrimaryActionTriggeredSlot()
   890 void TestVideoListSelectionDialog::testPrimaryActionTriggeredSlot()
  1158     
   926     
  1159     // nothing selected, album id invalid, selection type invalid
   927     // nothing selected, album id invalid, selection type invalid
  1160     mTestObject->mSelectedAlbumId = TMPXItemId::InvalidId();
   928     mTestObject->mSelectedAlbumId = TMPXItemId::InvalidId();
  1161     mTestObject->mPrimaryAction->mTriggeredCount = 0;
   929     mTestObject->mPrimaryAction->mTriggeredCount = 0;
  1162     mTestObject->mSecondaryAction->mTriggeredCount = 0;
   930     mTestObject->mSecondaryAction->mTriggeredCount = 0;
  1163     mTestObject->mTypeOfSelection = 555;
   931     mTestObject->mTypeOfSelection = VideoListSelectionDialog::ENoFunction;
  1164     mTestHelper->emitPrimaryActionTriggeredSlot();
   932     mTestHelper->emitPrimaryActionTriggeredSlot();
  1165     QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 0);
   933     QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 0);
  1166     QCOMPARE(mTestObject->mSecondaryAction->mTriggeredCount, 0);
   934     QCOMPARE(mTestObject->mSecondaryAction->mTriggeredCount, 0);
  1167     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
   935     QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
  1168 
   936 
  1189     setRowCount(10);
   957     setRowCount(10);
  1190     VideoProxyModelData::mItemIds.append(TMPXItemId(0,0));
   958     VideoProxyModelData::mItemIds.append(TMPXItemId(0,0));
  1191     VideoProxyModelData::mItemIds.append(TMPXItemId(1,2));
   959     VideoProxyModelData::mItemIds.append(TMPXItemId(1,2));
  1192     
   960     
  1193     // videos selected, other one's type is not video
   961     // videos selected, other one's type is not video
  1194     QItemSelection selected;
   962     QModelIndexList selected;
  1195     QItemSelectionRange range(mTestObject->mModel->index(0, 0), mTestObject->mModel->index(1, 0));
   963     selected.append(mTestObject->mModel->index(0, 0));
  1196     selected.append(range);
   964     selected.append(mTestObject->mModel->index(1, 0));
  1197     mTestObject->mSelection.merge(selected, QItemSelectionModel::Select);
   965     mTestObject->setSelectedModelIndexes(selected);
  1198     mTestObject->mPrimaryAction->mTriggeredCount = 0;
   966     mTestObject->mPrimaryAction->mTriggeredCount = 0;
  1199     mTestObject->mSecondaryAction->mTriggeredCount = 0;
   967     mTestObject->mSecondaryAction->mTriggeredCount = 0;
  1200     mTestObject->mTypeOfSelection = VideoListSelectionDialog::EAddToCollection;
   968     mTestObject->mTypeOfSelection = VideoListSelectionDialog::EAddToCollection;
  1201     mTestObject->mSelectedVideos.clear();
   969     mTestObject->mSelectedVideos.clear();
  1202     mTestHelper->emitPrimaryActionTriggeredSlot();
   970     mTestHelper->emitPrimaryActionTriggeredSlot();