videocollection/videocollectionview/tsrc/testvideolistselectiondialog/src/testvideolistselectiondialog.cpp
author hgs
Mon, 23 Aug 2010 14:27:29 +0300
changeset 55 4bfa887905cf
parent 40 13331705e488
child 58 d2b028fd1f7d
permissions -rw-r--r--
201033
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
30
hgs
parents:
diff changeset
     1
/**
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:   tester for methods in VideoListSelectionDialog
hgs
parents:
diff changeset
    15
* 
hgs
parents:
diff changeset
    16
*/
34
hgs
parents: 30
diff changeset
    17
35
hgs
parents: 34
diff changeset
    18
#include <qdebug.h>
30
hgs
parents:
diff changeset
    19
#include <qapplication.h>
35
hgs
parents: 34
diff changeset
    20
#include "hbview.h"
hgs
parents: 34
diff changeset
    21
#include "hbabstractitemview.h"
hgs
parents: 34
diff changeset
    22
#include "hbdocumentloader.h"
hgs
parents: 34
diff changeset
    23
#include "hbstackedwidget.h"
hgs
parents: 34
diff changeset
    24
#include "hbcheckbox.h"
38
hgs
parents: 36
diff changeset
    25
#include "hbinputdialog.h"
35
hgs
parents: 34
diff changeset
    26
#include "hbdialog.h"
hgs
parents: 34
diff changeset
    27
#include "hbwidget.h"
hgs
parents: 34
diff changeset
    28
#include "hblistview.h"
38
hgs
parents: 36
diff changeset
    29
#include "hbmessagebox.h"
34
hgs
parents: 30
diff changeset
    30
hgs
parents: 30
diff changeset
    31
#include "testvideolistselectiondialog.h"
30
hgs
parents:
diff changeset
    32
35
hgs
parents: 34
diff changeset
    33
#include "videocollectionuiloader.h"
hgs
parents: 34
diff changeset
    34
#include "videolistdatamodel.h"
hgs
parents: 34
diff changeset
    35
#include "videosortfilterproxymodel.h"
hgs
parents: 34
diff changeset
    36
#include "videolistwidget.h"
hgs
parents: 34
diff changeset
    37
#include "videocollectionwrapper.h"
hgs
parents: 34
diff changeset
    38
#include "videocollectioncommon.h"
hgs
parents: 34
diff changeset
    39
#include <vcxmyvideosdefs.h>
hgs
parents: 34
diff changeset
    40
hgs
parents: 34
diff changeset
    41
#include "videolistdatamodeldata.h"
hgs
parents: 34
diff changeset
    42
#include "videocollectionwrapperdata.h"
hgs
parents: 34
diff changeset
    43
#include "videocollectionuiloaderdata.h"
hgs
parents: 34
diff changeset
    44
#include "videolistwidgetdata.h"
hgs
parents: 34
diff changeset
    45
#include "videosortfilterproxymodeldata.h"
hgs
parents: 34
diff changeset
    46
#include "videocollectionviewutilsdata.h"
hgs
parents: 34
diff changeset
    47
30
hgs
parents:
diff changeset
    48
#define private public
35
hgs
parents: 34
diff changeset
    49
#include "videolistselectiondialogtester.h"
30
hgs
parents:
diff changeset
    50
#undef private
hgs
parents:
diff changeset
    51
hgs
parents:
diff changeset
    52
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    53
// main
hgs
parents:
diff changeset
    54
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    55
//
hgs
parents:
diff changeset
    56
int main(int argc, char *argv[])
hgs
parents:
diff changeset
    57
{
hgs
parents:
diff changeset
    58
    QApplication app(argc, argv);
hgs
parents:
diff changeset
    59
    
hgs
parents:
diff changeset
    60
    TestVideoListSelectionDialog tv;
hgs
parents:
diff changeset
    61
34
hgs
parents: 30
diff changeset
    62
    int res;
hgs
parents: 30
diff changeset
    63
    if(argc > 1)
hgs
parents: 30
diff changeset
    64
    {   
hgs
parents: 30
diff changeset
    65
        res = QTest::qExec(&tv, argc, argv);
hgs
parents: 30
diff changeset
    66
    }
hgs
parents: 30
diff changeset
    67
    else
hgs
parents: 30
diff changeset
    68
    {
hgs
parents: 30
diff changeset
    69
        char *pass[3];
hgs
parents: 30
diff changeset
    70
        pass[0] = argv[0];
hgs
parents: 30
diff changeset
    71
        pass[1] = "-o";
hgs
parents: 30
diff changeset
    72
        pass[2] = "c:\\data\\testvideolistselectiondialog.txt";
hgs
parents: 30
diff changeset
    73
        res = QTest::qExec(&tv, 3, pass);
hgs
parents: 30
diff changeset
    74
    }
30
hgs
parents:
diff changeset
    75
    
hgs
parents:
diff changeset
    76
    return res;
hgs
parents:
diff changeset
    77
}
hgs
parents:
diff changeset
    78
hgs
parents:
diff changeset
    79
// ---------------------------------------------------------------------------
35
hgs
parents: 34
diff changeset
    80
// global qHash function required fo creating hash values for TMPXItemId -keys
hgs
parents: 34
diff changeset
    81
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
    82
inline uint qHash(TMPXItemId key) 
hgs
parents: 34
diff changeset
    83
{ 
hgs
parents: 34
diff changeset
    84
    QPair<uint, uint> keyPair(key.iId1, key.iId2); 
hgs
parents: 34
diff changeset
    85
hgs
parents: 34
diff changeset
    86
    return qHash(keyPair);
hgs
parents: 34
diff changeset
    87
}
hgs
parents: 34
diff changeset
    88
hgs
parents: 34
diff changeset
    89
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
    90
// setRowCount
hgs
parents: 34
diff changeset
    91
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
    92
//
36
hgs
parents: 35
diff changeset
    93
void TestVideoListSelectionDialog::setRowCount(int count, VideoCollectionCommon::TModelType type, VideoListDataModel *model)
35
hgs
parents: 34
diff changeset
    94
{
hgs
parents: 34
diff changeset
    95
    if (!model)
hgs
parents: 34
diff changeset
    96
    {
hgs
parents: 34
diff changeset
    97
        VideoCollectionWrapper &wrapper = VideoCollectionWrapper::instance();
hgs
parents: 34
diff changeset
    98
        VideoSortFilterProxyModel *model = wrapper.getModel(type);
hgs
parents: 34
diff changeset
    99
        QVERIFY(model);
hgs
parents: 34
diff changeset
   100
        
hgs
parents: 34
diff changeset
   101
        VideoListDataModel *sourceModel = qobject_cast<VideoListDataModel*>(model->sourceModel());
hgs
parents: 34
diff changeset
   102
        QVERIFY(sourceModel);
hgs
parents: 34
diff changeset
   103
        
hgs
parents: 34
diff changeset
   104
        VideoListDataModelData::setRowCount(*sourceModel, count);
hgs
parents: 34
diff changeset
   105
    }
hgs
parents: 34
diff changeset
   106
    else
hgs
parents: 34
diff changeset
   107
    {
hgs
parents: 34
diff changeset
   108
        VideoListDataModelData::setRowCount(*model, count);
hgs
parents: 34
diff changeset
   109
    }
hgs
parents: 34
diff changeset
   110
}
hgs
parents: 34
diff changeset
   111
hgs
parents: 34
diff changeset
   112
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   113
// initTestCase
hgs
parents: 34
diff changeset
   114
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   115
//
hgs
parents: 34
diff changeset
   116
void TestVideoListSelectionDialog::initTestCase()
hgs
parents: 34
diff changeset
   117
{
hgs
parents: 34
diff changeset
   118
    mTestHelper = new VideoListSelectionDialogTesterHelper();
hgs
parents: 34
diff changeset
   119
}
hgs
parents: 34
diff changeset
   120
hgs
parents: 34
diff changeset
   121
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   122
// cleanupTestCase
hgs
parents: 34
diff changeset
   123
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   124
//
hgs
parents: 34
diff changeset
   125
void TestVideoListSelectionDialog::cleanupTestCase()
hgs
parents: 34
diff changeset
   126
{
hgs
parents: 34
diff changeset
   127
    delete mTestHelper;
hgs
parents: 34
diff changeset
   128
}
hgs
parents: 34
diff changeset
   129
hgs
parents: 34
diff changeset
   130
// ---------------------------------------------------------------------------
30
hgs
parents:
diff changeset
   131
// init
hgs
parents:
diff changeset
   132
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   133
//
hgs
parents:
diff changeset
   134
void TestVideoListSelectionDialog::init()
hgs
parents:
diff changeset
   135
{
35
hgs
parents: 34
diff changeset
   136
    mTestObject = 0;
hgs
parents: 34
diff changeset
   137
    mModel = 0;
hgs
parents: 34
diff changeset
   138
    mTestUiLoader = 0;
hgs
parents: 34
diff changeset
   139
    mTestWidget = 0;
hgs
parents: 34
diff changeset
   140
    
hgs
parents: 34
diff changeset
   141
    mInitOk = false;
hgs
parents: 34
diff changeset
   142
    
hgs
parents: 34
diff changeset
   143
    mTestUiLoader = new VideoCollectionUiLoader();
hgs
parents: 34
diff changeset
   144
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
36
hgs
parents: 35
diff changeset
   145
    mModel = VideoCollectionWrapper::instance().getModel(VideoCollectionCommon::EModelTypeGeneric);
35
hgs
parents: 34
diff changeset
   146
    
hgs
parents: 34
diff changeset
   147
    mTestHelper->mTestable = mTestObject;
hgs
parents: 34
diff changeset
   148
    QVERIFY(mTestHelper->connectSignals());
hgs
parents: 34
diff changeset
   149
    
hgs
parents: 34
diff changeset
   150
    mInitOk = true;
30
hgs
parents:
diff changeset
   151
}
35
hgs
parents: 34
diff changeset
   152
30
hgs
parents:
diff changeset
   153
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   154
// cleanup
hgs
parents:
diff changeset
   155
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   156
//
hgs
parents:
diff changeset
   157
void TestVideoListSelectionDialog::cleanup()
hgs
parents:
diff changeset
   158
{
35
hgs
parents: 34
diff changeset
   159
    mTestHelper->disconnectSignals();
hgs
parents: 34
diff changeset
   160
    
hgs
parents: 34
diff changeset
   161
    delete mTestObject; 
hgs
parents: 34
diff changeset
   162
    mTestObject = 0;
hgs
parents: 34
diff changeset
   163
    
hgs
parents: 34
diff changeset
   164
    delete mTestUiLoader;
hgs
parents: 34
diff changeset
   165
    mTestUiLoader = 0;  
hgs
parents: 34
diff changeset
   166
    
hgs
parents: 34
diff changeset
   167
    mSourceModel = 0;
hgs
parents: 34
diff changeset
   168
    
hgs
parents: 34
diff changeset
   169
    mModel = 0;
hgs
parents: 34
diff changeset
   170
    
hgs
parents: 34
diff changeset
   171
    
hgs
parents: 34
diff changeset
   172
}
hgs
parents: 34
diff changeset
   173
hgs
parents: 34
diff changeset
   174
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   175
// testConstructDestruct
hgs
parents: 34
diff changeset
   176
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   177
//
hgs
parents: 34
diff changeset
   178
void TestVideoListSelectionDialog::testConstructDestruct()
hgs
parents: 34
diff changeset
   179
{
hgs
parents: 34
diff changeset
   180
    QVERIFY(mInitOk == true);
40
hgs
parents: 39
diff changeset
   181
    mTestHelper->disconnectSignals();
hgs
parents: 39
diff changeset
   182
    mTestHelper->mTestable = 0;
35
hgs
parents: 34
diff changeset
   183
    
hgs
parents: 34
diff changeset
   184
    QVERIFY(mTestObject != 0);
hgs
parents: 34
diff changeset
   185
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   186
    QVERIFY(mModel != 0);
hgs
parents: 34
diff changeset
   187
hgs
parents: 34
diff changeset
   188
    delete mTestObject;
hgs
parents: 34
diff changeset
   189
    mTestObject = 0;
hgs
parents: 34
diff changeset
   190
    
hgs
parents: 34
diff changeset
   191
    // Getting model fails 
hgs
parents: 34
diff changeset
   192
    VideoCollectionWrapperData::mGetModelFails = true;
hgs
parents: 34
diff changeset
   193
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   194
    QVERIFY(mTestObject->mModel == 0);
hgs
parents: 34
diff changeset
   195
    QVERIFY(mTestObject->mListWidget == 0);
hgs
parents: 34
diff changeset
   196
    
hgs
parents: 34
diff changeset
   197
    delete mTestObject;
hgs
parents: 34
diff changeset
   198
    mTestObject = 0;
hgs
parents: 34
diff changeset
   199
hgs
parents: 34
diff changeset
   200
    // List widget initialize fails
hgs
parents: 34
diff changeset
   201
    VideoCollectionWrapperData::mGetModelFails = false;
hgs
parents: 34
diff changeset
   202
    VideoListWidgetData::mInitializeReturnValue = -1;
hgs
parents: 34
diff changeset
   203
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   204
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   205
    QVERIFY(mTestObject->mListWidget == 0);
hgs
parents: 34
diff changeset
   206
}
hgs
parents: 34
diff changeset
   207
hgs
parents: 34
diff changeset
   208
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   209
// testSetupContent
hgs
parents: 34
diff changeset
   210
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   211
//
hgs
parents: 34
diff changeset
   212
void TestVideoListSelectionDialog::testSetupContent()
hgs
parents: 34
diff changeset
   213
{
hgs
parents: 34
diff changeset
   214
    VideoCollectionWrapperData::reset();
hgs
parents: 34
diff changeset
   215
    VideoListWidgetData::reset();
39
hgs
parents: 38
diff changeset
   216
    cleanup();
hgs
parents: 38
diff changeset
   217
    init();
35
hgs
parents: 34
diff changeset
   218
    
hgs
parents: 34
diff changeset
   219
    QVERIFY(mInitOk == true);
hgs
parents: 34
diff changeset
   220
    QVERIFY(mModel != 0);
hgs
parents: 34
diff changeset
   221
    
hgs
parents: 34
diff changeset
   222
    TMPXItemId mpxId;
hgs
parents: 34
diff changeset
   223
    
hgs
parents: 34
diff changeset
   224
    // invalid type provided, object's internal data will not change
hgs
parents: 34
diff changeset
   225
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::EDeleteVideos;
hgs
parents: 34
diff changeset
   226
    mTestObject->setupContent(-1, mpxId);
hgs
parents: 34
diff changeset
   227
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   228
    mTestObject->setupContent(600, mpxId);
hgs
parents: 34
diff changeset
   229
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   230
    
hgs
parents: 34
diff changeset
   231
    // No data. type EDeleteVideos. Default mpx item 
hgs
parents: 34
diff changeset
   232
    setRowCount(0);
hgs
parents: 34
diff changeset
   233
    mpxId = TMPXItemId();
hgs
parents: 34
diff changeset
   234
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   235
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   236
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   237
    QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
hgs
parents: 34
diff changeset
   238
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
40
hgs
parents: 39
diff changeset
   239
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   240
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   241
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   242
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   243
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   244
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   245
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   246
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 34
diff changeset
   247
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   248
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   249
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   250
    QVERIFY(mTestObject->mSecondaryAction != 0);
35
hgs
parents: 34
diff changeset
   251
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   252
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   253
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   254
    QVERIFY(mTestObject->mAlbumListReady == false);
35
hgs
parents: 34
diff changeset
   255
    
hgs
parents: 34
diff changeset
   256
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   257
    
hgs
parents: 34
diff changeset
   258
    // second setup (for coverity)
hgs
parents: 34
diff changeset
   259
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   260
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   261
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   262
    QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
hgs
parents: 34
diff changeset
   263
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
40
hgs
parents: 39
diff changeset
   264
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   265
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   266
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   267
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   268
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   269
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   270
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   271
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 34
diff changeset
   272
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   273
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   274
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   275
    QVERIFY(mTestObject->mSecondaryAction != 0);
35
hgs
parents: 34
diff changeset
   276
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   277
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   278
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   279
    QVERIFY(mTestObject->mAlbumListReady == false);
35
hgs
parents: 34
diff changeset
   280
        
hgs
parents: 34
diff changeset
   281
    delete mTestObject;
hgs
parents: 34
diff changeset
   282
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   283
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   284
    
hgs
parents: 34
diff changeset
   285
    // No data. type ESelectCollection. Default mpx item 
hgs
parents: 34
diff changeset
   286
    setRowCount(0);
hgs
parents: 34
diff changeset
   287
    mpxId = TMPXItemId();
hgs
parents: 34
diff changeset
   288
    mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
hgs
parents: 34
diff changeset
   289
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ESelectCollection);
hgs
parents: 34
diff changeset
   290
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   291
    QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
hgs
parents: 34
diff changeset
   292
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
40
hgs
parents: 39
diff changeset
   293
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   294
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   295
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   296
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   297
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   298
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   299
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   300
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == false);
hgs
parents: 34
diff changeset
   301
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   302
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   303
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   304
    QVERIFY(mTestObject->mSecondaryAction != 0);
35
hgs
parents: 34
diff changeset
   305
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   306
    QVERIFY(!VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   307
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   308
    QVERIFY(mTestObject->mAlbumListReady == false);
35
hgs
parents: 34
diff changeset
   309
    
hgs
parents: 34
diff changeset
   310
    delete mTestObject;
hgs
parents: 34
diff changeset
   311
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   312
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   313
    
hgs
parents: 34
diff changeset
   314
    // No data. type EAddToCollection:. Default mpx item 
hgs
parents: 34
diff changeset
   315
    setRowCount(0);
hgs
parents: 34
diff changeset
   316
    mpxId = TMPXItemId();
hgs
parents: 34
diff changeset
   317
    mTestObject->setupContent(VideoListSelectionDialog::EAddToCollection, mpxId);
hgs
parents: 34
diff changeset
   318
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
   319
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   320
    QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
hgs
parents: 34
diff changeset
   321
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
40
hgs
parents: 39
diff changeset
   322
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   323
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   324
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   325
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   326
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   327
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   328
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   329
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 34
diff changeset
   330
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   331
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   332
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   333
    QVERIFY(mTestObject->mSecondaryAction != 0);
35
hgs
parents: 34
diff changeset
   334
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   335
    QVERIFY(!VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   336
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   337
    QVERIFY(mTestObject->mAlbumListReady == false);
hgs
parents: 40
diff changeset
   338
   
40
hgs
parents: 39
diff changeset
   339
    // No data. type ECreateCollection:. Default mpx item 
hgs
parents: 39
diff changeset
   340
    setRowCount(0);
hgs
parents: 39
diff changeset
   341
    mpxId = TMPXItemId();
hgs
parents: 39
diff changeset
   342
    mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, mpxId);
hgs
parents: 39
diff changeset
   343
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ECreateCollection);
hgs
parents: 39
diff changeset
   344
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 39
diff changeset
   345
    QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
hgs
parents: 39
diff changeset
   346
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
hgs
parents: 39
diff changeset
   347
    QVERIFY(mTestObject->mNewAlbumText.isNull());
hgs
parents: 39
diff changeset
   348
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 39
diff changeset
   349
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 39
diff changeset
   350
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 39
diff changeset
   351
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 39
diff changeset
   352
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 39
diff changeset
   353
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 39
diff changeset
   354
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 39
diff changeset
   355
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 39
diff changeset
   356
    QVERIFY(mTestObject->mCheckBox != 0);
hgs
parents: 39
diff changeset
   357
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 39
diff changeset
   358
    QVERIFY(mTestObject->mSecondaryAction != 0);
hgs
parents: 39
diff changeset
   359
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 39
diff changeset
   360
    QVERIFY(!VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   361
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   362
    QVERIFY(mTestObject->mAlbumListReady == false);
40
hgs
parents: 39
diff changeset
   363
35
hgs
parents: 34
diff changeset
   364
    delete mTestObject;
hgs
parents: 34
diff changeset
   365
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   366
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   367
    
hgs
parents: 34
diff changeset
   368
    // No data. type ERemoveFromCollection:. Default mpx item 
hgs
parents: 34
diff changeset
   369
    setRowCount(0);
hgs
parents: 34
diff changeset
   370
    mpxId = TMPXItemId();
hgs
parents: 34
diff changeset
   371
    mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, mpxId);
hgs
parents: 34
diff changeset
   372
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ERemoveFromCollection);
hgs
parents: 34
diff changeset
   373
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   374
    QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
hgs
parents: 34
diff changeset
   375
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
40
hgs
parents: 39
diff changeset
   376
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   377
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   378
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   379
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   380
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   381
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   382
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   383
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 34
diff changeset
   384
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   385
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   386
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   387
    QVERIFY(mTestObject->mSecondaryAction != 0);
35
hgs
parents: 34
diff changeset
   388
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   389
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   390
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   391
    QVERIFY(mTestObject->mAlbumListReady == false);
35
hgs
parents: 34
diff changeset
   392
    
hgs
parents: 34
diff changeset
   393
    delete mTestObject;
hgs
parents: 34
diff changeset
   394
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);    
hgs
parents: 34
diff changeset
   395
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   396
    
hgs
parents: 34
diff changeset
   397
    // Some data, mpx item type is album 
hgs
parents: 34
diff changeset
   398
    setRowCount(10);
hgs
parents: 34
diff changeset
   399
    mpxId = TMPXItemId(0, KVcxMvcMediaTypeAlbum);
hgs
parents: 34
diff changeset
   400
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   401
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   402
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   403
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 34
diff changeset
   404
    QVERIFY(mTestObject->mSelectedAlbumId == mpxId);
40
hgs
parents: 39
diff changeset
   405
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   406
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   407
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   408
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   409
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   410
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   411
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   412
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 34
diff changeset
   413
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   414
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   415
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   416
    QVERIFY(mTestObject->mSecondaryAction != 0);
35
hgs
parents: 34
diff changeset
   417
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   418
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   419
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   420
    QVERIFY(mTestObject->mAlbumListReady == false);
hgs
parents: 40
diff changeset
   421
   
35
hgs
parents: 34
diff changeset
   422
    delete mTestObject;
hgs
parents: 34
diff changeset
   423
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   424
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   425
    
hgs
parents: 34
diff changeset
   426
    // Some data, mpx item type is invalid: category
hgs
parents: 34
diff changeset
   427
    mpxId = TMPXItemId(0, KVcxMvcMediaTypeCategory);
hgs
parents: 34
diff changeset
   428
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   429
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   430
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   431
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 34
diff changeset
   432
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
40
hgs
parents: 39
diff changeset
   433
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   434
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   435
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   436
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   437
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   438
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   439
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   440
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 34
diff changeset
   441
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   442
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   443
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   444
    QVERIFY(mTestObject->mSecondaryAction != 0);
35
hgs
parents: 34
diff changeset
   445
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   446
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   447
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   448
    QVERIFY(mTestObject->mAlbumListReady == false);
hgs
parents: 40
diff changeset
   449
   
35
hgs
parents: 34
diff changeset
   450
    delete mTestObject;
hgs
parents: 34
diff changeset
   451
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   452
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   453
    
hgs
parents: 34
diff changeset
   454
    // Some data, mpx item type is invalid id
hgs
parents: 34
diff changeset
   455
    mpxId = TMPXItemId::InvalidId();
hgs
parents: 34
diff changeset
   456
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   457
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   458
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   459
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 34
diff changeset
   460
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
40
hgs
parents: 39
diff changeset
   461
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   462
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   463
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   464
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   465
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   466
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   467
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   468
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 34
diff changeset
   469
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   470
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   471
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   472
    QVERIFY(mTestObject->mSecondaryAction != 0);  
35
hgs
parents: 34
diff changeset
   473
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   474
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   475
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   476
    QVERIFY(mTestObject->mAlbumListReady == false);
hgs
parents: 40
diff changeset
   477
   
35
hgs
parents: 34
diff changeset
   478
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   479
    // some data, second initialization without widget and model, for coverity
hgs
parents: 34
diff changeset
   480
    delete mTestObject->mListWidget;
hgs
parents: 34
diff changeset
   481
    mTestObject->mListWidget = 0;
hgs
parents: 34
diff changeset
   482
    mTestObject->mModel = 0;
hgs
parents: 34
diff changeset
   483
    mTestObject->mListContainer = 0;
hgs
parents: 34
diff changeset
   484
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   485
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   486
    QCOMPARE(mTestObject->mSelection.count(), 0);
hgs
parents: 34
diff changeset
   487
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 34
diff changeset
   488
    QVERIFY(mTestObject->mSelectedAlbumId == TMPXItemId::InvalidId());
40
hgs
parents: 39
diff changeset
   489
    QVERIFY(mTestObject->mNewAlbumText.isNull());
35
hgs
parents: 34
diff changeset
   490
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   491
    QVERIFY(mTestObject->mListWidget != 0);
hgs
parents: 34
diff changeset
   492
    QVERIFY(mTestObject->mListContainer != 0);
hgs
parents: 34
diff changeset
   493
    QVERIFY(mTestObject->mListContainer->mCurrentWidget == mTestObject->mListWidget);
hgs
parents: 34
diff changeset
   494
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   495
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   496
    QVERIFY(mTestObject->mCheckboxContainer->isVisible() == true);
hgs
parents: 34
diff changeset
   497
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   498
    QVERIFY(mTestObject->mCheckBox != 0);
36
hgs
parents: 35
diff changeset
   499
    QVERIFY(mTestObject->mPrimaryAction != 0);
hgs
parents: 35
diff changeset
   500
    QVERIFY(mTestObject->mSecondaryAction != 0);  
35
hgs
parents: 34
diff changeset
   501
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterId == mpxId);
hgs
parents: 34
diff changeset
   502
    QVERIFY(VideoSortFilterProxyModelData::mGenericFilterValue);
55
hgs
parents: 40
diff changeset
   503
    QVERIFY(mTestObject->mModelReady == false);
hgs
parents: 40
diff changeset
   504
    QVERIFY(mTestObject->mAlbumListReady == false);
35
hgs
parents: 34
diff changeset
   505
}
hgs
parents: 34
diff changeset
   506
hgs
parents: 34
diff changeset
   507
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   508
// testSetupInitFailures
hgs
parents: 34
diff changeset
   509
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   510
//
hgs
parents: 34
diff changeset
   511
void TestVideoListSelectionDialog::testSetupInitFailures()
hgs
parents: 34
diff changeset
   512
{
hgs
parents: 34
diff changeset
   513
    TMPXItemId mpxId;
hgs
parents: 34
diff changeset
   514
    
hgs
parents: 34
diff changeset
   515
    // initDialog fails because model get fails. 
hgs
parents: 34
diff changeset
   516
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   517
    VideoSortFilterProxyModel *backup = mTestObject->mModel;
hgs
parents: 34
diff changeset
   518
    VideoListWidget *backupWidget = mTestObject->mListWidget;
hgs
parents: 34
diff changeset
   519
    mTestObject->mModel = 0;
hgs
parents: 34
diff changeset
   520
    mTestObject->mListWidget = 0;
hgs
parents: 34
diff changeset
   521
    VideoCollectionWrapperData::mGetModelFails = true;
hgs
parents: 34
diff changeset
   522
    mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
hgs
parents: 34
diff changeset
   523
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   524
    VideoCollectionWrapperData::mGetModelFails = false;
hgs
parents: 34
diff changeset
   525
    QVERIFY(mTestObject->mModel == 0);
hgs
parents: 34
diff changeset
   526
    QVERIFY(mTestObject->mListWidget == 0);
hgs
parents: 34
diff changeset
   527
    QVERIFY(mTestObject->mListContainer == 0);
hgs
parents: 34
diff changeset
   528
    QVERIFY(mTestObject->mHeading == 0);
hgs
parents: 34
diff changeset
   529
    QVERIFY(mTestObject->mCheckboxContainer == 0);
hgs
parents: 34
diff changeset
   530
    QVERIFY(mTestObject->mItemCount == 0);
hgs
parents: 34
diff changeset
   531
    QVERIFY(mTestObject->mCheckBox == 0);
hgs
parents: 34
diff changeset
   532
    mTestObject->mModel = backup; backup = 0;
hgs
parents: 34
diff changeset
   533
    mTestObject->mListWidget = backupWidget; backupWidget = 0;
hgs
parents: 34
diff changeset
   534
    
hgs
parents: 34
diff changeset
   535
    delete mTestObject;
hgs
parents: 34
diff changeset
   536
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   537
    
hgs
parents: 34
diff changeset
   538
    // initDialog fails because mListWidget::initialize
hgs
parents: 34
diff changeset
   539
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   540
    VideoListWidgetData::mInitializeReturnValue = -1;
hgs
parents: 34
diff changeset
   541
    backupWidget = mTestObject->mListWidget;
hgs
parents: 34
diff changeset
   542
    mTestObject->mListWidget = 0;
hgs
parents: 34
diff changeset
   543
    mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
hgs
parents: 34
diff changeset
   544
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   545
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   546
    QVERIFY(mTestObject->mListWidget == 0);    
hgs
parents: 34
diff changeset
   547
    QVERIFY(mTestObject->mListContainer == 0);
hgs
parents: 34
diff changeset
   548
    QVERIFY(mTestObject->mHeading == 0);
hgs
parents: 34
diff changeset
   549
    QVERIFY(mTestObject->mCheckboxContainer == 0);
hgs
parents: 34
diff changeset
   550
    QVERIFY(mTestObject->mItemCount == 0);
hgs
parents: 34
diff changeset
   551
    QVERIFY(mTestObject->mCheckBox == 0);  
hgs
parents: 34
diff changeset
   552
    VideoListWidgetData::mInitializeReturnValue = 0;
hgs
parents: 34
diff changeset
   553
    
hgs
parents: 34
diff changeset
   554
    delete mTestObject;
hgs
parents: 34
diff changeset
   555
    mTestObject = new VideoListSelectionDialog(mTestUiLoader);
hgs
parents: 34
diff changeset
   556
    
hgs
parents: 34
diff changeset
   557
    // initdialog fails because DOCML_NAME_LIST_CONTAINER finding fails
hgs
parents: 34
diff changeset
   558
    VideoCollectionUiLoaderData::mFindFailure = false;
hgs
parents: 34
diff changeset
   559
    VideoCollectionUiLoaderData::mFindFailureNameList.clear();
hgs
parents: 34
diff changeset
   560
    VideoCollectionUiLoaderData::mFindFailureNameList.append(DOCML_NAME_LIST_CONTAINER);
hgs
parents: 34
diff changeset
   561
    mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
hgs
parents: 34
diff changeset
   562
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   563
    QVERIFY(mTestObject->mModel != 0);
hgs
parents: 34
diff changeset
   564
    QVERIFY(mTestObject->mListWidget != 0);    
hgs
parents: 34
diff changeset
   565
    QVERIFY(mTestObject->mListContainer == 0);
hgs
parents: 34
diff changeset
   566
    QVERIFY(mTestObject->mHeading != 0);
hgs
parents: 34
diff changeset
   567
    QVERIFY(mTestObject->mCheckboxContainer != 0);
hgs
parents: 34
diff changeset
   568
    QVERIFY(mTestObject->mItemCount != 0);
hgs
parents: 34
diff changeset
   569
    QVERIFY(mTestObject->mCheckBox != 0);     
hgs
parents: 34
diff changeset
   570
    VideoCollectionUiLoaderData::mFindFailureNameList.clear();
hgs
parents: 34
diff changeset
   571
}
hgs
parents: 34
diff changeset
   572
hgs
parents: 34
diff changeset
   573
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   574
// testExec
hgs
parents: 34
diff changeset
   575
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   576
//
hgs
parents: 34
diff changeset
   577
void TestVideoListSelectionDialog::testExec()
hgs
parents: 34
diff changeset
   578
{   
hgs
parents: 34
diff changeset
   579
    // we're using EDeleteVideos type and make sure correct
hgs
parents: 34
diff changeset
   580
    // status exists in view utils after exec 
hgs
parents: 34
diff changeset
   581
    TMPXItemId mpxId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
hgs
parents: 34
diff changeset
   582
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   583
    
hgs
parents: 34
diff changeset
   584
    HbDialog::execReturnPrimary = true;
hgs
parents: 34
diff changeset
   585
    
hgs
parents: 34
diff changeset
   586
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   587
    
40
hgs
parents: 39
diff changeset
   588
    HbDialog::openAmount = 0;
hgs
parents: 39
diff changeset
   589
    
35
hgs
parents: 34
diff changeset
   590
    // empty model row count
hgs
parents: 34
diff changeset
   591
    setRowCount(0);
55
hgs
parents: 40
diff changeset
   592
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::EDeleteVideos;
hgs
parents: 40
diff changeset
   593
    mTestObject->mModelReady = true;
hgs
parents: 40
diff changeset
   594
    mTestObject->mAlbumListReady = false;
35
hgs
parents: 34
diff changeset
   595
    mTestObject->exec();
hgs
parents: 34
diff changeset
   596
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusDeleteInProgress);
40
hgs
parents: 39
diff changeset
   597
    QCOMPARE(HbDialog::openAmount, 0);
hgs
parents: 39
diff changeset
   598
    QCOMPARE(HbInputDialog::mOpenCallCount, 0);
35
hgs
parents: 34
diff changeset
   599
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   600
    
55
hgs
parents: 40
diff changeset
   601
    // empty model row count, mModelReady is false.
hgs
parents: 40
diff changeset
   602
    mTestObject->mModelReady = false;
hgs
parents: 40
diff changeset
   603
    mTestObject->mAlbumListReady = true;
hgs
parents: 40
diff changeset
   604
    mTestObject->exec();
hgs
parents: 40
diff changeset
   605
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 40
diff changeset
   606
    QCOMPARE(HbDialog::openAmount, 0);
hgs
parents: 40
diff changeset
   607
    QCOMPARE(HbInputDialog::mOpenCallCount, 0);
hgs
parents: 40
diff changeset
   608
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 40
diff changeset
   609
    
hgs
parents: 40
diff changeset
   610
    // empty model row count, type is ESelectCollection
hgs
parents: 40
diff changeset
   611
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::ESelectCollection;
hgs
parents: 40
diff changeset
   612
    mTestObject->mSelectedAlbumId = TMPXItemId(1,0);
hgs
parents: 40
diff changeset
   613
    mTestObject->mModelReady = false;
hgs
parents: 40
diff changeset
   614
    mTestObject->mAlbumListReady = true;
hgs
parents: 40
diff changeset
   615
    mTestObject->exec();
hgs
parents: 40
diff changeset
   616
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusVideosAddedToCollection);
hgs
parents: 40
diff changeset
   617
    QCOMPARE(HbDialog::openAmount, 0);
hgs
parents: 40
diff changeset
   618
    QCOMPARE(HbInputDialog::mOpenCallCount, 0);
hgs
parents: 40
diff changeset
   619
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 40
diff changeset
   620
    
hgs
parents: 40
diff changeset
   621
    // empty model row count, mAlbumListReady is false, type is ESelectCollection
hgs
parents: 40
diff changeset
   622
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::ESelectCollection;
hgs
parents: 40
diff changeset
   623
    mTestObject->mModelReady = true;
hgs
parents: 40
diff changeset
   624
    mTestObject->mAlbumListReady = false;
hgs
parents: 40
diff changeset
   625
    mTestObject->exec();
hgs
parents: 40
diff changeset
   626
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 40
diff changeset
   627
    QCOMPARE(HbDialog::openAmount, 0);
hgs
parents: 40
diff changeset
   628
    QCOMPARE(HbInputDialog::mOpenCallCount, 0);
hgs
parents: 40
diff changeset
   629
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 40
diff changeset
   630
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::EDeleteVideos;
hgs
parents: 40
diff changeset
   631
    
35
hgs
parents: 34
diff changeset
   632
    // model contains data
hgs
parents: 34
diff changeset
   633
    setRowCount(10);
hgs
parents: 34
diff changeset
   634
    mTestObject->exec();
hgs
parents: 34
diff changeset
   635
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusDeleteInProgress);
40
hgs
parents: 39
diff changeset
   636
    QCOMPARE(HbDialog::openAmount, 1);
hgs
parents: 39
diff changeset
   637
    QCOMPARE(HbInputDialog::mOpenCallCount, 0);
35
hgs
parents: 34
diff changeset
   638
    
hgs
parents: 34
diff changeset
   639
    // just to make sure finishedSlot is called with correct params
40
hgs
parents: 39
diff changeset
   640
    HbDialog::openAmount = 0;
35
hgs
parents: 34
diff changeset
   641
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   642
    HbDialog::execReturnPrimary = false;
hgs
parents: 34
diff changeset
   643
    mTestObject->exec();
hgs
parents: 34
diff changeset
   644
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
40
hgs
parents: 39
diff changeset
   645
    QCOMPARE(HbDialog::openAmount, 1);
hgs
parents: 39
diff changeset
   646
    QCOMPARE(HbInputDialog::mOpenCallCount, 0);
hgs
parents: 39
diff changeset
   647
    
hgs
parents: 39
diff changeset
   648
    // test with type ECreateCollection
hgs
parents: 39
diff changeset
   649
    HbDialog::openAmount = 0;
hgs
parents: 39
diff changeset
   650
    mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, TMPXItemId::InvalidId());
hgs
parents: 39
diff changeset
   651
    HbDialog::execReturnPrimary = true;
hgs
parents: 39
diff changeset
   652
    mTestObject->exec();
hgs
parents: 39
diff changeset
   653
    QCOMPARE(HbDialog::openAmount, 0);
hgs
parents: 39
diff changeset
   654
    QCOMPARE(HbInputDialog::mOpenCallCount, 1);
30
hgs
parents:
diff changeset
   655
}
hgs
parents:
diff changeset
   656
35
hgs
parents: 34
diff changeset
   657
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   658
// testFinishedSlot
hgs
parents: 34
diff changeset
   659
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   660
//
hgs
parents: 34
diff changeset
   661
void TestVideoListSelectionDialog::testFinishedSlot()
hgs
parents: 34
diff changeset
   662
{
hgs
parents: 34
diff changeset
   663
    // finished slot tested throught exec -method
hgs
parents: 34
diff changeset
   664
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   665
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   666
    
hgs
parents: 34
diff changeset
   667
    TMPXItemId mpxId = TMPXItemId(1, KVcxMvcMediaTypeAlbum);
hgs
parents: 34
diff changeset
   668
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
55
hgs
parents: 40
diff changeset
   669
    mTestObject->mModelReady = true;
hgs
parents: 40
diff changeset
   670
    mTestObject->mAlbumListReady = true;
35
hgs
parents: 34
diff changeset
   671
    // finished with secondary action
hgs
parents: 34
diff changeset
   672
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   673
    HbDialog::execReturnPrimary = false;
hgs
parents: 34
diff changeset
   674
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   675
    mTestObject->exec();
hgs
parents: 34
diff changeset
   676
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   677
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   678
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   679
hgs
parents: 34
diff changeset
   680
    HbDialog::execReturnPrimary = true;    
hgs
parents: 34
diff changeset
   681
    
hgs
parents: 34
diff changeset
   682
    ////////////
hgs
parents: 34
diff changeset
   683
    // mTypeOfSelection == ESelectCollection     
hgs
parents: 34
diff changeset
   684
    //  mSelectedAlbumId != TMPXItemId::InvalidId())    
hgs
parents: 34
diff changeset
   685
    VideoCollectionViewUtilsData::mLastError = -1;    
hgs
parents: 34
diff changeset
   686
    mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
hgs
parents: 34
diff changeset
   687
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   688
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   689
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   690
    VideoSortFilterProxyModelData::mAddItemsInAlbumReturnValue = 0;
hgs
parents: 34
diff changeset
   691
    mTestObject->exec();
hgs
parents: 34
diff changeset
   692
    // type of selection has changed
hgs
parents: 34
diff changeset
   693
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
   694
    // videos added into collection
hgs
parents: 34
diff changeset
   695
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusVideosAddedToCollection);
hgs
parents: 34
diff changeset
   696
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == mpxId);
hgs
parents: 34
diff changeset
   697
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.count() == 2);
hgs
parents: 34
diff changeset
   698
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(0) == TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   699
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(1) == TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   700
    
38
hgs
parents: 36
diff changeset
   701
    HbInputDialog *dialog = new HbInputDialog();
35
hgs
parents: 34
diff changeset
   702
    
hgs
parents: 34
diff changeset
   703
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   704
    //  mSelectedAlbumId == TMPXItemId::InvalidId())
hgs
parents: 34
diff changeset
   705
    mpxId = TMPXItemId::InvalidId();
38
hgs
parents: 36
diff changeset
   706
    // query for new album name does not set selected
35
hgs
parents: 34
diff changeset
   707
    mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
hgs
parents: 34
diff changeset
   708
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   709
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   710
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   711
    VideoSortFilterProxyModelData::mNewAlbumId = TMPXItemId::InvalidId();
38
hgs
parents: 36
diff changeset
   712
    mTestObject->exec();
hgs
parents: 36
diff changeset
   713
    dialog->emitDialogFinished(mTestObject, SLOT(newAlbumNameDialogFinished(HbAction *)), 1); // No selected.
35
hgs
parents: 34
diff changeset
   714
    // type of selection does not change
38
hgs
parents: 36
diff changeset
   715
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
35
hgs
parents: 34
diff changeset
   716
    // since there's no selected videos, status code does not change
hgs
parents: 34
diff changeset
   717
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   718
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   719
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   720
 
38
hgs
parents: 36
diff changeset
   721
    // query for new album name sets selected
35
hgs
parents: 34
diff changeset
   722
    mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
hgs
parents: 34
diff changeset
   723
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   724
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   725
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   726
    VideoSortFilterProxyModelData::mNewAlbumId = TMPXItemId(1,2);
38
hgs
parents: 36
diff changeset
   727
    HbInputDialog::mValueReturnValue = QVariant(QString("testname"));
35
hgs
parents: 34
diff changeset
   728
    mTestObject->exec();  
38
hgs
parents: 36
diff changeset
   729
    dialog->emitDialogFinished(mTestObject, SLOT(newAlbumNameDialogFinished(HbAction *)), 0); // Yes selected.
35
hgs
parents: 34
diff changeset
   730
    // type of selection has changed
hgs
parents: 34
diff changeset
   731
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
   732
    // videos added into collection
hgs
parents: 34
diff changeset
   733
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusVideosAddedToCollection);
hgs
parents: 34
diff changeset
   734
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == VideoSortFilterProxyModelData::mNewAlbumId);
hgs
parents: 34
diff changeset
   735
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.count() == 2);
hgs
parents: 34
diff changeset
   736
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(0) == TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   737
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(1) == TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   738
    
hgs
parents: 34
diff changeset
   739
    ////////////
hgs
parents: 34
diff changeset
   740
    // mTypeOfSelection == EAddToCollection
hgs
parents: 34
diff changeset
   741
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   742
    // selected album id == invalid
hgs
parents: 34
diff changeset
   743
    mTestObject->setupContent(VideoListSelectionDialog::EAddToCollection, TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   744
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   745
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   746
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   747
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   748
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
   749
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   750
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   751
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   752
      
hgs
parents: 34
diff changeset
   753
    // no selected videos
hgs
parents: 34
diff changeset
   754
    mpxId = TMPXItemId(1, KVcxMvcMediaTypeAlbum);
hgs
parents: 34
diff changeset
   755
    mTestObject->setupContent(VideoListSelectionDialog::EAddToCollection, mpxId);
hgs
parents: 34
diff changeset
   756
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   757
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   758
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
   759
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   760
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   761
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   762
    
hgs
parents: 34
diff changeset
   763
    // selected album exist, selected videos exists, add items fails    
hgs
parents: 34
diff changeset
   764
    mTestObject->setupContent(VideoListSelectionDialog::EAddToCollection, mpxId);
hgs
parents: 34
diff changeset
   765
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   766
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   767
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   768
    VideoSortFilterProxyModelData::mAddItemsInAlbumReturnValue = -1;
hgs
parents: 34
diff changeset
   769
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   770
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
   771
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   772
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   773
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   774
    
hgs
parents: 34
diff changeset
   775
    // selected album exist, selected videos exists, add items succeeds   
hgs
parents: 34
diff changeset
   776
    mTestObject->setupContent(VideoListSelectionDialog::EAddToCollection, mpxId);
hgs
parents: 34
diff changeset
   777
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   778
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   779
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   780
    VideoSortFilterProxyModelData::mAddItemsInAlbumReturnValue = 0;
hgs
parents: 34
diff changeset
   781
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   782
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
   783
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusVideosAddedToCollection);
hgs
parents: 34
diff changeset
   784
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == mpxId);
hgs
parents: 34
diff changeset
   785
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.count() == 2);
hgs
parents: 34
diff changeset
   786
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(0) == TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   787
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(1) == TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   788
    
hgs
parents: 34
diff changeset
   789
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   790
    // selected album exist, selected videos exists, name for selected album exist
hgs
parents: 34
diff changeset
   791
    // (using ESelectCollection type to fetch albumname)
hgs
parents: 34
diff changeset
   792
    mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, mpxId);
hgs
parents: 34
diff changeset
   793
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   794
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   795
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   796
    VideoSortFilterProxyModelData::mNewAlbumId = TMPXItemId(1,2);
38
hgs
parents: 36
diff changeset
   797
    mTestObject->exec();
hgs
parents: 36
diff changeset
   798
    dialog->emitDialogFinished(mTestObject, SLOT(newAlbumNameDialogFinished(HbAction *)), 0); // Yes selected.
35
hgs
parents: 34
diff changeset
   799
    // type of selection has changed
hgs
parents: 34
diff changeset
   800
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
   801
    // videos added into collection
hgs
parents: 34
diff changeset
   802
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusVideosAddedToCollection);
hgs
parents: 34
diff changeset
   803
    
hgs
parents: 34
diff changeset
   804
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == mpxId);
hgs
parents: 34
diff changeset
   805
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.count() == 2);
hgs
parents: 34
diff changeset
   806
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(0) == TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   807
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(1) == TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   808
    
hgs
parents: 34
diff changeset
   809
    /////
hgs
parents: 34
diff changeset
   810
    // mTypeOfSelection == ERemoveFromCollection
hgs
parents: 34
diff changeset
   811
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   812
    // selected album id == invalid
hgs
parents: 34
diff changeset
   813
    mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   814
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   815
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   816
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   817
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   818
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ERemoveFromCollection);
hgs
parents: 34
diff changeset
   819
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   820
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   821
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   822
      
hgs
parents: 34
diff changeset
   823
    // no selected videos
hgs
parents: 34
diff changeset
   824
    mpxId = TMPXItemId(1, KVcxMvcMediaTypeAlbum);
hgs
parents: 34
diff changeset
   825
    mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, mpxId);
hgs
parents: 34
diff changeset
   826
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   827
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   828
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ERemoveFromCollection);
hgs
parents: 34
diff changeset
   829
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   830
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   831
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   832
    
hgs
parents: 34
diff changeset
   833
    // selected videos exists, removeitemsFromAlbum fails   
hgs
parents: 34
diff changeset
   834
    mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, mpxId);
hgs
parents: 34
diff changeset
   835
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   836
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   837
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   838
    VideoSortFilterProxyModelData::mRemoveItemsFromAlbumReturnValue = -1;
hgs
parents: 34
diff changeset
   839
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   840
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ERemoveFromCollection);
hgs
parents: 34
diff changeset
   841
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   842
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   843
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   844
       
hgs
parents: 34
diff changeset
   845
    mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, mpxId);
hgs
parents: 34
diff changeset
   846
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   847
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   848
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   849
    VideoSortFilterProxyModelData::mRemoveItemsFromAlbumReturnValue = 0;
hgs
parents: 34
diff changeset
   850
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   851
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::ERemoveFromCollection);
hgs
parents: 34
diff changeset
   852
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusVideosRemovedFromCollection);
hgs
parents: 34
diff changeset
   853
    QVERIFY(VideoSortFilterProxyModelData::mLastItemId == mpxId);
hgs
parents: 34
diff changeset
   854
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.count() == 2);
hgs
parents: 34
diff changeset
   855
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(0) == TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   856
    QVERIFY(VideoSortFilterProxyModelData::mItemIds.at(1) == TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   857
    
hgs
parents: 34
diff changeset
   858
    /////
hgs
parents: 34
diff changeset
   859
    // mTypeOfSelection == EDeleteVideos
hgs
parents: 34
diff changeset
   860
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   861
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   862
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   863
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   864
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   865
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   866
    QVERIFY(mTestObject->mTypeOfSelection == VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   867
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusDeleteInProgress);
hgs
parents: 34
diff changeset
   868
    
hgs
parents: 34
diff changeset
   869
    // invalid type
hgs
parents: 34
diff changeset
   870
    mTestObject->mTypeOfSelection = 500;
hgs
parents: 34
diff changeset
   871
    VideoCollectionViewUtilsData::mLastError = -1;
hgs
parents: 34
diff changeset
   872
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
   873
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
   874
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   875
    mTestObject->exec();  
hgs
parents: 34
diff changeset
   876
    QVERIFY(mTestObject->mTypeOfSelection == 500);
hgs
parents: 34
diff changeset
   877
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 34
diff changeset
   878
    QVERIFY(!VideoSortFilterProxyModelData::mItemIds.count());
hgs
parents: 34
diff changeset
   879
   
hgs
parents: 34
diff changeset
   880
}
hgs
parents: 34
diff changeset
   881
hgs
parents: 34
diff changeset
   882
void TestVideoListSelectionDialog::testMarkAllStateChangedSlot()
hgs
parents: 34
diff changeset
   883
{
hgs
parents: 34
diff changeset
   884
    VideoCollectionWrapperData::reset();
hgs
parents: 34
diff changeset
   885
    VideoListWidgetData::reset();
hgs
parents: 34
diff changeset
   886
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   887
hgs
parents: 34
diff changeset
   888
    mTestHelper->mTestable = mTestObject;
hgs
parents: 34
diff changeset
   889
    mTestHelper->connectSignals();
hgs
parents: 34
diff changeset
   890
    
hgs
parents: 34
diff changeset
   891
    HbListView::mAllSelectedStatus = -1;
hgs
parents: 34
diff changeset
   892
    
hgs
parents: 34
diff changeset
   893
    // forced check
hgs
parents: 34
diff changeset
   894
    mTestObject->mForcedCheck = true;
hgs
parents: 34
diff changeset
   895
    mTestHelper->emitMarkAllStateChanged(Qt::Checked);
hgs
parents: 34
diff changeset
   896
    mTestObject->mForcedCheck = false;
hgs
parents: 34
diff changeset
   897
    QVERIFY(HbListView::mAllSelectedStatus == -1);
hgs
parents: 34
diff changeset
   898
    
hgs
parents: 34
diff changeset
   899
    // checked
hgs
parents: 34
diff changeset
   900
    mTestHelper->emitMarkAllStateChanged(Qt::Checked);
hgs
parents: 34
diff changeset
   901
    QVERIFY(HbListView::mAllSelectedStatus == 1);
hgs
parents: 34
diff changeset
   902
    HbListView::mAllSelectedStatus = -1;
hgs
parents: 34
diff changeset
   903
    
hgs
parents: 34
diff changeset
   904
    // unchecked
hgs
parents: 34
diff changeset
   905
    mTestHelper->emitMarkAllStateChanged(Qt::Unchecked);
hgs
parents: 34
diff changeset
   906
    QVERIFY(HbListView::mAllSelectedStatus == 0);
hgs
parents: 34
diff changeset
   907
    
hgs
parents: 34
diff changeset
   908
    HbListView::mAllSelectedStatus = -1;
hgs
parents: 34
diff changeset
   909
    
hgs
parents: 34
diff changeset
   910
    mTestHelper->disconnectSignals();
hgs
parents: 34
diff changeset
   911
hgs
parents: 34
diff changeset
   912
}
hgs
parents: 34
diff changeset
   913
hgs
parents: 34
diff changeset
   914
void TestVideoListSelectionDialog::testSelectionChangedSlot()
hgs
parents: 34
diff changeset
   915
{
hgs
parents: 34
diff changeset
   916
    QItemSelection selected;
hgs
parents: 34
diff changeset
   917
    QItemSelection deselected;
hgs
parents: 34
diff changeset
   918
    
hgs
parents: 34
diff changeset
   919
    mTestHelper->mTestable = mTestObject;
hgs
parents: 34
diff changeset
   920
    mTestHelper->connectSignals();
hgs
parents: 34
diff changeset
   921
    
hgs
parents: 34
diff changeset
   922
    mTestObject->mSelection.clear();
hgs
parents: 34
diff changeset
   923
    
hgs
parents: 34
diff changeset
   924
    // no primary action
hgs
parents: 34
diff changeset
   925
    mTestHelper->emitSelectionChangedSlot(selected, deselected);
hgs
parents: 34
diff changeset
   926
    QVERIFY(!mTestObject->mSelection.count());
hgs
parents: 34
diff changeset
   927
    
hgs
parents: 34
diff changeset
   928
    TMPXItemId mpxId = TMPXItemId::InvalidId();
hgs
parents: 34
diff changeset
   929
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,1));
hgs
parents: 34
diff changeset
   930
hgs
parents: 34
diff changeset
   931
    setRowCount(10);
hgs
parents: 34
diff changeset
   932
    
hgs
parents: 34
diff changeset
   933
    // select item
36
hgs
parents: 35
diff changeset
   934
    mTestObject->mPrimaryAction->setEnabled(false);
35
hgs
parents: 34
diff changeset
   935
    QModelIndex index = mModel->index(0, 0);
hgs
parents: 34
diff changeset
   936
    QItemSelectionRange range(mModel->index(0, 0));
hgs
parents: 34
diff changeset
   937
    selected.append(range);
hgs
parents: 34
diff changeset
   938
    mTestHelper->emitSelectionChangedSlot(selected, deselected);
hgs
parents: 34
diff changeset
   939
    QVERIFY(mTestObject->mSelection.count() == 1);
36
hgs
parents: 35
diff changeset
   940
    QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
35
hgs
parents: 34
diff changeset
   941
    
hgs
parents: 34
diff changeset
   942
    // deselect item
hgs
parents: 34
diff changeset
   943
    selected.clear();
hgs
parents: 34
diff changeset
   944
    deselected.append(range);
hgs
parents: 34
diff changeset
   945
    mTestHelper->emitSelectionChangedSlot(selected, deselected);
hgs
parents: 34
diff changeset
   946
    QVERIFY(mTestObject->mSelection.count() == 0);
36
hgs
parents: 35
diff changeset
   947
    QVERIFY(mTestObject->mPrimaryAction->isEnabled() == false);
35
hgs
parents: 34
diff changeset
   948
    
40
hgs
parents: 39
diff changeset
   949
    mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, TMPXItemId::InvalidId());
hgs
parents: 39
diff changeset
   950
    QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
hgs
parents: 39
diff changeset
   951
    QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_ok"));
hgs
parents: 39
diff changeset
   952
    
hgs
parents: 39
diff changeset
   953
    // select item, type ECreateCollection
hgs
parents: 39
diff changeset
   954
    deselected.clear();
hgs
parents: 39
diff changeset
   955
    selected.append(range);
hgs
parents: 39
diff changeset
   956
    mTestHelper->emitSelectionChangedSlot(selected, deselected);
hgs
parents: 39
diff changeset
   957
    QVERIFY(mTestObject->mSelection.count() == 1);
hgs
parents: 39
diff changeset
   958
    QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
hgs
parents: 39
diff changeset
   959
    QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_add"));
hgs
parents: 39
diff changeset
   960
    
hgs
parents: 39
diff changeset
   961
    // desect item, type ECreateCollection
hgs
parents: 39
diff changeset
   962
    selected.clear();
hgs
parents: 39
diff changeset
   963
    deselected.append(range);
hgs
parents: 39
diff changeset
   964
    mTestHelper->emitSelectionChangedSlot(selected, deselected);
hgs
parents: 39
diff changeset
   965
    QVERIFY(mTestObject->mSelection.count() == 0);
hgs
parents: 39
diff changeset
   966
    QVERIFY(mTestObject->mPrimaryAction->isEnabled() == true);
hgs
parents: 39
diff changeset
   967
    QCOMPARE(mTestObject->mPrimaryAction->text(), hbTrId("txt_common_button_ok"));
hgs
parents: 39
diff changeset
   968
    
35
hgs
parents: 34
diff changeset
   969
    mTestHelper->disconnectSignals();
hgs
parents: 34
diff changeset
   970
}
hgs
parents: 34
diff changeset
   971
hgs
parents: 34
diff changeset
   972
void TestVideoListSelectionDialog::testSingleItemSelectedSlot()
hgs
parents: 34
diff changeset
   973
{
hgs
parents: 34
diff changeset
   974
    mTestHelper->mTestable = mTestObject;
hgs
parents: 34
diff changeset
   975
    mTestHelper->connectSignals();
hgs
parents: 34
diff changeset
   976
    
hgs
parents: 34
diff changeset
   977
    setRowCount(10);
hgs
parents: 34
diff changeset
   978
    TMPXItemId mpxId = TMPXItemId::InvalidId();
hgs
parents: 34
diff changeset
   979
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
   980
    
hgs
parents: 34
diff changeset
   981
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::ESelectCollection;
hgs
parents: 34
diff changeset
   982
    mTestHelper->emitSingleItemSelectedSlot(mModel->index(0, 0));
hgs
parents: 34
diff changeset
   983
    
hgs
parents: 34
diff changeset
   984
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::ESelectCollection;
hgs
parents: 34
diff changeset
   985
    QModelIndex invalidIndex;
hgs
parents: 34
diff changeset
   986
    mTestHelper->emitSingleItemSelectedSlot(invalidIndex);
hgs
parents: 34
diff changeset
   987
    
hgs
parents: 34
diff changeset
   988
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::EDeleteVideos;
hgs
parents: 34
diff changeset
   989
    mTestHelper->emitSingleItemSelectedSlot(mModel->index(0, 0));
hgs
parents: 34
diff changeset
   990
    
hgs
parents: 34
diff changeset
   991
    mTestHelper->disconnectSignals();
hgs
parents: 34
diff changeset
   992
}
hgs
parents: 34
diff changeset
   993
hgs
parents: 34
diff changeset
   994
void TestVideoListSelectionDialog::testModelReadySlot()
hgs
parents: 34
diff changeset
   995
{
hgs
parents: 34
diff changeset
   996
hgs
parents: 34
diff changeset
   997
    mTestHelper->mTestable = mTestObject;
hgs
parents: 34
diff changeset
   998
    mTestHelper->connectSignals();
55
hgs
parents: 40
diff changeset
   999
    mTestObject->setupContent(VideoListSelectionDialog::ESelectCollection, TMPXItemId(1,2));
35
hgs
parents: 34
diff changeset
  1000
    
36
hgs
parents: 35
diff changeset
  1001
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
55
hgs
parents: 40
diff changeset
  1002
    setRowCount(0);
hgs
parents: 40
diff changeset
  1003
    VideoCollectionViewUtilsData::mLastError = -1;
35
hgs
parents: 34
diff changeset
  1004
    
55
hgs
parents: 40
diff changeset
  1005
    // type of selection == ESelectCollection    
35
hgs
parents: 34
diff changeset
  1006
    mTestHelper->emitModelReadySlot();
55
hgs
parents: 40
diff changeset
  1007
    QVERIFY(VideoCollectionViewUtilsData::mLastError == -1);
hgs
parents: 40
diff changeset
  1008
    
hgs
parents: 40
diff changeset
  1009
    //////////////////////////
hgs
parents: 40
diff changeset
  1010
    // Tests with empty model.
hgs
parents: 40
diff changeset
  1011
    
hgs
parents: 40
diff changeset
  1012
    // type EDeleteVideos
hgs
parents: 40
diff changeset
  1013
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,2));
hgs
parents: 40
diff changeset
  1014
    mTestHelper->emitModelReadySlot();
hgs
parents: 40
diff changeset
  1015
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusDeleteInProgress);
hgs
parents: 40
diff changeset
  1016
    
hgs
parents: 40
diff changeset
  1017
    // type EAddToCollection
hgs
parents: 40
diff changeset
  1018
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 40
diff changeset
  1019
    mTestObject->setupContent(VideoListSelectionDialog::EAddToCollection, TMPXItemId(1,2));
hgs
parents: 40
diff changeset
  1020
    mTestHelper->emitModelReadySlot();
hgs
parents: 40
diff changeset
  1021
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 1);
35
hgs
parents: 34
diff changeset
  1022
    
55
hgs
parents: 40
diff changeset
  1023
    // type ERemoveFromCollection
hgs
parents: 40
diff changeset
  1024
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 40
diff changeset
  1025
    mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, TMPXItemId(1,2));
35
hgs
parents: 34
diff changeset
  1026
    mTestHelper->emitModelReadySlot();
55
hgs
parents: 40
diff changeset
  1027
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 1);
hgs
parents: 40
diff changeset
  1028
    
hgs
parents: 40
diff changeset
  1029
    //////////////////////////
hgs
parents: 40
diff changeset
  1030
    // Tests with items in model.
hgs
parents: 40
diff changeset
  1031
    setRowCount(10);
hgs
parents: 40
diff changeset
  1032
    QModelIndex index = mModel->index(5, 0);
35
hgs
parents: 34
diff changeset
  1033
    
55
hgs
parents: 40
diff changeset
  1034
    // type ECreateCollection, dialog hidden
hgs
parents: 40
diff changeset
  1035
    mTestObject->setupContent(VideoListSelectionDialog::ECreateCollection, TMPXItemId::InvalidId());
hgs
parents: 40
diff changeset
  1036
    mTestObject->hide();
hgs
parents: 40
diff changeset
  1037
    HbListView::mLatestScrollToIndex = index;
35
hgs
parents: 34
diff changeset
  1038
    mTestHelper->emitModelReadySlot();
55
hgs
parents: 40
diff changeset
  1039
    QCOMPARE(HbListView::mLatestScrollToIndex, index);
hgs
parents: 40
diff changeset
  1040
    
hgs
parents: 40
diff changeset
  1041
    // type EDeleteVideos, dialog hidden.
hgs
parents: 40
diff changeset
  1042
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,2));
hgs
parents: 40
diff changeset
  1043
    mTestObject->hide();
hgs
parents: 40
diff changeset
  1044
    mTestHelper->emitModelReadySlot();
hgs
parents: 40
diff changeset
  1045
    QCOMPARE(HbListView::mLatestScrollToIndex, mModel->index(0, 0));
hgs
parents: 40
diff changeset
  1046
    
hgs
parents: 40
diff changeset
  1047
    // type EDeleteVideos, dialog visible.
hgs
parents: 40
diff changeset
  1048
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, TMPXItemId(1,2));
hgs
parents: 40
diff changeset
  1049
    HbListView::mLatestScrollToIndex = index;
hgs
parents: 40
diff changeset
  1050
    mTestObject->setVisible(true);
hgs
parents: 40
diff changeset
  1051
    mTestHelper->emitModelReadySlot();
hgs
parents: 40
diff changeset
  1052
    QCOMPARE(HbListView::mLatestScrollToIndex, index);
35
hgs
parents: 34
diff changeset
  1053
    
hgs
parents: 34
diff changeset
  1054
    mTestHelper->disconnectSignals();
hgs
parents: 34
diff changeset
  1055
}
hgs
parents: 34
diff changeset
  1056
hgs
parents: 34
diff changeset
  1057
void TestVideoListSelectionDialog::testUpdateCounterSlot()
hgs
parents: 34
diff changeset
  1058
{
hgs
parents: 34
diff changeset
  1059
    mTestHelper->mTestable = mTestObject;
hgs
parents: 34
diff changeset
  1060
    mTestHelper->connectSignals();
hgs
parents: 34
diff changeset
  1061
    
hgs
parents: 34
diff changeset
  1062
    TMPXItemId mpxId = TMPXItemId::InvalidId();
hgs
parents: 34
diff changeset
  1063
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
  1064
    
hgs
parents: 34
diff changeset
  1065
    // itemCount is null
hgs
parents: 34
diff changeset
  1066
    HbLabel *labelBackup = mTestObject->mItemCount;
hgs
parents: 34
diff changeset
  1067
    mTestObject->mCheckBox->setChecked(true);
hgs
parents: 34
diff changeset
  1068
    mTestObject->mItemCount = 0;
hgs
parents: 34
diff changeset
  1069
    mTestHelper->emitUpdateCounterSlot();
hgs
parents: 34
diff changeset
  1070
    mTestObject->mItemCount = labelBackup;
hgs
parents: 34
diff changeset
  1071
    QVERIFY(mTestObject->mCheckBox->mChecked == true);
hgs
parents: 34
diff changeset
  1072
    
hgs
parents: 34
diff changeset
  1073
    // no items in model
hgs
parents: 34
diff changeset
  1074
    setRowCount(0);
hgs
parents: 34
diff changeset
  1075
    mTestObject->mCheckBox->setChecked(true);
hgs
parents: 34
diff changeset
  1076
    mTestHelper->emitUpdateCounterSlot();
hgs
parents: 34
diff changeset
  1077
    QVERIFY(mTestObject->mCheckBox->mChecked == false);
hgs
parents: 34
diff changeset
  1078
hgs
parents: 34
diff changeset
  1079
    // all selected.
hgs
parents: 34
diff changeset
  1080
    setRowCount(1);
hgs
parents: 34
diff changeset
  1081
    mTestObject->mCheckBox->setChecked(false);
hgs
parents: 34
diff changeset
  1082
    QItemSelection selected;
hgs
parents: 34
diff changeset
  1083
    QItemSelectionRange range(mTestObject->mModel->index(0, 0));
hgs
parents: 34
diff changeset
  1084
    selected.append(range);
hgs
parents: 34
diff changeset
  1085
    mTestObject->mSelection.merge(selected, QItemSelectionModel::Select);
hgs
parents: 34
diff changeset
  1086
    mTestHelper->emitUpdateCounterSlot();
hgs
parents: 34
diff changeset
  1087
    QVERIFY(mTestObject->mCheckBox->mChecked == true);
hgs
parents: 34
diff changeset
  1088
    
hgs
parents: 34
diff changeset
  1089
    // not all selected
hgs
parents: 34
diff changeset
  1090
    setRowCount(10);
hgs
parents: 34
diff changeset
  1091
    mTestObject->mCheckBox->setChecked(true);
hgs
parents: 34
diff changeset
  1092
    selected.clear();
hgs
parents: 34
diff changeset
  1093
    range = QItemSelectionRange(mModel->index(0, 0));
hgs
parents: 34
diff changeset
  1094
    selected.append(range);
hgs
parents: 34
diff changeset
  1095
    mTestObject->mSelection.clear();
hgs
parents: 34
diff changeset
  1096
    mTestObject->mSelection.merge(selected, QItemSelectionModel::Select);
hgs
parents: 34
diff changeset
  1097
    mTestHelper->emitUpdateCounterSlot();
hgs
parents: 34
diff changeset
  1098
    QVERIFY(mTestObject->mCheckBox->mChecked == false);
hgs
parents: 34
diff changeset
  1099
    
hgs
parents: 34
diff changeset
  1100
    mTestHelper->disconnectSignals();
hgs
parents: 34
diff changeset
  1101
}
hgs
parents: 34
diff changeset
  1102
hgs
parents: 34
diff changeset
  1103
void TestVideoListSelectionDialog::testPrimaryActionTriggeredSlot()
hgs
parents: 34
diff changeset
  1104
{
hgs
parents: 34
diff changeset
  1105
    mTestHelper->mTestable = mTestObject;
hgs
parents: 34
diff changeset
  1106
    mTestHelper->connectSignals();
hgs
parents: 34
diff changeset
  1107
    
hgs
parents: 34
diff changeset
  1108
    TMPXItemId mpxId = TMPXItemId::InvalidId();
hgs
parents: 34
diff changeset
  1109
    mTestObject->setupContent(VideoListSelectionDialog::EDeleteVideos, mpxId);
hgs
parents: 34
diff changeset
  1110
    
hgs
parents: 34
diff changeset
  1111
    // nothing selected, album id invalid, selection type != EAddToCollection
36
hgs
parents: 35
diff changeset
  1112
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 35
diff changeset
  1113
    mTestObject->mSecondaryAction->mTriggeredCount = 0;
35
hgs
parents: 34
diff changeset
  1114
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::EDeleteVideos;
hgs
parents: 34
diff changeset
  1115
    mTestHelper->emitPrimaryActionTriggeredSlot();
36
hgs
parents: 35
diff changeset
  1116
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 0);
hgs
parents: 35
diff changeset
  1117
    QCOMPARE(mTestObject->mSecondaryAction->mTriggeredCount, 0);
35
hgs
parents: 34
diff changeset
  1118
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 34
diff changeset
  1119
    
hgs
parents: 34
diff changeset
  1120
    // nothing selected, album id invalid, selection type EAddToCollection
hgs
parents: 34
diff changeset
  1121
    mTestObject->mSelectedAlbumId = TMPXItemId::InvalidId();
36
hgs
parents: 35
diff changeset
  1122
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 35
diff changeset
  1123
    mTestObject->mSecondaryAction->mTriggeredCount = 0;
35
hgs
parents: 34
diff changeset
  1124
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::EAddToCollection;
hgs
parents: 34
diff changeset
  1125
    mTestHelper->emitPrimaryActionTriggeredSlot();
36
hgs
parents: 35
diff changeset
  1126
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 0);
hgs
parents: 35
diff changeset
  1127
    QCOMPARE(mTestObject->mSecondaryAction->mTriggeredCount, 0);
35
hgs
parents: 34
diff changeset
  1128
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 34
diff changeset
  1129
    
hgs
parents: 34
diff changeset
  1130
    // nothing selected, album id invalid, selection type ESelectCollection
hgs
parents: 34
diff changeset
  1131
    mTestObject->mSelectedAlbumId = TMPXItemId::InvalidId();
36
hgs
parents: 35
diff changeset
  1132
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 35
diff changeset
  1133
    mTestObject->mSecondaryAction->mTriggeredCount = 0;
35
hgs
parents: 34
diff changeset
  1134
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::ESelectCollection;
hgs
parents: 34
diff changeset
  1135
    mTestHelper->emitPrimaryActionTriggeredSlot();
36
hgs
parents: 35
diff changeset
  1136
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 0);
hgs
parents: 35
diff changeset
  1137
    QCOMPARE(mTestObject->mSecondaryAction->mTriggeredCount, 0);
35
hgs
parents: 34
diff changeset
  1138
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 34
diff changeset
  1139
    
hgs
parents: 34
diff changeset
  1140
    // nothing selected, album id invalid, selection type invalid
hgs
parents: 34
diff changeset
  1141
    mTestObject->mSelectedAlbumId = TMPXItemId::InvalidId();
36
hgs
parents: 35
diff changeset
  1142
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 35
diff changeset
  1143
    mTestObject->mSecondaryAction->mTriggeredCount = 0;
35
hgs
parents: 34
diff changeset
  1144
    mTestObject->mTypeOfSelection = 555;
hgs
parents: 34
diff changeset
  1145
    mTestHelper->emitPrimaryActionTriggeredSlot();
36
hgs
parents: 35
diff changeset
  1146
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 0);
hgs
parents: 35
diff changeset
  1147
    QCOMPARE(mTestObject->mSecondaryAction->mTriggeredCount, 0);
35
hgs
parents: 34
diff changeset
  1148
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 34
diff changeset
  1149
40
hgs
parents: 39
diff changeset
  1150
    // nothing selected, album id invalid, type ECreateCollection
hgs
parents: 39
diff changeset
  1151
    mTestObject->mSelectedAlbumId = TMPXItemId::InvalidId();
hgs
parents: 39
diff changeset
  1152
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 39
diff changeset
  1153
    mTestObject->mSecondaryAction->mTriggeredCount = 0;
hgs
parents: 39
diff changeset
  1154
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::ECreateCollection;
hgs
parents: 39
diff changeset
  1155
    mTestHelper->emitPrimaryActionTriggeredSlot();
hgs
parents: 39
diff changeset
  1156
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 1);
hgs
parents: 39
diff changeset
  1157
    QCOMPARE(mTestObject->mSecondaryAction->mTriggeredCount, 0);
hgs
parents: 39
diff changeset
  1158
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
hgs
parents: 39
diff changeset
  1159
    
35
hgs
parents: 34
diff changeset
  1160
    // nothing selected, album id ok
hgs
parents: 34
diff changeset
  1161
    mTestObject->mSelectedAlbumId = TMPXItemId(0, KVcxMvcMediaTypeAlbum);
36
hgs
parents: 35
diff changeset
  1162
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 35
diff changeset
  1163
    mTestObject->mSecondaryAction->mTriggeredCount = 0;
35
hgs
parents: 34
diff changeset
  1164
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::ESelectCollection;
hgs
parents: 34
diff changeset
  1165
    mTestHelper->emitPrimaryActionTriggeredSlot();
36
hgs
parents: 35
diff changeset
  1166
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 1);
hgs
parents: 35
diff changeset
  1167
    QCOMPARE(mTestObject->mSecondaryAction->mTriggeredCount, 0);
35
hgs
parents: 34
diff changeset
  1168
    QCOMPARE(mTestObject->mSelectedVideos.count(), 0);
40
hgs
parents: 39
diff changeset
  1169
    
35
hgs
parents: 34
diff changeset
  1170
    setRowCount(10);
hgs
parents: 34
diff changeset
  1171
    VideoSortFilterProxyModelData::mItemIds.append(TMPXItemId(0,0));
hgs
parents: 34
diff changeset
  1172
    VideoSortFilterProxyModelData::mItemIds.append(TMPXItemId(1,2));
hgs
parents: 34
diff changeset
  1173
    
hgs
parents: 34
diff changeset
  1174
    // videos selected, other one's type is not video
hgs
parents: 34
diff changeset
  1175
    QItemSelection selected;
hgs
parents: 34
diff changeset
  1176
    QItemSelectionRange range(mTestObject->mModel->index(0, 0), mTestObject->mModel->index(1, 0));
hgs
parents: 34
diff changeset
  1177
    selected.append(range);
hgs
parents: 34
diff changeset
  1178
    mTestObject->mSelection.merge(selected, QItemSelectionModel::Select);
36
hgs
parents: 35
diff changeset
  1179
    mTestObject->mPrimaryAction->mTriggeredCount = 0;
hgs
parents: 35
diff changeset
  1180
    mTestObject->mSecondaryAction->mTriggeredCount = 0;
35
hgs
parents: 34
diff changeset
  1181
    mTestObject->mTypeOfSelection = VideoListSelectionDialog::EAddToCollection;
hgs
parents: 34
diff changeset
  1182
    mTestObject->mSelectedVideos.clear();
hgs
parents: 34
diff changeset
  1183
    mTestHelper->emitPrimaryActionTriggeredSlot();
36
hgs
parents: 35
diff changeset
  1184
    QCOMPARE(mTestObject->mPrimaryAction->mTriggeredCount, 1);
35
hgs
parents: 34
diff changeset
  1185
    QCOMPARE(mTestObject->mSelectedVideos.count(), 1);
hgs
parents: 34
diff changeset
  1186
  
hgs
parents: 34
diff changeset
  1187
    mTestHelper->disconnectSignals(); 
hgs
parents: 34
diff changeset
  1188
}
hgs
parents: 34
diff changeset
  1189
hgs
parents: 34
diff changeset
  1190
void TestVideoListSelectionDialog::testGetSelectedName()
hgs
parents: 34
diff changeset
  1191
{
hgs
parents: 34
diff changeset
  1192
    mTestHelper->mTestable = mTestObject;
hgs
parents: 34
diff changeset
  1193
    mTestHelper->connectSignals();
hgs
parents: 34
diff changeset
  1194
    
hgs
parents: 34
diff changeset
  1195
    mTestObject->setupContent(VideoListSelectionDialog::ERemoveFromCollection, TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1196
    
hgs
parents: 34
diff changeset
  1197
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,0));
hgs
parents: 34
diff changeset
  1198
    mTestObject->mSelectedVideos.insert(TMPXItemId(2,0));
hgs
parents: 34
diff changeset
  1199
    
hgs
parents: 34
diff changeset
  1200
    VideoCollectionViewUtilsData::mLastStatusAdditional = QVariant();
hgs
parents: 34
diff changeset
  1201
    // mSelectedAlbumId is video
hgs
parents: 34
diff changeset
  1202
    mTestObject->mSelectedAlbumId = TMPXItemId(1,0);
36
hgs
parents: 35
diff changeset
  1203
    mTestHelper->emitFinishedSlot(mTestObject->mPrimaryAction);
35
hgs
parents: 34
diff changeset
  1204
    QVERIFY(VideoCollectionViewUtilsData::mLastStatusAdditional.isValid());
hgs
parents: 34
diff changeset
  1205
    QVERIFY(!VideoCollectionViewUtilsData::mLastStatusAdditional.toString().length());
hgs
parents: 34
diff changeset
  1206
    
hgs
parents: 34
diff changeset
  1207
    mTestObject->mSelectedAlbumId = TMPXItemId(1,2);
hgs
parents: 34
diff changeset
  1208
    // fetching collections model unsucceeds
hgs
parents: 34
diff changeset
  1209
    VideoCollectionWrapperData::mGetModelFails = true;
36
hgs
parents: 35
diff changeset
  1210
    mTestHelper->emitFinishedSlot(mTestObject->mPrimaryAction);
35
hgs
parents: 34
diff changeset
  1211
    QVERIFY(VideoCollectionViewUtilsData::mLastStatusAdditional.isValid());
hgs
parents: 34
diff changeset
  1212
    QVERIFY(!VideoCollectionViewUtilsData::mLastStatusAdditional.toString().length());
hgs
parents: 34
diff changeset
  1213
    VideoCollectionWrapperData::mGetModelFails = false;
hgs
parents: 34
diff changeset
  1214
    
hgs
parents: 34
diff changeset
  1215
    // invalid index for selected album
36
hgs
parents: 35
diff changeset
  1216
    mTestHelper->emitFinishedSlot(mTestObject->mPrimaryAction);
35
hgs
parents: 34
diff changeset
  1217
    QVERIFY(VideoCollectionViewUtilsData::mLastStatusAdditional.isValid());
hgs
parents: 34
diff changeset
  1218
    QVERIFY(!VideoCollectionViewUtilsData::mLastStatusAdditional.toString().length());
hgs
parents: 34
diff changeset
  1219
    
hgs
parents: 34
diff changeset
  1220
    // succeed case:
hgs
parents: 34
diff changeset
  1221
    // need to add album ib into selected list, because stub proxy overwrites
hgs
parents: 34
diff changeset
  1222
    // VideoSortFilterProxyModelData::mItemIds at removeitems removeItemsFromAlbum -method
hgs
parents: 34
diff changeset
  1223
    // and we need valid index for id
36
hgs
parents: 35
diff changeset
  1224
    QString testname("testname");
hgs
parents: 35
diff changeset
  1225
    VideoListDataModelData::mData[VideoCollectionCommon::KeyTitle] = testname;
35
hgs
parents: 34
diff changeset
  1226
    mTestObject->mSelectedVideos.insert(TMPXItemId(1,2));   
36
hgs
parents: 35
diff changeset
  1227
    mTestHelper->emitFinishedSlot(mTestObject->mPrimaryAction);
35
hgs
parents: 34
diff changeset
  1228
    QVERIFY(VideoCollectionViewUtilsData::mLastStatusAdditional.isValid());
hgs
parents: 34
diff changeset
  1229
    QVERIFY(VideoCollectionViewUtilsData::mLastStatusAdditional.toString().length() > 0);
hgs
parents: 34
diff changeset
  1230
    QVERIFY(VideoCollectionViewUtilsData::mLastStatusAdditional.toString() == "testname");
hgs
parents: 34
diff changeset
  1231
    
hgs
parents: 34
diff changeset
  1232
    mTestHelper->disconnectSignals(); 
hgs
parents: 34
diff changeset
  1233
}
hgs
parents: 34
diff changeset
  1234
34
hgs
parents: 30
diff changeset
  1235
// end of file