videocollection/videocollectionview/tsrc/testlistview/src/testlistview.cpp
author hgs
Fri, 28 May 2010 09:45:19 +0300
changeset 39 f6d44a0cd476
parent 38 ff53afa8ad05
child 40 13331705e488
permissions -rw-r--r--
201021
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 VideoListView
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
39
hgs
parents: 38
diff changeset
    18
// Version : %version: 44 %
36
hgs
parents: 34
diff changeset
    19
hgs
parents: 34
diff changeset
    20
#define private public
hgs
parents: 34
diff changeset
    21
#include "videoservices.h"
hgs
parents: 34
diff changeset
    22
#include "videosortfilterproxymodel.h"
hgs
parents: 34
diff changeset
    23
#include "videolistwidget.h"
hgs
parents: 34
diff changeset
    24
#include "videolistview.h"
hgs
parents: 34
diff changeset
    25
#undef private
hgs
parents: 34
diff changeset
    26
hgs
parents: 34
diff changeset
    27
#include <qdebug.h>
hgs
parents: 34
diff changeset
    28
#include <xqserviceutil.h>
30
hgs
parents:
diff changeset
    29
#include <QtTest/QtTest>
36
hgs
parents: 34
diff changeset
    30
#include "hbapplication.h"
hgs
parents: 34
diff changeset
    31
#include "hbeffect.h"
hgs
parents: 34
diff changeset
    32
#include "hbinstance.h"
hgs
parents: 34
diff changeset
    33
#include "hbmenu.h"
hgs
parents: 34
diff changeset
    34
#include "hbmenudata.h"
hgs
parents: 34
diff changeset
    35
#include "hbtoolbar.h"
hgs
parents: 34
diff changeset
    36
#include "hbaction.h"
hgs
parents: 34
diff changeset
    37
#include "hbstackedwidget.h"
hgs
parents: 34
diff changeset
    38
#include "hbgroupbox.h"
hgs
parents: 34
diff changeset
    39
#include "hbdocumentloader.h"
hgs
parents: 34
diff changeset
    40
#include "hbview.h"
hgs
parents: 34
diff changeset
    41
#include "hblistview.h"
hgs
parents: 34
diff changeset
    42
#include "hbinputdialog.h"
30
hgs
parents:
diff changeset
    43
#include <qactiongroup.h>
hgs
parents:
diff changeset
    44
#include <videocollectioncommon.h>
34
hgs
parents: 30
diff changeset
    45
#include <qhash.h>
hgs
parents: 30
diff changeset
    46
#include <qmap.h>
hgs
parents: 30
diff changeset
    47
#include <mpxitemid.h>
hgs
parents: 30
diff changeset
    48
#include <vcxmyvideosdefs.h>
30
hgs
parents:
diff changeset
    49
36
hgs
parents: 34
diff changeset
    50
#include "videocollectionuiloader.h"
30
hgs
parents:
diff changeset
    51
#include "videocollectionwrapper.h"
hgs
parents:
diff changeset
    52
#include "testlistview.h"
hgs
parents:
diff changeset
    53
#include "videocollectionviewutils.h"
hgs
parents:
diff changeset
    54
#include "videolistselectiondialog.h"
hgs
parents:
diff changeset
    55
#include "videocollectionwrapper.h"
hgs
parents:
diff changeset
    56
#include "videohintwidget.h"
36
hgs
parents: 34
diff changeset
    57
#include "videohintwidgetdata.h"
34
hgs
parents: 30
diff changeset
    58
#include "videolistwidgetdata.h"
hgs
parents: 30
diff changeset
    59
#include "videocollectionwrapperdata.h"
hgs
parents: 30
diff changeset
    60
#include "videocollectionviewutilsdata.h"
hgs
parents: 30
diff changeset
    61
#include "videolistselectiondialogdata.h"
hgs
parents: 30
diff changeset
    62
#include "videosortfilterproxymodeldata.h"
hgs
parents: 30
diff changeset
    63
#include "videocollectionuiloaderdata.h"
hgs
parents: 30
diff changeset
    64
#include "videolistdatamodeldata.h"
36
hgs
parents: 34
diff changeset
    65
#include "xqserviceutilxtra.h"
30
hgs
parents:
diff changeset
    66
hgs
parents:
diff changeset
    67
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    68
// main
hgs
parents:
diff changeset
    69
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    70
//
hgs
parents:
diff changeset
    71
int	main(int argc, char	*argv[])
hgs
parents:
diff changeset
    72
{
hgs
parents:
diff changeset
    73
	HbApplication app(argc,	argv);
hgs
parents:
diff changeset
    74
	HbMainWindow window;
36
hgs
parents: 34
diff changeset
    75
	hbInstance->mWindowses.append(&window);
30
hgs
parents:
diff changeset
    76
hgs
parents:
diff changeset
    77
	TestListView tv;
hgs
parents:
diff changeset
    78
34
hgs
parents: 30
diff changeset
    79
    int res;
hgs
parents: 30
diff changeset
    80
    if(argc > 1)
hgs
parents: 30
diff changeset
    81
    {   
hgs
parents: 30
diff changeset
    82
        res = QTest::qExec(&tv, argc, argv);
hgs
parents: 30
diff changeset
    83
    }
hgs
parents: 30
diff changeset
    84
    else
hgs
parents: 30
diff changeset
    85
    {
hgs
parents: 30
diff changeset
    86
    	char *pass[3];
hgs
parents: 30
diff changeset
    87
    	pass[0]	= argv[0];
hgs
parents: 30
diff changeset
    88
    	pass[1]	= "-o";
hgs
parents: 30
diff changeset
    89
    	pass[2]	= "c:\\data\\testlistview.txt";
hgs
parents: 30
diff changeset
    90
        res = QTest::qExec(&tv, 3, pass);
hgs
parents: 30
diff changeset
    91
    }
30
hgs
parents:
diff changeset
    92
hgs
parents:
diff changeset
    93
	return res;
hgs
parents:
diff changeset
    94
}
hgs
parents:
diff changeset
    95
hgs
parents:
diff changeset
    96
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    97
// init
hgs
parents:
diff changeset
    98
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    99
//
hgs
parents:
diff changeset
   100
void TestListView::init(bool initTestView)
hgs
parents:
diff changeset
   101
{
36
hgs
parents: 34
diff changeset
   102
    XQServiceUtilXtra::service = false;
30
hgs
parents:
diff changeset
   103
	mUiLoader = new VideoCollectionUiLoader();
hgs
parents:
diff changeset
   104
	mUiLoader->reset();
hgs
parents:
diff changeset
   105
hgs
parents:
diff changeset
   106
	bool ok(false);
36
hgs
parents: 34
diff changeset
   107
	mUiLoader->load(DOCML_VIDEOCOLLECTIONVIEW_FILE, &ok);
30
hgs
parents:
diff changeset
   108
    if (!ok)
hgs
parents:
diff changeset
   109
    {
hgs
parents:
diff changeset
   110
    	return;
hgs
parents:
diff changeset
   111
    }
hgs
parents:
diff changeset
   112
36
hgs
parents: 34
diff changeset
   113
    mTestView = mUiLoader->findWidget<VideoListView>( DOCML_NAME_VIEW );
30
hgs
parents:
diff changeset
   114
    QVERIFY(mTestView);
34
hgs
parents: 30
diff changeset
   115
    if(initTestView)
hgs
parents: 30
diff changeset
   116
    {
hgs
parents: 30
diff changeset
   117
        QVERIFY(mTestView->initializeView() == 0);
hgs
parents: 30
diff changeset
   118
    }
30
hgs
parents:
diff changeset
   119
    
hgs
parents:
diff changeset
   120
    mListWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_VIDEOLISTWIDGET);
34
hgs
parents: 30
diff changeset
   121
    QVERIFY(mListWidget);
30
hgs
parents:
diff changeset
   122
34
hgs
parents: 30
diff changeset
   123
	mWrapper = &VideoCollectionWrapper::instance();
hgs
parents: 30
diff changeset
   124
	QVERIFY(mWrapper);
30
hgs
parents:
diff changeset
   125
}
hgs
parents:
diff changeset
   126
hgs
parents:
diff changeset
   127
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   128
// cleanup
hgs
parents:
diff changeset
   129
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   130
//
hgs
parents:
diff changeset
   131
void TestListView::cleanup()
hgs
parents:
diff changeset
   132
{
36
hgs
parents: 34
diff changeset
   133
	delete mUiLoader;
hgs
parents: 34
diff changeset
   134
	mUiLoader = 0;
34
hgs
parents: 30
diff changeset
   135
	
hgs
parents: 30
diff changeset
   136
	mWrapper = 0;
36
hgs
parents: 34
diff changeset
   137
	mTestView = 0;
30
hgs
parents:
diff changeset
   138
	disconnect();
34
hgs
parents: 30
diff changeset
   139
hgs
parents: 30
diff changeset
   140
    VideoListWidgetData::reset();
hgs
parents: 30
diff changeset
   141
    VideoCollectionWrapperData::reset();
hgs
parents: 30
diff changeset
   142
    VideoCollectionViewUtilsData::reset();
hgs
parents: 30
diff changeset
   143
    VideoListSelectionDialogData::reset();
hgs
parents: 30
diff changeset
   144
    VideoSortFilterProxyModelData::reset();
36
hgs
parents: 34
diff changeset
   145
    HbDocumentLoader::cleanup();
30
hgs
parents:
diff changeset
   146
}
hgs
parents:
diff changeset
   147
hgs
parents:
diff changeset
   148
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   149
// visibleMenuActions
hgs
parents:
diff changeset
   150
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   151
//
hgs
parents:
diff changeset
   152
int	TestListView::visibleMenuActions()
hgs
parents:
diff changeset
   153
{
hgs
parents:
diff changeset
   154
	int	visibleActions(0);
34
hgs
parents: 30
diff changeset
   155
	VideoCollectionUiLoader::ActionIds key;
30
hgs
parents:
diff changeset
   156
	HbAction *action(0);
36
hgs
parents: 34
diff changeset
   157
	foreach (key,VideoCollectionUiLoaderData::mMenuActions.keys())
30
hgs
parents:
diff changeset
   158
	{
36
hgs
parents: 34
diff changeset
   159
		action = dynamic_cast<HbAction*>(VideoCollectionUiLoaderData::mMenuActions[key]);
hgs
parents: 34
diff changeset
   160
		if (action && action->isVisible())
hgs
parents: 34
diff changeset
   161
		{
hgs
parents: 34
diff changeset
   162
            visibleActions++;
hgs
parents: 34
diff changeset
   163
		}
30
hgs
parents:
diff changeset
   164
	}
hgs
parents:
diff changeset
   165
	return visibleActions;
hgs
parents:
diff changeset
   166
}
hgs
parents:
diff changeset
   167
hgs
parents:
diff changeset
   168
// ---------------------------------------------------------------------------
34
hgs
parents: 30
diff changeset
   169
// setRowCount
hgs
parents: 30
diff changeset
   170
// ---------------------------------------------------------------------------
hgs
parents: 30
diff changeset
   171
//
36
hgs
parents: 34
diff changeset
   172
void TestListView::setRowCount(int count, VideoSortFilterProxyModel *model)
34
hgs
parents: 30
diff changeset
   173
{
36
hgs
parents: 34
diff changeset
   174
    if(!model)
34
hgs
parents: 30
diff changeset
   175
    {
36
hgs
parents: 34
diff changeset
   176
        if (mTestView)
34
hgs
parents: 30
diff changeset
   177
        {
36
hgs
parents: 34
diff changeset
   178
            if (!mTestView->mCurrentList)
hgs
parents: 34
diff changeset
   179
            {
hgs
parents: 34
diff changeset
   180
                mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   181
            }
hgs
parents: 34
diff changeset
   182
            model = mTestView->mCurrentList->mModel;
34
hgs
parents: 30
diff changeset
   183
        }
36
hgs
parents: 34
diff changeset
   184
    }
hgs
parents: 34
diff changeset
   185
hgs
parents: 34
diff changeset
   186
    if (model)
hgs
parents: 34
diff changeset
   187
    {
hgs
parents: 34
diff changeset
   188
        VideoListDataModel *sourceModel =
hgs
parents: 34
diff changeset
   189
            qobject_cast<VideoListDataModel*>(
hgs
parents: 34
diff changeset
   190
                model->sourceModel());
hgs
parents: 34
diff changeset
   191
        if(sourceModel)
34
hgs
parents: 30
diff changeset
   192
        {
36
hgs
parents: 34
diff changeset
   193
            VideoListDataModelData::setRowCount(*sourceModel, count);
34
hgs
parents: 30
diff changeset
   194
        }
hgs
parents: 30
diff changeset
   195
    }
hgs
parents: 30
diff changeset
   196
}
hgs
parents: 30
diff changeset
   197
hgs
parents: 30
diff changeset
   198
// ---------------------------------------------------------------------------
36
hgs
parents: 34
diff changeset
   199
// isActionVisible
hgs
parents: 34
diff changeset
   200
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
   201
//
hgs
parents: 34
diff changeset
   202
bool TestListView::isActionVisible(const char *name) const
hgs
parents: 34
diff changeset
   203
{
hgs
parents: 34
diff changeset
   204
    bool isVisible = false;
hgs
parents: 34
diff changeset
   205
    
hgs
parents: 34
diff changeset
   206
    HbAction *action = mUiLoader->findObject<HbAction>(name);
hgs
parents: 34
diff changeset
   207
    if (!action)
hgs
parents: 34
diff changeset
   208
    {
hgs
parents: 34
diff changeset
   209
        // must be menu widget
hgs
parents: 34
diff changeset
   210
        HbMenu *menu = mUiLoader->findWidget<HbMenu>(name);
hgs
parents: 34
diff changeset
   211
        if (menu)
hgs
parents: 34
diff changeset
   212
        {
hgs
parents: 34
diff changeset
   213
            action = menu->menuAction();
hgs
parents: 34
diff changeset
   214
        }
hgs
parents: 34
diff changeset
   215
    }
hgs
parents: 34
diff changeset
   216
    
hgs
parents: 34
diff changeset
   217
    // check if action is visible
hgs
parents: 34
diff changeset
   218
    if (action)
hgs
parents: 34
diff changeset
   219
    {
hgs
parents: 34
diff changeset
   220
        isVisible = action->isVisible();
hgs
parents: 34
diff changeset
   221
    }
hgs
parents: 34
diff changeset
   222
    
hgs
parents: 34
diff changeset
   223
    return isVisible;
hgs
parents: 34
diff changeset
   224
}
hgs
parents: 34
diff changeset
   225
hgs
parents: 34
diff changeset
   226
// ---------------------------------------------------------------------------
30
hgs
parents:
diff changeset
   227
// testCreateDelete
hgs
parents:
diff changeset
   228
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   229
//
hgs
parents:
diff changeset
   230
void TestListView::testCreateDelete()
hgs
parents:
diff changeset
   231
{
hgs
parents:
diff changeset
   232
    mWrapper = 0;
hgs
parents:
diff changeset
   233
hgs
parents:
diff changeset
   234
    mUiLoader = new VideoCollectionUiLoader();
hgs
parents:
diff changeset
   235
hgs
parents:
diff changeset
   236
	mUiLoader->reset();
hgs
parents:
diff changeset
   237
hgs
parents:
diff changeset
   238
	bool ok(false);
hgs
parents:
diff changeset
   239
36
hgs
parents: 34
diff changeset
   240
	mUiLoader->load(DOCML_VIDEOCOLLECTIONVIEW_FILE, &ok);
30
hgs
parents:
diff changeset
   241
hgs
parents:
diff changeset
   242
    if (!ok)
hgs
parents:
diff changeset
   243
    {
hgs
parents:
diff changeset
   244
    	return;
hgs
parents:
diff changeset
   245
    }
hgs
parents:
diff changeset
   246
36
hgs
parents: 34
diff changeset
   247
    mTestView = mUiLoader->findWidget<VideoListView>( DOCML_NAME_VIEW );
30
hgs
parents:
diff changeset
   248
hgs
parents:
diff changeset
   249
    delete mTestView;
hgs
parents:
diff changeset
   250
	mTestView =	0;
hgs
parents:
diff changeset
   251
}
hgs
parents:
diff changeset
   252
hgs
parents:
diff changeset
   253
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   254
// Slot: test initialize view
hgs
parents:
diff changeset
   255
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   256
//
hgs
parents:
diff changeset
   257
void TestListView::testInitializeView()
hgs
parents:
diff changeset
   258
{
34
hgs
parents: 30
diff changeset
   259
    VideoListWidget *videoListWidget = 0;
hgs
parents: 30
diff changeset
   260
    VideoHintWidget *hintWidget = 0;
hgs
parents: 30
diff changeset
   261
    
hgs
parents: 30
diff changeset
   262
    init(false);
36
hgs
parents: 34
diff changeset
   263
	// Test mUiLoader is null
hgs
parents: 34
diff changeset
   264
    VideoCollectionUiLoader *tmp = mTestView->mUiLoader;
hgs
parents: 34
diff changeset
   265
	mTestView->mUiLoader = 0;
hgs
parents: 34
diff changeset
   266
	QVERIFY( mTestView->initializeView() < 0 );	
30
hgs
parents:
diff changeset
   267
	QVERIFY( mTestView->mVideoServices == 0 );
hgs
parents:
diff changeset
   268
	QVERIFY( mTestView->mIsService == false );
36
hgs
parents: 34
diff changeset
   269
	mTestView->mUiLoader = tmp;
hgs
parents: 34
diff changeset
   270
	
hgs
parents: 34
diff changeset
   271
	// service flag is false and mVideoServices is != 0
hgs
parents: 34
diff changeset
   272
	mTestView->mIsService = false;
hgs
parents: 34
diff changeset
   273
	XQServiceUtilXtra::service = false;
hgs
parents: 34
diff changeset
   274
	mTestView->mVideoServices = VideoServices::instance();
hgs
parents: 34
diff changeset
   275
	QVERIFY( mTestView->initializeView() == 0 );    
hgs
parents: 34
diff changeset
   276
    QVERIFY( mTestView->mVideoServices != 0 );
hgs
parents: 34
diff changeset
   277
    QVERIFY( mTestView->mIsService == false );
hgs
parents: 34
diff changeset
   278
	
hgs
parents: 34
diff changeset
   279
    // servicve flag is true, mVideoServices is 0
hgs
parents: 34
diff changeset
   280
    mTestView->mVideoServices = 0;
hgs
parents: 34
diff changeset
   281
    XQServiceUtilXtra::service = true;
hgs
parents: 34
diff changeset
   282
    QVERIFY( mTestView->initializeView() == 0 );    
hgs
parents: 34
diff changeset
   283
    QVERIFY( mTestView->mVideoServices != 0 );
hgs
parents: 34
diff changeset
   284
    QVERIFY( mTestView->mIsService == true );
hgs
parents: 34
diff changeset
   285
    XQServiceUtilXtra::service = false;
hgs
parents: 34
diff changeset
   286
    
hgs
parents: 34
diff changeset
   287
	cleanup();	
30
hgs
parents:
diff changeset
   288
}
hgs
parents:
diff changeset
   289
hgs
parents:
diff changeset
   290
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   291
// testMenus
hgs
parents:
diff changeset
   292
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   293
//
hgs
parents:
diff changeset
   294
void TestListView::testMenus()
hgs
parents:
diff changeset
   295
{
36
hgs
parents: 34
diff changeset
   296
    init();
hgs
parents: 34
diff changeset
   297
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   298
hgs
parents: 34
diff changeset
   299
    HbAction* action = 0;
hgs
parents: 34
diff changeset
   300
    QList<QAction*> tbActions = mTestView->toolBar()->actions();
hgs
parents: 34
diff changeset
   301
    QList<QAction*>	tbGroupActions;
hgs
parents: 34
diff changeset
   302
    QList<QAction*>	tbGroupActions2;
30
hgs
parents:
diff changeset
   303
36
hgs
parents: 34
diff changeset
   304
    // All videos is open for default, verify.
hgs
parents: 34
diff changeset
   305
    QVERIFY( mTestView->mToolbarViewsActionGroup != 0 );
hgs
parents: 34
diff changeset
   306
    QVERIFY( mTestView->mToolbarCollectionActionGroup != 0 );
hgs
parents: 34
diff changeset
   307
    tbGroupActions = mTestView->mToolbarViewsActionGroup->actions();
hgs
parents: 34
diff changeset
   308
    tbGroupActions2 = mTestView->mToolbarCollectionActionGroup->actions();
hgs
parents: 34
diff changeset
   309
    QCOMPARE( mTestView->mToolbarActions.count(), 5 );
hgs
parents: 34
diff changeset
   310
    QCOMPARE( tbActions.count(), 3 );
hgs
parents: 34
diff changeset
   311
    QCOMPARE( tbGroupActions.count(), 3 );
hgs
parents: 34
diff changeset
   312
    QCOMPARE( tbGroupActions2.count(), 2 );
hgs
parents: 34
diff changeset
   313
    QVERIFY( tbGroupActions.at(0)->isChecked() ); // First is checked.
30
hgs
parents:
diff changeset
   314
36
hgs
parents: 34
diff changeset
   315
    // Verify checkable	and	visible	toolbar	actions.
hgs
parents: 34
diff changeset
   316
    HbAction* allVideosAction =	mTestView->mToolbarActions[VideoListView::ETBActionAllVideos];
hgs
parents: 34
diff changeset
   317
    HbAction* collectionsAction	= mTestView->mToolbarActions[VideoListView::ETBActionCollections];
hgs
parents: 34
diff changeset
   318
    HbAction* servicesAction = mTestView->mToolbarActions[VideoListView::ETBActionServices];
hgs
parents: 34
diff changeset
   319
    HbAction* addVideosAction =	mTestView->mToolbarActions[VideoListView::ETBActionAddVideos];
hgs
parents: 34
diff changeset
   320
    HbAction* removeVideosAction = mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos];
hgs
parents: 34
diff changeset
   321
    QVERIFY( allVideosAction !=	0 );
hgs
parents: 34
diff changeset
   322
    QVERIFY( allVideosAction->isCheckable()	);
hgs
parents: 34
diff changeset
   323
    QVERIFY( allVideosAction->isVisible() );
hgs
parents: 34
diff changeset
   324
    QVERIFY( tbActions.at(0) == tbGroupActions.at(0) );
hgs
parents: 34
diff changeset
   325
    
hgs
parents: 34
diff changeset
   326
    QVERIFY( collectionsAction != 0	);
hgs
parents: 34
diff changeset
   327
    QVERIFY( collectionsAction->isCheckable() );
hgs
parents: 34
diff changeset
   328
    QVERIFY( collectionsAction->isVisible() );
hgs
parents: 34
diff changeset
   329
    QVERIFY( tbActions.at(1) == tbGroupActions.at(1) );
hgs
parents: 34
diff changeset
   330
    
hgs
parents: 34
diff changeset
   331
    QVERIFY( servicesAction	!= 0 );
hgs
parents: 34
diff changeset
   332
    QVERIFY( !servicesAction->isCheckable() );
hgs
parents: 34
diff changeset
   333
    QVERIFY( servicesAction->isVisible() );
hgs
parents: 34
diff changeset
   334
    QVERIFY( tbActions.at(2) == tbGroupActions.at(2) );
hgs
parents: 34
diff changeset
   335
    
hgs
parents: 34
diff changeset
   336
    QVERIFY( addVideosAction !=	0 );
hgs
parents: 34
diff changeset
   337
    QVERIFY( !addVideosAction->isCheckable() );
hgs
parents: 34
diff changeset
   338
    QVERIFY( tbActions.at(0) != tbGroupActions2.at(0) );
hgs
parents: 34
diff changeset
   339
    
hgs
parents: 34
diff changeset
   340
    QVERIFY( removeVideosAction	!= 0 );
hgs
parents: 34
diff changeset
   341
    QVERIFY( !removeVideosAction->isCheckable() );
hgs
parents: 34
diff changeset
   342
    QVERIFY( tbActions.at(1) != tbGroupActions2.at(1) );
hgs
parents: 34
diff changeset
   343
hgs
parents: 34
diff changeset
   344
    // Open	collections.
hgs
parents: 34
diff changeset
   345
    action = dynamic_cast<HbAction*>(tbGroupActions.at(1));
hgs
parents: 34
diff changeset
   346
    QVERIFY( action );
hgs
parents: 34
diff changeset
   347
    action->setChecked(false);
hgs
parents: 34
diff changeset
   348
    action->QAction::trigger();
30
hgs
parents:
diff changeset
   349
36
hgs
parents: 34
diff changeset
   350
    // Verify.
hgs
parents: 34
diff changeset
   351
    QVERIFY( mTestView->mToolbarViewsActionGroup );
hgs
parents: 34
diff changeset
   352
    tbGroupActions = mTestView->mToolbarViewsActionGroup->actions();
hgs
parents: 34
diff changeset
   353
    QCOMPARE( mTestView->mToolbarActions.count(), 5 );
hgs
parents: 34
diff changeset
   354
    QCOMPARE( tbGroupActions.count(), 3 );
hgs
parents: 34
diff changeset
   355
    QCOMPARE( tbGroupActions2.count(), 2 );
hgs
parents: 34
diff changeset
   356
    QVERIFY( tbGroupActions.at(1)->isChecked() ); // 2nd is	checked.
30
hgs
parents:
diff changeset
   357
36
hgs
parents: 34
diff changeset
   358
    // Verify checkable	and	visible	toolbar	actions.
hgs
parents: 34
diff changeset
   359
    allVideosAction	= mTestView->mToolbarActions[VideoListView::ETBActionAllVideos];
hgs
parents: 34
diff changeset
   360
    collectionsAction =	mTestView->mToolbarActions[VideoListView::ETBActionCollections];
hgs
parents: 34
diff changeset
   361
    servicesAction = mTestView->mToolbarActions[VideoListView::ETBActionServices];
hgs
parents: 34
diff changeset
   362
    addVideosAction	= mTestView->mToolbarActions[VideoListView::ETBActionAddVideos];
hgs
parents: 34
diff changeset
   363
    removeVideosAction = mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos];
hgs
parents: 34
diff changeset
   364
    QVERIFY( allVideosAction !=	0 );
hgs
parents: 34
diff changeset
   365
    QVERIFY( allVideosAction->isCheckable()	);
hgs
parents: 34
diff changeset
   366
    QVERIFY( allVideosAction->isVisible() );
hgs
parents: 34
diff changeset
   367
    QVERIFY( tbActions.at(0) == tbGroupActions.at(0) );
hgs
parents: 34
diff changeset
   368
    
hgs
parents: 34
diff changeset
   369
    QVERIFY( collectionsAction != 0	);
hgs
parents: 34
diff changeset
   370
    QVERIFY( collectionsAction->isCheckable() );
hgs
parents: 34
diff changeset
   371
    QVERIFY( collectionsAction->isVisible() );
hgs
parents: 34
diff changeset
   372
    QVERIFY( tbActions.at(1) == tbGroupActions.at(1) );
hgs
parents: 34
diff changeset
   373
    
hgs
parents: 34
diff changeset
   374
    QVERIFY( servicesAction	!= 0 );
hgs
parents: 34
diff changeset
   375
    QVERIFY( !servicesAction->isCheckable() );
hgs
parents: 34
diff changeset
   376
    QVERIFY( servicesAction->isVisible() );
hgs
parents: 34
diff changeset
   377
    QVERIFY( tbActions.at(2) == tbGroupActions.at(2) );
hgs
parents: 34
diff changeset
   378
    
hgs
parents: 34
diff changeset
   379
    QVERIFY( addVideosAction !=	0 );
hgs
parents: 34
diff changeset
   380
    QVERIFY( !addVideosAction->isCheckable() );
hgs
parents: 34
diff changeset
   381
    QVERIFY( tbActions.at(0) != tbGroupActions2.at(0) );
hgs
parents: 34
diff changeset
   382
    
hgs
parents: 34
diff changeset
   383
    QVERIFY( removeVideosAction	!= 0 );
hgs
parents: 34
diff changeset
   384
    QVERIFY( !removeVideosAction->isCheckable() );
hgs
parents: 34
diff changeset
   385
    QVERIFY( tbActions.at(1) != tbGroupActions2.at(1) );
30
hgs
parents:
diff changeset
   386
36
hgs
parents: 34
diff changeset
   387
    cleanup();
30
hgs
parents:
diff changeset
   388
}
hgs
parents:
diff changeset
   389
hgs
parents:
diff changeset
   390
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   391
// Slot: test create toolbar
hgs
parents:
diff changeset
   392
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   393
//
hgs
parents:
diff changeset
   394
void TestListView::testCreateAction()
hgs
parents:
diff changeset
   395
{
hgs
parents:
diff changeset
   396
	init();
36
hgs
parents: 34
diff changeset
   397
	mTestView->activateView(TMPXItemId::InvalidId());
30
hgs
parents:
diff changeset
   398
hgs
parents:
diff changeset
   399
	QVERIFY(mTestView->mToolbarViewsActionGroup != 0);
hgs
parents:
diff changeset
   400
hgs
parents:
diff changeset
   401
	QList<QAction*>	actions	= mTestView->mToolbarViewsActionGroup->actions();
hgs
parents:
diff changeset
   402
	actions.append(mTestView->mToolbarCollectionActionGroup->actions());
36
hgs
parents: 34
diff changeset
   403
	QCOMPARE(actions.count(), 5);
30
hgs
parents:
diff changeset
   404
hgs
parents:
diff changeset
   405
	QCOMPARE( mTestView->toolBar()->actions().count(), 3 );
hgs
parents:
diff changeset
   406
hgs
parents:
diff changeset
   407
	HbAction* allVideos	= static_cast<HbAction*>(actions.at(0));
hgs
parents:
diff changeset
   408
	QVERIFY( allVideos->isCheckable() );
38
hgs
parents: 37
diff changeset
   409
	QCOMPARE( allVideos->icon().iconName(),	QString("qtg_mono_video") );
36
hgs
parents: 34
diff changeset
   410
	QVERIFY( allVideos->isChecked() );
30
hgs
parents:
diff changeset
   411
hgs
parents:
diff changeset
   412
	HbAction* collections =	static_cast<HbAction*>(actions.at(1));
hgs
parents:
diff changeset
   413
	QVERIFY( collections->isCheckable()	);
36
hgs
parents: 34
diff changeset
   414
	QCOMPARE( collections->icon().iconName(), QString("qtg_mono_video_collection") );
30
hgs
parents:
diff changeset
   415
hgs
parents:
diff changeset
   416
	HbAction* services = static_cast<HbAction*>(actions.at(2));
36
hgs
parents: 34
diff changeset
   417
	QVERIFY( !services->isCheckable() );
hgs
parents: 34
diff changeset
   418
	QCOMPARE( services->icon().iconName(), QString("qtg_mono_ovistore") );
30
hgs
parents:
diff changeset
   419
hgs
parents:
diff changeset
   420
	HbAction* addVideos	= static_cast<HbAction*>(actions.at(3));
hgs
parents:
diff changeset
   421
	QVERIFY( !addVideos->isCheckable() );
36
hgs
parents: 34
diff changeset
   422
	QCOMPARE( addVideos->icon().iconName(),	QString("qtg_mono_add_to_video_collection") );
30
hgs
parents:
diff changeset
   423
hgs
parents:
diff changeset
   424
	HbAction* removeVideos = static_cast<HbAction*>(actions.at(4));
hgs
parents:
diff changeset
   425
	QVERIFY( !removeVideos->isCheckable() );
36
hgs
parents: 34
diff changeset
   426
	QCOMPARE( removeVideos->icon().iconName(), QString("qtg_mono_remove_from_video_collection") );
30
hgs
parents:
diff changeset
   427
hgs
parents:
diff changeset
   428
	cleanup();
hgs
parents:
diff changeset
   429
}
hgs
parents:
diff changeset
   430
hgs
parents:
diff changeset
   431
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   432
// Slot: test activate view
hgs
parents:
diff changeset
   433
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   434
//
hgs
parents:
diff changeset
   435
void TestListView::testActivateView()
hgs
parents:
diff changeset
   436
{
34
hgs
parents: 30
diff changeset
   437
    VideoListWidget* videoListWidget = 0;
hgs
parents: 30
diff changeset
   438
    
30
hgs
parents:
diff changeset
   439
	init();
36
hgs
parents: 34
diff changeset
   440
	
hgs
parents: 34
diff changeset
   441
	HbMainWindow *mainWnd = hbInstance->allMainWindows().value(0);
hgs
parents: 34
diff changeset
   442
	mainWnd->unsetOrientation(false);
39
hgs
parents: 38
diff changeset
   443
    VideoListWidget *backup = mTestView->mCurrentList;
hgs
parents: 38
diff changeset
   444
	mTestView->mCurrentList = 0;
36
hgs
parents: 34
diff changeset
   445
	HbDocumentLoader::mFindWidgetFails = true;
hgs
parents: 34
diff changeset
   446
	QCOMPARE( mTestView->activateView(TMPXItemId::InvalidId()), -1	);
34
hgs
parents: 30
diff changeset
   447
    QVERIFY( VideoListWidgetData::mActive == false );
36
hgs
parents: 34
diff changeset
   448
    QVERIFY( mTestView->mCurrentList == 0 );
34
hgs
parents: 30
diff changeset
   449
    QCOMPARE( VideoListWidgetData::mActivateCount, 0 );
hgs
parents: 30
diff changeset
   450
	QCOMPARE( VideoListWidgetData::mDeactivateCount, 0 );
36
hgs
parents: 34
diff changeset
   451
	QVERIFY( mainWnd->mOrientationSet == false );
39
hgs
parents: 38
diff changeset
   452
	mTestView->mCurrentList = backup;
30
hgs
parents:
diff changeset
   453
	
36
hgs
parents: 34
diff changeset
   454
    HbDocumentLoader::mFindWidgetFails = false;
hgs
parents: 34
diff changeset
   455
    videoListWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_VIDEOLISTWIDGET);
hgs
parents: 34
diff changeset
   456
    QVERIFY(videoListWidget);
34
hgs
parents: 30
diff changeset
   457
	VideoListWidgetData::mActivateReturnValue =	-1;
36
hgs
parents: 34
diff changeset
   458
	QCOMPARE( mTestView->activateView(TMPXItemId::InvalidId()), -1	);
34
hgs
parents: 30
diff changeset
   459
	QVERIFY( VideoListWidgetData::mActive == false );
hgs
parents: 30
diff changeset
   460
	QCOMPARE( VideoListWidgetData::mActivateCount, 1 );
hgs
parents: 30
diff changeset
   461
	QCOMPARE( VideoListWidgetData::mDeactivateCount, 1 );
36
hgs
parents: 34
diff changeset
   462
    QVERIFY( mainWnd->mOrientationSet == false );
30
hgs
parents:
diff changeset
   463
34
hgs
parents: 30
diff changeset
   464
	VideoListWidgetData::mActivateReturnValue =	0;
36
hgs
parents: 34
diff changeset
   465
	QCOMPARE( mTestView->activateView(TMPXItemId::InvalidId()), 0 );
34
hgs
parents: 30
diff changeset
   466
	QVERIFY( VideoListWidgetData::mActive );
hgs
parents: 30
diff changeset
   467
	QCOMPARE( VideoListWidgetData::mActivateCount, 2 );
hgs
parents: 30
diff changeset
   468
	QCOMPARE( VideoListWidgetData::mDeactivateCount, 1 );
36
hgs
parents: 34
diff changeset
   469
    QVERIFY( mainWnd->mOrientationSet );
hgs
parents: 34
diff changeset
   470
    QCOMPARE( mainWnd->mOrientation, Qt::Vertical );
30
hgs
parents:
diff changeset
   471
36
hgs
parents: 34
diff changeset
   472
	QCOMPARE( mTestView->activateView(TMPXItemId::InvalidId()), 0 );
34
hgs
parents: 30
diff changeset
   473
	QVERIFY( VideoListWidgetData::mActive );
hgs
parents: 30
diff changeset
   474
	QCOMPARE( VideoListWidgetData::mActivateCount, 3 );
hgs
parents: 30
diff changeset
   475
	QCOMPARE( VideoListWidgetData::mDeactivateCount, 1 );
36
hgs
parents: 34
diff changeset
   476
    QVERIFY( mainWnd->mOrientationSet );
hgs
parents: 34
diff changeset
   477
    QCOMPARE( mainWnd->mOrientation, Qt::Vertical );
hgs
parents: 34
diff changeset
   478
    
hgs
parents: 34
diff changeset
   479
    cleanup();
30
hgs
parents:
diff changeset
   480
36
hgs
parents: 34
diff changeset
   481
    // activate view:
hgs
parents: 34
diff changeset
   482
    // -browse service
hgs
parents: 34
diff changeset
   483
    // -captured category
hgs
parents: 34
diff changeset
   484
    TMPXItemId itemId = TMPXItemId::InvalidId();
hgs
parents: 34
diff changeset
   485
    init();
hgs
parents: 34
diff changeset
   486
    VideoListWidgetData::reset();
hgs
parents: 34
diff changeset
   487
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   488
    itemId.iId1 = KVcxMvcCategoryIdCaptured;
hgs
parents: 34
diff changeset
   489
    itemId.iId2 = KVcxMvcMediaTypeCategory;
hgs
parents: 34
diff changeset
   490
    QCOMPARE(mTestView->activateView(itemId), 0);
hgs
parents: 34
diff changeset
   491
    QVERIFY(VideoListWidgetData::mActive);
hgs
parents: 34
diff changeset
   492
    QCOMPARE(VideoListWidgetData::mActivateCount, 1);
hgs
parents: 34
diff changeset
   493
    QCOMPARE(mTestView->mCollectionName, hbTrId("txt_videos_dblist_captured"));
hgs
parents: 34
diff changeset
   494
    QCOMPARE(mTestView->mCurrentList->getLevel(), VideoCollectionCommon::ELevelDefaultColl);
hgs
parents: 34
diff changeset
   495
    QCOMPARE(VideoSortFilterProxyModelData::mLastItemId, itemId);
hgs
parents: 34
diff changeset
   496
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyDateTime);
hgs
parents: 34
diff changeset
   497
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 34
diff changeset
   498
    cleanup();
hgs
parents: 34
diff changeset
   499
    
hgs
parents: 34
diff changeset
   500
    // activate view:
hgs
parents: 34
diff changeset
   501
    // -browse service
hgs
parents: 34
diff changeset
   502
    // -downloaded category
hgs
parents: 34
diff changeset
   503
    init();
hgs
parents: 34
diff changeset
   504
    VideoListWidgetData::reset();
hgs
parents: 34
diff changeset
   505
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   506
    itemId.iId1 = KVcxMvcCategoryIdDownloads;
hgs
parents: 34
diff changeset
   507
    itemId.iId2 = KVcxMvcMediaTypeCategory;
hgs
parents: 34
diff changeset
   508
    QCOMPARE(mTestView->activateView(itemId), 0);
hgs
parents: 34
diff changeset
   509
    QVERIFY(VideoListWidgetData::mActive);
hgs
parents: 34
diff changeset
   510
    QCOMPARE(VideoListWidgetData::mActivateCount, 1);
hgs
parents: 34
diff changeset
   511
    QCOMPARE(mTestView->mCollectionName, hbTrId("txt_videos_dblist_downloaded"));
hgs
parents: 34
diff changeset
   512
    QCOMPARE(mTestView->mCurrentList->getLevel(), VideoCollectionCommon::ELevelDefaultColl);
hgs
parents: 34
diff changeset
   513
    QCOMPARE(VideoSortFilterProxyModelData::mLastItemId, itemId);
hgs
parents: 34
diff changeset
   514
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyDateTime);
hgs
parents: 34
diff changeset
   515
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 34
diff changeset
   516
    cleanup();
hgs
parents: 34
diff changeset
   517
hgs
parents: 34
diff changeset
   518
    // activate view:
hgs
parents: 34
diff changeset
   519
    // -browse service
hgs
parents: 34
diff changeset
   520
    // -other category
hgs
parents: 34
diff changeset
   521
    init();
39
hgs
parents: 38
diff changeset
   522
    videoListWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_VIDEOLISTWIDGET);
36
hgs
parents: 34
diff changeset
   523
    VideoListWidgetData::reset();
hgs
parents: 34
diff changeset
   524
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   525
    itemId.iId1 = KVcxMvcCategoryIdOther;
hgs
parents: 34
diff changeset
   526
    itemId.iId2 = KVcxMvcMediaTypeCategory;
hgs
parents: 34
diff changeset
   527
    QCOMPARE(mTestView->activateView(itemId), 0);
hgs
parents: 34
diff changeset
   528
    QVERIFY(VideoListWidgetData::mActive);
hgs
parents: 34
diff changeset
   529
    QCOMPARE(VideoListWidgetData::mActivateCount, 1);
hgs
parents: 34
diff changeset
   530
    QCOMPARE(mTestView->mCollectionName.length(), 0);
39
hgs
parents: 38
diff changeset
   531
    //QCOMPARE(mTestView->mCurrentList->getLevel(), VideoCollectionCommon::ELevelVideos);
36
hgs
parents: 34
diff changeset
   532
    QCOMPARE(VideoSortFilterProxyModelData::mLastItemId, TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   533
    cleanup();
hgs
parents: 34
diff changeset
   534
hgs
parents: 34
diff changeset
   535
    // activate view:
hgs
parents: 34
diff changeset
   536
    // -browse service
hgs
parents: 34
diff changeset
   537
    // -invalid category but item id is ok
hgs
parents: 34
diff changeset
   538
    init();
hgs
parents: 34
diff changeset
   539
    VideoListWidgetData::reset();
hgs
parents: 34
diff changeset
   540
    VideoSortFilterProxyModelData::reset();
hgs
parents: 34
diff changeset
   541
    itemId.iId1 = 0;
hgs
parents: 34
diff changeset
   542
    itemId.iId2 = KVcxMvcMediaTypeVideo;
hgs
parents: 34
diff changeset
   543
    QCOMPARE(mTestView->activateView(itemId), 0);
hgs
parents: 34
diff changeset
   544
    QVERIFY(VideoListWidgetData::mActive);
hgs
parents: 34
diff changeset
   545
    QCOMPARE(VideoListWidgetData::mActivateCount, 1);
hgs
parents: 34
diff changeset
   546
    QCOMPARE(mTestView->mCollectionName.length(), 0);
39
hgs
parents: 38
diff changeset
   547
//    QCOMPARE(mTestView->mCurrentList->getLevel(), VideoCollectionCommon::ELevelVideos);
36
hgs
parents: 34
diff changeset
   548
    QCOMPARE(VideoSortFilterProxyModelData::mLastItemId, TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   549
    cleanup();
37
hgs
parents: 36
diff changeset
   550
hgs
parents: 36
diff changeset
   551
    // activate view:
hgs
parents: 36
diff changeset
   552
    // -browse service
hgs
parents: 36
diff changeset
   553
    // -captured category
hgs
parents: 36
diff changeset
   554
    // -sort role 0 (default, date & time)
hgs
parents: 36
diff changeset
   555
    init(false);
hgs
parents: 36
diff changeset
   556
    XQServiceUtilXtra *serviceUtilXtra = XQServiceUtilXtra::instance();
hgs
parents: 36
diff changeset
   557
    serviceUtilXtra->setCurrentService(true);
hgs
parents: 36
diff changeset
   558
    VideoServices *videoServices = VideoServices::instance(0);
hgs
parents: 36
diff changeset
   559
    videoServices->mCurrentService = VideoServices::EBrowse;
hgs
parents: 36
diff changeset
   560
    videoServices->mSortRole = 0;
hgs
parents: 36
diff changeset
   561
    VideoListWidgetData::reset();
hgs
parents: 36
diff changeset
   562
    VideoSortFilterProxyModelData::reset();
hgs
parents: 36
diff changeset
   563
    itemId.iId1 = KVcxMvcCategoryIdCaptured;
hgs
parents: 36
diff changeset
   564
    itemId.iId2 = KVcxMvcMediaTypeCategory;
hgs
parents: 36
diff changeset
   565
    QCOMPARE(mTestView->initializeView(), 0);
hgs
parents: 36
diff changeset
   566
    QCOMPARE(mTestView->activateView(itemId), 0);
hgs
parents: 36
diff changeset
   567
    QVERIFY(VideoListWidgetData::mActive);
hgs
parents: 36
diff changeset
   568
    QCOMPARE(VideoListWidgetData::mActivateCount, 1);
hgs
parents: 36
diff changeset
   569
    QCOMPARE(mTestView->mCollectionName, hbTrId("txt_videos_dblist_captured"));
hgs
parents: 36
diff changeset
   570
    QCOMPARE(mTestView->mCurrentList->getLevel(), VideoCollectionCommon::ELevelDefaultColl);
hgs
parents: 36
diff changeset
   571
    QCOMPARE(VideoSortFilterProxyModelData::mLastItemId, itemId);
hgs
parents: 36
diff changeset
   572
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyDateTime);
hgs
parents: 36
diff changeset
   573
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 36
diff changeset
   574
    serviceUtilXtra->decreaseReferenceCount();
hgs
parents: 36
diff changeset
   575
    videoServices->decreaseReferenceCount();
hgs
parents: 36
diff changeset
   576
    cleanup();
hgs
parents: 36
diff changeset
   577
hgs
parents: 36
diff changeset
   578
    // activate view:
hgs
parents: 36
diff changeset
   579
    // -browse service
hgs
parents: 36
diff changeset
   580
    // -captured category
hgs
parents: 36
diff changeset
   581
    // -sort role 1 (date & time)
hgs
parents: 36
diff changeset
   582
    init(false);
hgs
parents: 36
diff changeset
   583
    serviceUtilXtra = XQServiceUtilXtra::instance();
hgs
parents: 36
diff changeset
   584
    serviceUtilXtra->setCurrentService(true);
hgs
parents: 36
diff changeset
   585
    videoServices = VideoServices::instance(0);
hgs
parents: 36
diff changeset
   586
    videoServices->mCurrentService = VideoServices::EBrowse;
hgs
parents: 36
diff changeset
   587
    videoServices->mSortRole = 1;
hgs
parents: 36
diff changeset
   588
    VideoListWidgetData::reset();
hgs
parents: 36
diff changeset
   589
    VideoSortFilterProxyModelData::reset();
hgs
parents: 36
diff changeset
   590
    itemId.iId1 = KVcxMvcCategoryIdCaptured;
hgs
parents: 36
diff changeset
   591
    itemId.iId2 = KVcxMvcMediaTypeCategory;
hgs
parents: 36
diff changeset
   592
    QCOMPARE(mTestView->initializeView(), 0);
hgs
parents: 36
diff changeset
   593
    QCOMPARE(mTestView->activateView(itemId), 0);
hgs
parents: 36
diff changeset
   594
    QVERIFY(VideoListWidgetData::mActive);
hgs
parents: 36
diff changeset
   595
    QCOMPARE(VideoListWidgetData::mActivateCount, 1);
hgs
parents: 36
diff changeset
   596
    QCOMPARE(mTestView->mCollectionName, hbTrId("txt_videos_dblist_captured"));
hgs
parents: 36
diff changeset
   597
    QCOMPARE(mTestView->mCurrentList->getLevel(), VideoCollectionCommon::ELevelDefaultColl);
hgs
parents: 36
diff changeset
   598
    QCOMPARE(VideoSortFilterProxyModelData::mLastItemId, itemId);
hgs
parents: 36
diff changeset
   599
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyDateTime);
hgs
parents: 36
diff changeset
   600
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 36
diff changeset
   601
    cleanup();
hgs
parents: 36
diff changeset
   602
    serviceUtilXtra->decreaseReferenceCount();
hgs
parents: 36
diff changeset
   603
    videoServices->decreaseReferenceCount();
hgs
parents: 36
diff changeset
   604
hgs
parents: 36
diff changeset
   605
    // activate view:
hgs
parents: 36
diff changeset
   606
    // -browse service
hgs
parents: 36
diff changeset
   607
    // -captured category
hgs
parents: 36
diff changeset
   608
    // -sort role 2 (title)
hgs
parents: 36
diff changeset
   609
    init(false);
hgs
parents: 36
diff changeset
   610
    serviceUtilXtra = XQServiceUtilXtra::instance();
hgs
parents: 36
diff changeset
   611
    serviceUtilXtra->setCurrentService(true);
hgs
parents: 36
diff changeset
   612
    videoServices = VideoServices::instance(0);
hgs
parents: 36
diff changeset
   613
    videoServices->mCurrentService = VideoServices::EBrowse;
hgs
parents: 36
diff changeset
   614
    videoServices->mSortRole = 2;
hgs
parents: 36
diff changeset
   615
    VideoListWidgetData::reset();
hgs
parents: 36
diff changeset
   616
    VideoSortFilterProxyModelData::reset();
hgs
parents: 36
diff changeset
   617
    itemId.iId1 = KVcxMvcCategoryIdCaptured;
hgs
parents: 36
diff changeset
   618
    itemId.iId2 = KVcxMvcMediaTypeCategory;
hgs
parents: 36
diff changeset
   619
    QCOMPARE(mTestView->initializeView(), 0);
hgs
parents: 36
diff changeset
   620
    QCOMPARE(mTestView->activateView(itemId), 0);
hgs
parents: 36
diff changeset
   621
    QVERIFY(VideoListWidgetData::mActive);
hgs
parents: 36
diff changeset
   622
    QCOMPARE(VideoListWidgetData::mActivateCount, 1);
hgs
parents: 36
diff changeset
   623
    QCOMPARE(mTestView->mCollectionName, hbTrId("txt_videos_dblist_captured"));
hgs
parents: 36
diff changeset
   624
    QCOMPARE(mTestView->mCurrentList->getLevel(), VideoCollectionCommon::ELevelDefaultColl);
hgs
parents: 36
diff changeset
   625
    QCOMPARE(VideoSortFilterProxyModelData::mLastItemId, itemId);
hgs
parents: 36
diff changeset
   626
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyTitle);
hgs
parents: 36
diff changeset
   627
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 36
diff changeset
   628
    cleanup();
hgs
parents: 36
diff changeset
   629
    serviceUtilXtra->decreaseReferenceCount();
hgs
parents: 36
diff changeset
   630
    videoServices->decreaseReferenceCount();
hgs
parents: 36
diff changeset
   631
hgs
parents: 36
diff changeset
   632
    // activate view:
hgs
parents: 36
diff changeset
   633
    // -browse service
hgs
parents: 36
diff changeset
   634
    // -captured category
hgs
parents: 36
diff changeset
   635
    // -sort role 3 (size) 
hgs
parents: 36
diff changeset
   636
    init(false);
hgs
parents: 36
diff changeset
   637
    serviceUtilXtra = XQServiceUtilXtra::instance();
hgs
parents: 36
diff changeset
   638
    serviceUtilXtra->setCurrentService(true);
hgs
parents: 36
diff changeset
   639
    videoServices = VideoServices::instance(0);
hgs
parents: 36
diff changeset
   640
    videoServices->mCurrentService = VideoServices::EBrowse;
hgs
parents: 36
diff changeset
   641
    videoServices->mSortRole = 3;
hgs
parents: 36
diff changeset
   642
    VideoListWidgetData::reset();
hgs
parents: 36
diff changeset
   643
    VideoSortFilterProxyModelData::reset();
hgs
parents: 36
diff changeset
   644
    itemId.iId1 = KVcxMvcCategoryIdCaptured;
hgs
parents: 36
diff changeset
   645
    itemId.iId2 = KVcxMvcMediaTypeCategory;
hgs
parents: 36
diff changeset
   646
    QCOMPARE(mTestView->initializeView(), 0);
hgs
parents: 36
diff changeset
   647
    QCOMPARE(mTestView->activateView(itemId), 0);
hgs
parents: 36
diff changeset
   648
    QVERIFY(VideoListWidgetData::mActive);
hgs
parents: 36
diff changeset
   649
    QCOMPARE(VideoListWidgetData::mActivateCount, 1);
hgs
parents: 36
diff changeset
   650
    QCOMPARE(mTestView->mCollectionName, hbTrId("txt_videos_dblist_captured"));
hgs
parents: 36
diff changeset
   651
    QCOMPARE(mTestView->mCurrentList->getLevel(), VideoCollectionCommon::ELevelDefaultColl);
hgs
parents: 36
diff changeset
   652
    QCOMPARE(VideoSortFilterProxyModelData::mLastItemId, itemId);
hgs
parents: 36
diff changeset
   653
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeySizeValue);
hgs
parents: 36
diff changeset
   654
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 36
diff changeset
   655
    cleanup();
hgs
parents: 36
diff changeset
   656
    serviceUtilXtra->decreaseReferenceCount();
hgs
parents: 36
diff changeset
   657
    videoServices->decreaseReferenceCount();
30
hgs
parents:
diff changeset
   658
}
hgs
parents:
diff changeset
   659
hgs
parents:
diff changeset
   660
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   661
// Slot: test deactivate view
hgs
parents:
diff changeset
   662
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   663
//
hgs
parents:
diff changeset
   664
void TestListView::testDeactivateView()
hgs
parents:
diff changeset
   665
{
34
hgs
parents: 30
diff changeset
   666
    VideoListWidget* videoListWidget = 0;
hgs
parents: 30
diff changeset
   667
hgs
parents: 30
diff changeset
   668
    init();
30
hgs
parents:
diff changeset
   669
36
hgs
parents: 34
diff changeset
   670
    HbMainWindow *mainWnd = hbInstance->allMainWindows().value(0);
hgs
parents: 34
diff changeset
   671
34
hgs
parents: 30
diff changeset
   672
    videoListWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_VIDEOLISTWIDGET);
hgs
parents: 30
diff changeset
   673
    QVERIFY(videoListWidget);
hgs
parents: 30
diff changeset
   674
    mTestView->mCurrentList = 0;
36
hgs
parents: 34
diff changeset
   675
    mainWnd->mOrientationSet = true;
30
hgs
parents:
diff changeset
   676
hgs
parents:
diff changeset
   677
	mTestView->deactivateView();
hgs
parents:
diff changeset
   678
	QVERIFY( mUiLoader->findWidget<HbMenu>(DOCML_NAME_OPTIONS_MENU)->isVisible() == false );
36
hgs
parents: 34
diff changeset
   679
	QCOMPARE( VideoListWidgetData::mDeactivateCount, 0 );
hgs
parents: 34
diff changeset
   680
    QVERIFY( mainWnd->mOrientationSet == false );
hgs
parents: 34
diff changeset
   681
    
hgs
parents: 34
diff changeset
   682
    mTestView->mCurrentList = videoListWidget;
hgs
parents: 34
diff changeset
   683
    mainWnd->mOrientationSet = true;
hgs
parents: 34
diff changeset
   684
    
hgs
parents: 34
diff changeset
   685
	mTestView->deactivateView();
hgs
parents: 34
diff changeset
   686
	QVERIFY( mUiLoader->findWidget<HbMenu>(DOCML_NAME_OPTIONS_MENU)->isVisible() == false );
34
hgs
parents: 30
diff changeset
   687
	QCOMPARE( VideoListWidgetData::mDeactivateCount, 1 );
36
hgs
parents: 34
diff changeset
   688
    QVERIFY( mainWnd->mOrientationSet == false );
30
hgs
parents:
diff changeset
   689
34
hgs
parents: 30
diff changeset
   690
	VideoListWidgetData::mActivateReturnValue =	0;
36
hgs
parents: 34
diff changeset
   691
    mainWnd->mOrientationSet = true;
hgs
parents: 34
diff changeset
   692
	mTestView->activateView(TMPXItemId::InvalidId());
30
hgs
parents:
diff changeset
   693
	mTestView->deactivateView();
hgs
parents:
diff changeset
   694
	QVERIFY( mUiLoader->findWidget<HbMenu>(DOCML_NAME_OPTIONS_MENU)->isVisible() == false );
34
hgs
parents: 30
diff changeset
   695
	QCOMPARE( VideoListWidgetData::mActivateCount, 1 );
hgs
parents: 30
diff changeset
   696
	QCOMPARE( VideoListWidgetData::mDeactivateCount, 2 );
36
hgs
parents: 34
diff changeset
   697
    QVERIFY( mainWnd->mOrientationSet == false );
30
hgs
parents:
diff changeset
   698
hgs
parents:
diff changeset
   699
	cleanup();
hgs
parents:
diff changeset
   700
}
hgs
parents:
diff changeset
   701
hgs
parents:
diff changeset
   702
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   703
// testBack
hgs
parents:
diff changeset
   704
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   705
//
hgs
parents:
diff changeset
   706
void TestListView::testBack()
hgs
parents:
diff changeset
   707
{
hgs
parents:
diff changeset
   708
	init();
hgs
parents:
diff changeset
   709
hgs
parents:
diff changeset
   710
	mTestView->back();
hgs
parents:
diff changeset
   711
hgs
parents:
diff changeset
   712
	cleanup();
hgs
parents:
diff changeset
   713
}
hgs
parents:
diff changeset
   714
hgs
parents:
diff changeset
   715
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   716
// Slot: test open all videos slot
hgs
parents:
diff changeset
   717
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   718
//
hgs
parents:
diff changeset
   719
void TestListView::testOpenAllVideosViewSlot()
hgs
parents:
diff changeset
   720
{
34
hgs
parents: 30
diff changeset
   721
    VideoListWidget *videoListWidget = 0;
hgs
parents: 30
diff changeset
   722
    HbGroupBox *subLabel = 0;
hgs
parents: 30
diff changeset
   723
    
30
hgs
parents:
diff changeset
   724
	init();
36
hgs
parents: 34
diff changeset
   725
	mTestView->activateView(TMPXItemId::InvalidId());
34
hgs
parents: 30
diff changeset
   726
	
hgs
parents: 30
diff changeset
   727
    videoListWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_VIDEOLISTWIDGET);
36
hgs
parents: 34
diff changeset
   728
    QVERIFY( videoListWidget );
30
hgs
parents:
diff changeset
   729
hgs
parents:
diff changeset
   730
	QList<QAction*>	actions	= mTestView->mToolbarViewsActionGroup->actions();
hgs
parents:
diff changeset
   731
	HbAction* action = static_cast<HbAction*>(actions.at(0));
hgs
parents:
diff changeset
   732
	
hgs
parents:
diff changeset
   733
	// action wont emit	if it's	already	checked.
hgs
parents:
diff changeset
   734
	action->setChecked(false);
hgs
parents:
diff changeset
   735
	action->trigger();
36
hgs
parents: 34
diff changeset
   736
	QCOMPARE( mTestView->mCurrentList, videoListWidget );
30
hgs
parents:
diff changeset
   737
36
hgs
parents: 34
diff changeset
   738
	mTestView->mCurrentList = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_COLLECTIONWIDGET);
hgs
parents: 34
diff changeset
   739
	QVERIFY( mTestView->mCurrentList );
hgs
parents: 34
diff changeset
   740
    VideoListWidgetData::mActivateCount = 0;
hgs
parents: 34
diff changeset
   741
	videoListWidget->mCurrentLevel = VideoCollectionCommon::ELevelCategory;
30
hgs
parents:
diff changeset
   742
    
hgs
parents:
diff changeset
   743
    // action wont emit	if it's	already	checked.
hgs
parents:
diff changeset
   744
	action->setChecked(false);
hgs
parents:
diff changeset
   745
	action->trigger();
36
hgs
parents: 34
diff changeset
   746
    QCOMPARE( mTestView->mCurrentList, videoListWidget );
34
hgs
parents: 30
diff changeset
   747
    QCOMPARE( mTestView->mCurrentList->mCurrentLevel, VideoCollectionCommon::ELevelVideos );
hgs
parents: 30
diff changeset
   748
    QVERIFY( VideoListWidgetData::mActive == true );
hgs
parents: 30
diff changeset
   749
	QCOMPARE( VideoListWidgetData::mActivateCount, 1 );
36
hgs
parents: 34
diff changeset
   750
	QCOMPARE( VideoListWidgetData::mDeactivateCount, 1 );
30
hgs
parents:
diff changeset
   751
hgs
parents:
diff changeset
   752
	cleanup();
hgs
parents:
diff changeset
   753
}
hgs
parents:
diff changeset
   754
hgs
parents:
diff changeset
   755
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   756
// Slot: test open collections view	slot
hgs
parents:
diff changeset
   757
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   758
//
hgs
parents:
diff changeset
   759
void TestListView::testOpenCollectionViewSlot()
hgs
parents:
diff changeset
   760
{
34
hgs
parents: 30
diff changeset
   761
    VideoListWidget *collectionWidget = 0;
hgs
parents: 30
diff changeset
   762
    HbGroupBox *subLabel = 0;
hgs
parents: 30
diff changeset
   763
hgs
parents: 30
diff changeset
   764
    init();
36
hgs
parents: 34
diff changeset
   765
    mTestView->activateView(TMPXItemId::InvalidId());
30
hgs
parents:
diff changeset
   766
hgs
parents:
diff changeset
   767
	QList<QAction*>	actions	= mTestView->mToolbarViewsActionGroup->actions();
hgs
parents:
diff changeset
   768
	HbAction* action = static_cast<HbAction*>(actions.at(1));
hgs
parents:
diff changeset
   769
34
hgs
parents: 30
diff changeset
   770
	collectionWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_COLLECTIONWIDGET);
hgs
parents: 30
diff changeset
   771
    QVERIFY(collectionWidget);
30
hgs
parents:
diff changeset
   772
hgs
parents:
diff changeset
   773
	// action wont emit	if it's	already	checked.
hgs
parents:
diff changeset
   774
	action->setChecked(false);
hgs
parents:
diff changeset
   775
	action->trigger();
34
hgs
parents: 30
diff changeset
   776
    QCOMPARE(mTestView->mCurrentList, collectionWidget);
30
hgs
parents:
diff changeset
   777
36
hgs
parents: 34
diff changeset
   778
    mTestView->mCurrentList = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_VIDEOLISTWIDGET);
hgs
parents: 34
diff changeset
   779
    QVERIFY( mTestView->mCurrentList );
34
hgs
parents: 30
diff changeset
   780
    VideoListWidgetData::mActivateCount = 0;
36
hgs
parents: 34
diff changeset
   781
    VideoListWidgetData::mDeactivateCount = 0;
hgs
parents: 34
diff changeset
   782
    collectionWidget->mCurrentLevel = VideoCollectionCommon::ELevelVideos;
30
hgs
parents:
diff changeset
   783
    
hgs
parents:
diff changeset
   784
    // action wont emit	if it's	already	checked.
hgs
parents:
diff changeset
   785
	action->setChecked(false);
hgs
parents:
diff changeset
   786
	action->trigger();
36
hgs
parents: 34
diff changeset
   787
    QCOMPARE(mTestView->mCurrentList, collectionWidget);
34
hgs
parents: 30
diff changeset
   788
    QCOMPARE( mTestView->mCurrentList->mCurrentLevel, VideoCollectionCommon::ELevelCategory );
hgs
parents: 30
diff changeset
   789
    QVERIFY( VideoListWidgetData::mActive == true );
hgs
parents: 30
diff changeset
   790
    QCOMPARE( VideoListWidgetData::mActivateCount, 1 );
36
hgs
parents: 34
diff changeset
   791
    QCOMPARE( VideoListWidgetData::mDeactivateCount, 1 );
30
hgs
parents:
diff changeset
   792
hgs
parents:
diff changeset
   793
	cleanup();
hgs
parents:
diff changeset
   794
}
hgs
parents:
diff changeset
   795
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   796
// Slot: test open services	view slot
hgs
parents:
diff changeset
   797
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   798
//
hgs
parents:
diff changeset
   799
void TestListView::testOpenServicesViewSlot()
hgs
parents:
diff changeset
   800
{
36
hgs
parents: 34
diff changeset
   801
    QFAIL("Feature not yet implemented!");
30
hgs
parents:
diff changeset
   802
}
hgs
parents:
diff changeset
   803
hgs
parents:
diff changeset
   804
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   805
// testStartSorting
hgs
parents:
diff changeset
   806
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   807
//
hgs
parents:
diff changeset
   808
void TestListView::testStartSortingSlot()
hgs
parents:
diff changeset
   809
{
hgs
parents:
diff changeset
   810
	HbAction *action(0);
36
hgs
parents: 34
diff changeset
   811
	HbMenu *sortMenu(0);
hgs
parents: 34
diff changeset
   812
	HbAction *sortMenuAction = new HbAction("test");
30
hgs
parents:
diff changeset
   813
hgs
parents:
diff changeset
   814
	// View	is not initialized.
hgs
parents:
diff changeset
   815
	init(false);
hgs
parents:
diff changeset
   816
	connect(this, SIGNAL(testSignal(int)), mTestView, SLOT(startSorting()));
hgs
parents:
diff changeset
   817
	emit testSignal(0);
34
hgs
parents: 30
diff changeset
   818
    QCOMPARE(VideoSortFilterProxyModelData::mDoSortingCallCount, 0);
hgs
parents: 30
diff changeset
   819
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, -1);
30
hgs
parents:
diff changeset
   820
	cleanup();
hgs
parents:
diff changeset
   821
36
hgs
parents: 34
diff changeset
   822
    // View is not activated.
hgs
parents: 34
diff changeset
   823
    init();
hgs
parents: 34
diff changeset
   824
    connect(this, SIGNAL(testSignal(int)), mTestView, SLOT(startSorting()));
hgs
parents: 34
diff changeset
   825
    emit testSignal(0);
hgs
parents: 34
diff changeset
   826
    QCOMPARE(VideoSortFilterProxyModelData::mDoSortingCallCount, 0);
hgs
parents: 34
diff changeset
   827
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, -1);
hgs
parents: 34
diff changeset
   828
    cleanup();
hgs
parents: 34
diff changeset
   829
hgs
parents: 34
diff changeset
   830
    // Active action is not sort by.
hgs
parents: 34
diff changeset
   831
    init();
hgs
parents: 34
diff changeset
   832
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   833
    action = mUiLoader->findObject<HbAction>(DOCML_NAME_DELETE_MULTIPLE);
hgs
parents: 34
diff changeset
   834
    QVERIFY(action != 0);
hgs
parents: 34
diff changeset
   835
    mUiLoader->findWidget<HbMenu>(DOCML_NAME_OPTIONS_MENU)->setActiveAction(action);
hgs
parents: 34
diff changeset
   836
    sortMenu = mUiLoader->findWidget<HbMenu>(DOCML_NAME_SORT_MENU);
hgs
parents: 34
diff changeset
   837
    sortMenuAction->setMenu(sortMenu);
hgs
parents: 34
diff changeset
   838
    HbMenuData::mMenuAction = sortMenuAction;
hgs
parents: 34
diff changeset
   839
    connect(this, SIGNAL(testSignal(int)), mTestView, SLOT(startSorting()));
hgs
parents: 34
diff changeset
   840
    emit testSignal(0);
hgs
parents: 34
diff changeset
   841
    QCOMPARE(VideoSortFilterProxyModelData::mDoSortingCallCount, 0);
hgs
parents: 34
diff changeset
   842
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, -1);
hgs
parents: 34
diff changeset
   843
    cleanup();
hgs
parents: 34
diff changeset
   844
hgs
parents: 34
diff changeset
   845
	// Good	cases.
30
hgs
parents:
diff changeset
   846
	init();
36
hgs
parents: 34
diff changeset
   847
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   848
    sortMenu = mUiLoader->findWidget<HbMenu>(DOCML_NAME_SORT_MENU);
hgs
parents: 34
diff changeset
   849
    sortMenuAction->setMenu(sortMenu);
hgs
parents: 34
diff changeset
   850
    HbMenuData::mMenuAction = sortMenuAction;
hgs
parents: 34
diff changeset
   851
    VideoSortFilterProxyModel& model = mTestView->mCurrentList->getModel();
30
hgs
parents:
diff changeset
   852
	QVERIFY(action != 0);
36
hgs
parents: 34
diff changeset
   853
	mUiLoader->findWidget<HbMenu>(DOCML_NAME_OPTIONS_MENU)->setActiveAction(sortMenuAction);
hgs
parents: 34
diff changeset
   854
	HbAction* sortAction = mUiLoader->findObject<HbAction>(DOCML_NAME_SORT_BY_NAME);
30
hgs
parents:
diff changeset
   855
	QVERIFY(sortAction != 0);
36
hgs
parents: 34
diff changeset
   856
	sortMenu->setActiveAction(sortAction);
hgs
parents: 34
diff changeset
   857
	model.setSortRole(1);
hgs
parents: 34
diff changeset
   858
	connect(this, SIGNAL(testObjectReadySignal(QObject*, const QString)), mTestView, SLOT(objectReadySlot(QObject*, const QString)));
hgs
parents: 34
diff changeset
   859
	emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_DATE), DOCML_NAME_SORT_BY_DATE);
hgs
parents: 34
diff changeset
   860
    emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_NAME), DOCML_NAME_SORT_BY_NAME);
hgs
parents: 34
diff changeset
   861
    emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_NUMBER_OF_ITEMS), DOCML_NAME_SORT_BY_NUMBER_OF_ITEMS);
hgs
parents: 34
diff changeset
   862
    emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_SIZE), DOCML_NAME_SORT_BY_SIZE);
hgs
parents: 34
diff changeset
   863
    disconnect(this, SIGNAL(testObjectReadySignal(QObject*, const QString)), mTestView, SLOT(objectReadySlot(QObject*, const QString)));
30
hgs
parents:
diff changeset
   864
hgs
parents:
diff changeset
   865
	connect(this, SIGNAL(testSignal(int)), mTestView, SLOT(startSorting()));
hgs
parents:
diff changeset
   866
	emit testSignal(0);
34
hgs
parents: 30
diff changeset
   867
	QCOMPARE(VideoSortFilterProxyModelData::mDoSortingCallCount, 1);
36
hgs
parents: 34
diff changeset
   868
	QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyTitle);
34
hgs
parents: 30
diff changeset
   869
	QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 30
diff changeset
   870
    QVERIFY(VideoSortFilterProxyModelData::mSortAsync);
30
hgs
parents:
diff changeset
   871
hgs
parents:
diff changeset
   872
    // emit test signal again, with same parameters. Sorting should be switched to
hgs
parents:
diff changeset
   873
    // descending order.
hgs
parents:
diff changeset
   874
    emit testSignal(0);
34
hgs
parents: 30
diff changeset
   875
    QCOMPARE(VideoSortFilterProxyModelData::mDoSortingCallCount, 2);
36
hgs
parents: 34
diff changeset
   876
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyTitle);
34
hgs
parents: 30
diff changeset
   877
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::DescendingOrder);
hgs
parents: 30
diff changeset
   878
    QVERIFY(VideoSortFilterProxyModelData::mSortAsync);
30
hgs
parents:
diff changeset
   879
hgs
parents:
diff changeset
   880
    // on third emit, sorting should be switched back to ascending
hgs
parents:
diff changeset
   881
    emit testSignal(0);
34
hgs
parents: 30
diff changeset
   882
    QCOMPARE(VideoSortFilterProxyModelData::mDoSortingCallCount, 3);
36
hgs
parents: 34
diff changeset
   883
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyTitle);
34
hgs
parents: 30
diff changeset
   884
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 30
diff changeset
   885
    QVERIFY(VideoSortFilterProxyModelData::mSortAsync);
30
hgs
parents:
diff changeset
   886
hgs
parents:
diff changeset
   887
    // test that after changing the sort role, the order is also switched to ascending.
36
hgs
parents: 34
diff changeset
   888
    model.doSorting(model.sortRole(), Qt::DescendingOrder);
hgs
parents: 34
diff changeset
   889
    sortAction = mUiLoader->findObject<HbAction>(DOCML_NAME_SORT_BY_DATE);
30
hgs
parents:
diff changeset
   890
    QVERIFY(sortAction != 0);
36
hgs
parents: 34
diff changeset
   891
    sortMenu->setActiveAction(sortAction);
30
hgs
parents:
diff changeset
   892
hgs
parents:
diff changeset
   893
    emit testSignal(0);
36
hgs
parents: 34
diff changeset
   894
    QCOMPARE(VideoSortFilterProxyModelData::mDoSortingCallCount, 5);
34
hgs
parents: 30
diff changeset
   895
    QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyDateTime);
hgs
parents: 30
diff changeset
   896
    QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
hgs
parents: 30
diff changeset
   897
    QVERIFY(VideoSortFilterProxyModelData::mSortAsync);
37
hgs
parents: 36
diff changeset
   898
	cleanup();
hgs
parents: 36
diff changeset
   899
	
hgs
parents: 36
diff changeset
   900
	// start sorting slot:
hgs
parents: 36
diff changeset
   901
	// -is service
hgs
parents: 36
diff changeset
   902
	init(false);
hgs
parents: 36
diff changeset
   903
	connect(this, SIGNAL(testSignal(int)), mTestView, SLOT(startSorting()));
hgs
parents: 36
diff changeset
   904
    sortMenu = mUiLoader->findWidget<HbMenu>(DOCML_NAME_SORT_MENU);
hgs
parents: 36
diff changeset
   905
    sortMenuAction->setMenu(sortMenu);
hgs
parents: 36
diff changeset
   906
    HbMenuData::mMenuAction = sortMenuAction;
hgs
parents: 36
diff changeset
   907
    mUiLoader->findWidget<HbMenu>(DOCML_NAME_OPTIONS_MENU)->setActiveAction(sortMenuAction);
hgs
parents: 36
diff changeset
   908
    sortAction = mUiLoader->findObject<HbAction>(DOCML_NAME_SORT_BY_NAME);
hgs
parents: 36
diff changeset
   909
    QVERIFY(sortAction != 0);
hgs
parents: 36
diff changeset
   910
    sortMenu->setActiveAction(sortAction);
hgs
parents: 36
diff changeset
   911
	XQServiceUtilXtra *serviceUtilXtra = XQServiceUtilXtra::instance();
hgs
parents: 36
diff changeset
   912
	serviceUtilXtra->setCurrentService(true);
hgs
parents: 36
diff changeset
   913
	QCOMPARE(mTestView->initializeView(), 0);
hgs
parents: 36
diff changeset
   914
	QCOMPARE(mTestView->activateView(TMPXItemId::InvalidId()), 0);
hgs
parents: 36
diff changeset
   915
	int sortRole = VideoCollectionViewUtilsData::mVideoSortRole;
hgs
parents: 36
diff changeset
   916
	emit testSignal(0);
hgs
parents: 36
diff changeset
   917
	QCOMPARE(sortRole, VideoCollectionViewUtilsData::mVideoSortRole);
hgs
parents: 36
diff changeset
   918
	serviceUtilXtra->decreaseReferenceCount();
30
hgs
parents:
diff changeset
   919
	cleanup();
hgs
parents:
diff changeset
   920
}
hgs
parents:
diff changeset
   921
hgs
parents:
diff changeset
   922
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   923
// Slot: test orientation related slots
hgs
parents:
diff changeset
   924
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   925
//
hgs
parents:
diff changeset
   926
void TestListView::testOrientationSlots()
hgs
parents:
diff changeset
   927
{
hgs
parents:
diff changeset
   928
	init();
hgs
parents:
diff changeset
   929
hgs
parents:
diff changeset
   930
    HbMainWindow *mainWnd = hbInstance->allMainWindows().value(0);
hgs
parents:
diff changeset
   931
	mainWnd->addView(mTestView);
hgs
parents:
diff changeset
   932
	mainWnd->setOrientation(Qt::Horizontal);
hgs
parents:
diff changeset
   933
	mainWnd->setOrientation(Qt::Vertical);
hgs
parents:
diff changeset
   934
	
hgs
parents:
diff changeset
   935
	cleanup();
hgs
parents:
diff changeset
   936
}
hgs
parents:
diff changeset
   937
hgs
parents:
diff changeset
   938
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   939
// testModelReadySlot
hgs
parents:
diff changeset
   940
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   941
//
hgs
parents:
diff changeset
   942
void TestListView::testModelReadySlot()
hgs
parents:
diff changeset
   943
{
hgs
parents:
diff changeset
   944
    init();
hgs
parents:
diff changeset
   945
    mTestView->mModelReady = false;
38
hgs
parents: 37
diff changeset
   946
    mTestView->mViewReady = false;
30
hgs
parents:
diff changeset
   947
    connect( this, SIGNAL(testSignal()), mTestView, SLOT(modelReadySlot()) );
38
hgs
parents: 37
diff changeset
   948
    QSignalSpy spy(mTestView, SIGNAL(viewReady()));
30
hgs
parents:
diff changeset
   949
    emit testSignal();
hgs
parents:
diff changeset
   950
    QVERIFY(mTestView->mModelReady);
38
hgs
parents: 37
diff changeset
   951
    QVERIFY(mTestView->mViewReady);
hgs
parents: 37
diff changeset
   952
    QCOMPARE(spy.count(), 1);
hgs
parents: 37
diff changeset
   953
    spy.clear();
hgs
parents: 37
diff changeset
   954
    
hgs
parents: 37
diff changeset
   955
    emit testSignal();
hgs
parents: 37
diff changeset
   956
    QCOMPARE(spy.count(), 0);
hgs
parents: 37
diff changeset
   957
    
30
hgs
parents:
diff changeset
   958
    cleanup();
hgs
parents:
diff changeset
   959
}
hgs
parents:
diff changeset
   960
hgs
parents:
diff changeset
   961
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   962
// testDeleteItemsSlot
hgs
parents:
diff changeset
   963
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   964
//
hgs
parents:
diff changeset
   965
void TestListView::testDeleteItemsSlot()
hgs
parents:
diff changeset
   966
{
hgs
parents:
diff changeset
   967
    init();
hgs
parents:
diff changeset
   968
    connect( this, SIGNAL(testSignal()), mTestView, SLOT(deleteItemsSlot()) );
hgs
parents:
diff changeset
   969
    ////////////
36
hgs
parents: 34
diff changeset
   970
    // no current list
30
hgs
parents:
diff changeset
   971
    ////////////
39
hgs
parents: 38
diff changeset
   972
    VideoListWidget *backup = mTestView->mCurrentList;
hgs
parents: 38
diff changeset
   973
    mTestView->mCurrentList = 0;
30
hgs
parents:
diff changeset
   974
    emit testSignal();
36
hgs
parents: 34
diff changeset
   975
    QCOMPARE(VideoListSelectionDialogData::mMultiSelectionLaunchCount, 0);
39
hgs
parents: 38
diff changeset
   976
    mTestView->mCurrentList = backup;
36
hgs
parents: 34
diff changeset
   977
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
   978
    
30
hgs
parents:
diff changeset
   979
    ////////////
hgs
parents:
diff changeset
   980
    // dialog loading fails
hgs
parents:
diff changeset
   981
    ////////////
34
hgs
parents: 30
diff changeset
   982
    VideoCollectionUiLoaderData::mFailDialogLoad = true;
30
hgs
parents:
diff changeset
   983
    emit testSignal();
36
hgs
parents: 34
diff changeset
   984
    QCOMPARE(VideoListSelectionDialogData::mMultiSelectionLaunchCount, 0);
30
hgs
parents:
diff changeset
   985
hgs
parents:
diff changeset
   986
    ////////////
hgs
parents:
diff changeset
   987
    // selection dialog exists
hgs
parents:
diff changeset
   988
    ////////////
36
hgs
parents: 34
diff changeset
   989
    VideoCollectionUiLoaderData::mFailDialogLoad = false;
hgs
parents: 34
diff changeset
   990
    VideoSortFilterProxyModelData::mOpenedItemId = TMPXItemId(2, 3);
30
hgs
parents:
diff changeset
   991
    emit testSignal();
36
hgs
parents: 34
diff changeset
   992
    QCOMPARE(VideoListSelectionDialogData::mMultiSelectionLaunchCount, 1);
hgs
parents: 34
diff changeset
   993
    QCOMPARE(VideoListSelectionDialogData::mSelectionType, (int)VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
   994
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == VideoSortFilterProxyModelData::mOpenedItemId);
hgs
parents: 34
diff changeset
   995
    
30
hgs
parents:
diff changeset
   996
    ////////////
36
hgs
parents: 34
diff changeset
   997
    // test second successful activation.
30
hgs
parents:
diff changeset
   998
    ////////////
36
hgs
parents: 34
diff changeset
   999
    VideoSortFilterProxyModelData::mOpenedItemId = TMPXItemId(3, 2);
30
hgs
parents:
diff changeset
  1000
    emit testSignal();
36
hgs
parents: 34
diff changeset
  1001
    QCOMPARE(VideoListSelectionDialogData::mMultiSelectionLaunchCount, 2);
hgs
parents: 34
diff changeset
  1002
    QCOMPARE(VideoListSelectionDialogData::mSelectionType, (int)VideoListSelectionDialog::EDeleteVideos);
hgs
parents: 34
diff changeset
  1003
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == VideoSortFilterProxyModelData::mOpenedItemId);
30
hgs
parents:
diff changeset
  1004
hgs
parents:
diff changeset
  1005
    cleanup();
hgs
parents:
diff changeset
  1006
}
hgs
parents:
diff changeset
  1007
hgs
parents:
diff changeset
  1008
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1009
// testAboutToShowMainMenuSlot
hgs
parents:
diff changeset
  1010
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1011
//
hgs
parents:
diff changeset
  1012
void TestListView::testAboutToShowMainMenuSlot()
hgs
parents:
diff changeset
  1013
{
36
hgs
parents: 34
diff changeset
  1014
    XQServiceUtilXtra *serviceUtil = XQServiceUtilXtra::instance();
hgs
parents: 34
diff changeset
  1015
    VideoServices *videoServices = VideoServices::instance();
30
hgs
parents:
diff changeset
  1016
36
hgs
parents: 34
diff changeset
  1017
    // View	is not initialized.
30
hgs
parents:
diff changeset
  1018
	init(false);
hgs
parents:
diff changeset
  1019
	connect( this, SIGNAL(testSignal(int)),	mTestView, SLOT(aboutToShowMainMenuSlot()) );
hgs
parents:
diff changeset
  1020
	emit testSignal(0);
hgs
parents:
diff changeset
  1021
	cleanup();
hgs
parents:
diff changeset
  1022
hgs
parents:
diff changeset
  1023
	HbAction *action(0);
hgs
parents:
diff changeset
  1024
hgs
parents:
diff changeset
  1025
	// Collections is triggered	from toolbar.
hgs
parents:
diff changeset
  1026
	init();
36
hgs
parents: 34
diff changeset
  1027
	connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
hgs
parents: 34
diff changeset
  1028
	mTestView->activateView(TMPXItemId::InvalidId());
34
hgs
parents: 30
diff changeset
  1029
	setRowCount(1);
30
hgs
parents:
diff changeset
  1030
	action = mTestView->mToolbarActions[VideoListView::ETBActionCollections];
hgs
parents:
diff changeset
  1031
	QVERIFY(action != 0);
hgs
parents:
diff changeset
  1032
	action->setChecked(false);
hgs
parents:
diff changeset
  1033
	action->trigger();
36
hgs
parents: 34
diff changeset
  1034
	emit testSignal();
30
hgs
parents:
diff changeset
  1035
	int visible = visibleMenuActions();
36
hgs
parents: 34
diff changeset
  1036
	QCOMPARE(visible, 3);
30
hgs
parents:
diff changeset
  1037
	cleanup();
hgs
parents:
diff changeset
  1038
hgs
parents:
diff changeset
  1039
	// All videos is triggered from	toolbar.
hgs
parents:
diff changeset
  1040
	init();
36
hgs
parents: 34
diff changeset
  1041
    connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
hgs
parents: 34
diff changeset
  1042
    mTestView->activateView(TMPXItemId::InvalidId());
34
hgs
parents: 30
diff changeset
  1043
    setRowCount(1);
30
hgs
parents:
diff changeset
  1044
	action = mTestView->mToolbarActions[VideoListView::ETBActionAllVideos];
hgs
parents:
diff changeset
  1045
	QVERIFY(action != 0);
hgs
parents:
diff changeset
  1046
	action->setChecked(false);
hgs
parents:
diff changeset
  1047
	action->trigger();
36
hgs
parents: 34
diff changeset
  1048
    emit testSignal();
30
hgs
parents:
diff changeset
  1049
	visible = visibleMenuActions();
36
hgs
parents: 34
diff changeset
  1050
	QCOMPARE(visible, 5);
30
hgs
parents:
diff changeset
  1051
	cleanup();
hgs
parents:
diff changeset
  1052
hgs
parents:
diff changeset
  1053
	// Add videos action is	visible.
hgs
parents:
diff changeset
  1054
	init();
36
hgs
parents: 34
diff changeset
  1055
    connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
hgs
parents: 34
diff changeset
  1056
    mTestView->activateView(TMPXItemId::InvalidId());
30
hgs
parents:
diff changeset
  1057
	mTestView->toolBar()->clearActions();
hgs
parents:
diff changeset
  1058
	mTestView->toolBar()->addActions( mTestView->mToolbarCollectionActionGroup->actions() );
34
hgs
parents: 30
diff changeset
  1059
	setRowCount(1);
30
hgs
parents:
diff changeset
  1060
	QVERIFY(action != 0);
36
hgs
parents: 34
diff changeset
  1061
    emit testSignal();
30
hgs
parents:
diff changeset
  1062
	visible = visibleMenuActions();
36
hgs
parents: 34
diff changeset
  1063
	QCOMPARE(visible, 4);
30
hgs
parents:
diff changeset
  1064
	cleanup();
hgs
parents:
diff changeset
  1065
hgs
parents:
diff changeset
  1066
	// Model has no	items.
hgs
parents:
diff changeset
  1067
	init();
36
hgs
parents: 34
diff changeset
  1068
    connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
hgs
parents: 34
diff changeset
  1069
    mTestView->activateView(TMPXItemId::InvalidId());
34
hgs
parents: 30
diff changeset
  1070
	setRowCount(0);
36
hgs
parents: 34
diff changeset
  1071
    emit testSignal();
30
hgs
parents:
diff changeset
  1072
	visible = visibleMenuActions();
36
hgs
parents: 34
diff changeset
  1073
	QCOMPARE(visible, 0);
30
hgs
parents:
diff changeset
  1074
	cleanup();
hgs
parents:
diff changeset
  1075
hgs
parents:
diff changeset
  1076
	// Toolbar action group	is null
hgs
parents:
diff changeset
  1077
	init();
36
hgs
parents: 34
diff changeset
  1078
    connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
hgs
parents: 34
diff changeset
  1079
    mTestView->activateView(TMPXItemId::InvalidId());
34
hgs
parents: 30
diff changeset
  1080
	setRowCount(1);
30
hgs
parents:
diff changeset
  1081
	QActionGroup* actionGroup =	mTestView->mToolbarViewsActionGroup;
hgs
parents:
diff changeset
  1082
	mTestView->mToolbarViewsActionGroup = NULL;
36
hgs
parents: 34
diff changeset
  1083
    emit testSignal();
30
hgs
parents:
diff changeset
  1084
	mTestView->mToolbarViewsActionGroup = actionGroup;
hgs
parents:
diff changeset
  1085
	cleanup();
36
hgs
parents: 34
diff changeset
  1086
	
hgs
parents: 34
diff changeset
  1087
	// about to show main menu:
hgs
parents: 34
diff changeset
  1088
	// -is service
hgs
parents: 34
diff changeset
  1089
	// -current service is browse
hgs
parents: 34
diff changeset
  1090
	// -no current list
hgs
parents: 34
diff changeset
  1091
    serviceUtil->setCurrentService(true);
hgs
parents: 34
diff changeset
  1092
    videoServices->mCurrentService = VideoServices::EBrowse;
hgs
parents: 34
diff changeset
  1093
    init(true);
hgs
parents: 34
diff changeset
  1094
    connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
hgs
parents: 34
diff changeset
  1095
    emit testSignal();
hgs
parents: 34
diff changeset
  1096
    visible = visibleMenuActions();
hgs
parents: 34
diff changeset
  1097
    QCOMPARE(visible, 0);
30
hgs
parents:
diff changeset
  1098
    cleanup();
hgs
parents:
diff changeset
  1099
36
hgs
parents: 34
diff changeset
  1100
    // about to show main menu:
hgs
parents: 34
diff changeset
  1101
    // -is service
hgs
parents: 34
diff changeset
  1102
    // -current service is browse
hgs
parents: 34
diff changeset
  1103
    // -no items
hgs
parents: 34
diff changeset
  1104
    serviceUtil->setCurrentService(true);
hgs
parents: 34
diff changeset
  1105
    videoServices->mCurrentService = VideoServices::EBrowse;
hgs
parents: 34
diff changeset
  1106
    init(true);
hgs
parents: 34
diff changeset
  1107
    connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
hgs
parents: 34
diff changeset
  1108
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1109
    emit testSignal();
hgs
parents: 34
diff changeset
  1110
    visible = visibleMenuActions();
hgs
parents: 34
diff changeset
  1111
    QCOMPARE(visible, 0);
30
hgs
parents:
diff changeset
  1112
    cleanup();
hgs
parents:
diff changeset
  1113
36
hgs
parents: 34
diff changeset
  1114
    // about to show main menu:
hgs
parents: 34
diff changeset
  1115
    // -is service
hgs
parents: 34
diff changeset
  1116
    // -current service is browse
hgs
parents: 34
diff changeset
  1117
    serviceUtil->setCurrentService(true);
hgs
parents: 34
diff changeset
  1118
    videoServices->mCurrentService = VideoServices::EBrowse;
hgs
parents: 34
diff changeset
  1119
	init(true);
hgs
parents: 34
diff changeset
  1120
	connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
hgs
parents: 34
diff changeset
  1121
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1122
    setRowCount(3, &mTestView->mCurrentList->getModel());
hgs
parents: 34
diff changeset
  1123
    emit testSignal();
hgs
parents: 34
diff changeset
  1124
    QVERIFY(isActionVisible(DOCML_NAME_DELETE_MULTIPLE));
hgs
parents: 34
diff changeset
  1125
    QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_DATE));
hgs
parents: 34
diff changeset
  1126
    QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_NAME));
hgs
parents: 34
diff changeset
  1127
    QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_SIZE));
hgs
parents: 34
diff changeset
  1128
	cleanup();
hgs
parents: 34
diff changeset
  1129
hgs
parents: 34
diff changeset
  1130
	// final cleanup
hgs
parents: 34
diff changeset
  1131
    serviceUtil->decreaseReferenceCount();
hgs
parents: 34
diff changeset
  1132
    videoServices->decreaseReferenceCount();
30
hgs
parents:
diff changeset
  1133
}
hgs
parents:
diff changeset
  1134
hgs
parents:
diff changeset
  1135
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1136
// testHandleErrorSlot
hgs
parents:
diff changeset
  1137
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1138
//
hgs
parents:
diff changeset
  1139
void TestListView::testHandleStatusSlot()
hgs
parents:
diff changeset
  1140
{
hgs
parents:
diff changeset
  1141
	QVariant *variant =	new	QVariant();
hgs
parents:
diff changeset
  1142
hgs
parents:
diff changeset
  1143
	// Unknown error code.
hgs
parents:
diff changeset
  1144
	init();
hgs
parents:
diff changeset
  1145
	connect(this, SIGNAL(testStatusSignal(int, QVariant&)), mTestView, SLOT(handleAsyncStatusSlot(int, QVariant&)));
hgs
parents:
diff changeset
  1146
	emit testStatusSignal(0, *variant);
34
hgs
parents: 30
diff changeset
  1147
	QVERIFY(VideoCollectionViewUtilsData::mLastError ==	0);
30
hgs
parents:
diff changeset
  1148
	cleanup();
hgs
parents:
diff changeset
  1149
hgs
parents:
diff changeset
  1150
	// Multiple	deletion error.
hgs
parents:
diff changeset
  1151
	init();
hgs
parents:
diff changeset
  1152
	connect(this, SIGNAL(testStatusSignal(int, QVariant&)), mTestView, SLOT(handleAsyncStatusSlot(int, QVariant&)));
hgs
parents:
diff changeset
  1153
	emit testStatusSignal(VideoCollectionCommon::statusMultipleDeleteFail, *variant);
34
hgs
parents: 30
diff changeset
  1154
	QVERIFY(VideoCollectionViewUtilsData::mLastError ==	VideoCollectionCommon::statusMultipleDeleteFail);
30
hgs
parents:
diff changeset
  1155
	cleanup();
hgs
parents:
diff changeset
  1156
hgs
parents:
diff changeset
  1157
	// Deletion	error.
hgs
parents:
diff changeset
  1158
	init();
hgs
parents:
diff changeset
  1159
	connect(this, SIGNAL(testStatusSignal(int, QVariant&)), mTestView, SLOT(handleAsyncStatusSlot(int, QVariant&)));
hgs
parents:
diff changeset
  1160
	emit testStatusSignal(VideoCollectionCommon::statusSingleDeleteFail, *variant);
34
hgs
parents: 30
diff changeset
  1161
	QVERIFY(VideoCollectionViewUtilsData::mLastError ==	VideoCollectionCommon::statusSingleDeleteFail);
30
hgs
parents:
diff changeset
  1162
	cleanup();
hgs
parents:
diff changeset
  1163
hgs
parents:
diff changeset
  1164
	// status multidelete succeed
hgs
parents:
diff changeset
  1165
    init();
hgs
parents:
diff changeset
  1166
    connect(this, SIGNAL(testStatusSignal(int, QVariant&)), mTestView, SLOT(handleAsyncStatusSlot(int, QVariant&)));
34
hgs
parents: 30
diff changeset
  1167
    emit testStatusSignal(VideoCollectionCommon::statusDeleteSucceed, *variant);
hgs
parents: 30
diff changeset
  1168
    QVERIFY(VideoCollectionViewUtilsData::mLastError == VideoCollectionCommon::statusDeleteSucceed);
30
hgs
parents:
diff changeset
  1169
    cleanup();
hgs
parents:
diff changeset
  1170
hgs
parents:
diff changeset
  1171
	// No model.
hgs
parents:
diff changeset
  1172
	init(false);
hgs
parents:
diff changeset
  1173
	connect(this, SIGNAL(testStatusSignal(int, QVariant&)), mTestView, SLOT(handleAsyncStatusSlot(int, QVariant&)));
hgs
parents:
diff changeset
  1174
	emit testStatusSignal(1,	*variant);
34
hgs
parents: 30
diff changeset
  1175
	QVERIFY(VideoCollectionViewUtilsData::mLastError ==	1);
30
hgs
parents:
diff changeset
  1176
	cleanup();
hgs
parents:
diff changeset
  1177
hgs
parents:
diff changeset
  1178
	delete variant;
hgs
parents:
diff changeset
  1179
}
hgs
parents:
diff changeset
  1180
hgs
parents:
diff changeset
  1181
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1182
// testCollectionOpenedSlot
hgs
parents:
diff changeset
  1183
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1184
//
hgs
parents:
diff changeset
  1185
void TestListView::testCollectionOpenedSlot()
hgs
parents:
diff changeset
  1186
{
hgs
parents:
diff changeset
  1187
	QString testString;
hgs
parents:
diff changeset
  1188
hgs
parents:
diff changeset
  1189
	// View	is not initialized.
hgs
parents:
diff changeset
  1190
	init(false);
36
hgs
parents: 34
diff changeset
  1191
	connect(this, SIGNAL(testCollectionOpenedSignal(bool, const QString&, const QModelIndex&)),
hgs
parents: 34
diff changeset
  1192
	    mTestView, SLOT(collectionOpenedSlot(bool, const QString&, const QModelIndex&)));
hgs
parents: 34
diff changeset
  1193
	emit testCollectionOpenedSignal(false, testString, QModelIndex());
30
hgs
parents:
diff changeset
  1194
	cleanup();
hgs
parents:
diff changeset
  1195
hgs
parents:
diff changeset
  1196
	// No toolbar actions.
hgs
parents:
diff changeset
  1197
	init(true);
36
hgs
parents: 34
diff changeset
  1198
	mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_COLLECTIONWIDGET); // load model
hgs
parents: 34
diff changeset
  1199
	QModelIndex index = VideoCollectionWrapperData::mCollectionsModel->index(0, 0);
30
hgs
parents:
diff changeset
  1200
	// Clear actions.
hgs
parents:
diff changeset
  1201
	QMap<VideoListView::TViewActionIds,	HbAction*> backupActions =
hgs
parents:
diff changeset
  1202
		QMap<VideoListView::TViewActionIds,	HbAction*>(mTestView->mToolbarActions);
hgs
parents:
diff changeset
  1203
	mTestView->mToolbarActions.clear();
36
hgs
parents: 34
diff changeset
  1204
	connect(this, SIGNAL(testCollectionOpenedSignal(bool, const QString&, const QModelIndex&)), 
hgs
parents: 34
diff changeset
  1205
	    mTestView, SLOT(collectionOpenedSlot(bool, const QString&, const QModelIndex&)));
hgs
parents: 34
diff changeset
  1206
	emit testCollectionOpenedSignal(true, testString, index);
30
hgs
parents:
diff changeset
  1207
	mTestView->mToolbarActions.unite(backupActions);
hgs
parents:
diff changeset
  1208
	cleanup();
hgs
parents:
diff changeset
  1209
36
hgs
parents: 34
diff changeset
  1210
	// index is invalid
hgs
parents: 34
diff changeset
  1211
	init();
37
hgs
parents: 36
diff changeset
  1212
	emit testCollectionOpenedSignal(true, testString, QModelIndex());
36
hgs
parents: 34
diff changeset
  1213
	cleanup();
hgs
parents: 34
diff changeset
  1214
	
hgs
parents: 34
diff changeset
  1215
	// current list is null
30
hgs
parents:
diff changeset
  1216
	init();
37
hgs
parents: 36
diff changeset
  1217
	VideoListWidget *tmpList = mTestView->mCurrentList;
hgs
parents: 36
diff changeset
  1218
	emit testCollectionOpenedSignal(true, testString, index);
hgs
parents: 36
diff changeset
  1219
	mTestView->mCurrentList = tmpList;
36
hgs
parents: 34
diff changeset
  1220
	cleanup();
hgs
parents: 34
diff changeset
  1221
	
hgs
parents: 34
diff changeset
  1222
	// current list is collectioncontentwidget
hgs
parents: 34
diff changeset
  1223
	init();
30
hgs
parents:
diff changeset
  1224
	cleanup();
36
hgs
parents: 34
diff changeset
  1225
	
hgs
parents: 34
diff changeset
  1226
	// index is for video item and not for collection.
hgs
parents: 34
diff changeset
  1227
	init();
hgs
parents: 34
diff changeset
  1228
	cleanup();
hgs
parents: 34
diff changeset
  1229
	
hgs
parents: 34
diff changeset
  1230
	// non-error cases:
30
hgs
parents:
diff changeset
  1231
	testString = "Test text string";
hgs
parents:
diff changeset
  1232
36
hgs
parents: 34
diff changeset
  1233
	// Collection opened with default collection.
30
hgs
parents:
diff changeset
  1234
	init();
36
hgs
parents: 34
diff changeset
  1235
    mTestView->mCurrentList = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_COLLECTIONWIDGET);
hgs
parents: 34
diff changeset
  1236
    index = VideoCollectionWrapperData::mCollectionsModel->index(0, 0);
hgs
parents: 34
diff changeset
  1237
	connect(this, SIGNAL(testCollectionOpenedSignal(bool, const QString&, const QModelIndex&)), 
hgs
parents: 34
diff changeset
  1238
	    mTestView, SLOT(collectionOpenedSlot(bool, const QString&, const QModelIndex&)));
hgs
parents: 34
diff changeset
  1239
	emit testCollectionOpenedSignal(true, testString, index);
30
hgs
parents:
diff changeset
  1240
	// Verify checkable	and	visible	toolbar	actions.
hgs
parents:
diff changeset
  1241
	cleanup();
36
hgs
parents: 34
diff changeset
  1242
	
hgs
parents: 34
diff changeset
  1243
	// Collection opened with userdefined album.
30
hgs
parents:
diff changeset
  1244
	init();
36
hgs
parents: 34
diff changeset
  1245
	cleanup();
hgs
parents: 34
diff changeset
  1246
	
hgs
parents: 34
diff changeset
  1247
	// Collection closed.
hgs
parents: 34
diff changeset
  1248
	init();
hgs
parents: 34
diff changeset
  1249
	connect(this, SIGNAL(testCollectionOpenedSignal(bool, const QString&, const QModelIndex&)), 
hgs
parents: 34
diff changeset
  1250
	    mTestView, SLOT(collectionOpenedSlot(bool, const QString&, const QModelIndex&)));
hgs
parents: 34
diff changeset
  1251
	emit testCollectionOpenedSignal(false, testString, QModelIndex());
30
hgs
parents:
diff changeset
  1252
	cleanup();
hgs
parents:
diff changeset
  1253
}
hgs
parents:
diff changeset
  1254
hgs
parents:
diff changeset
  1255
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1256
// testUpdateSubLabel
hgs
parents:
diff changeset
  1257
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1258
//
hgs
parents:
diff changeset
  1259
void TestListView::testUpdateSubLabel()
hgs
parents:
diff changeset
  1260
{
hgs
parents:
diff changeset
  1261
	init(true);
34
hgs
parents: 30
diff changeset
  1262
    setRowCount(1);
38
hgs
parents: 37
diff changeset
  1263
    mTestView->mModelReady = true;
30
hgs
parents:
diff changeset
  1264
	connect(this, SIGNAL(testLayoutChangedSignal()), mTestView, SLOT(layoutChangedSlot()));
36
hgs
parents: 34
diff changeset
  1265
	connect(this, SIGNAL(testCollectionOpenedSignal(bool, const QString&, const QModelIndex&)), 
hgs
parents: 34
diff changeset
  1266
	    mTestView, SLOT(collectionOpenedSlot(bool, const QString&, const QModelIndex&)));
30
hgs
parents:
diff changeset
  1267
34
hgs
parents: 30
diff changeset
  1268
    VideoListWidget *videoListWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_VIDEOLISTWIDGET);   
hgs
parents: 30
diff changeset
  1269
    VideoListWidget *collectionWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_COLLECTIONWIDGET);   
hgs
parents: 30
diff changeset
  1270
    VideoListWidget *collectionContentWidget = mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_COLLECTIONCONTENTWIDGET);   
30
hgs
parents:
diff changeset
  1271
	
36
hgs
parents: 34
diff changeset
  1272
    videoListWidget->mCurrentLevel = VideoCollectionCommon::ELevelVideos;
hgs
parents: 34
diff changeset
  1273
    collectionWidget->mCurrentLevel = VideoCollectionCommon::ELevelCategory;
hgs
parents: 34
diff changeset
  1274
    collectionContentWidget->mCurrentLevel = VideoCollectionCommon::ELevelAlbum;
hgs
parents: 34
diff changeset
  1275
    
hgs
parents: 34
diff changeset
  1276
    HbGroupBox* label = mUiLoader->findWidget<HbGroupBox>(DOCML_NAME_VC_HEADINGBANNER);
hgs
parents: 34
diff changeset
  1277
    
34
hgs
parents: 30
diff changeset
  1278
	mTestView->mCurrentList = videoListWidget; 
30
hgs
parents:
diff changeset
  1279
	emit testLayoutChangedSignal();
36
hgs
parents: 34
diff changeset
  1280
	QCOMPARE( label->heading(), QString("txt_videos_subtitle_ln_videos") );
30
hgs
parents:
diff changeset
  1281
34
hgs
parents: 30
diff changeset
  1282
    mTestView->mCurrentList = collectionWidget; 
30
hgs
parents:
diff changeset
  1283
	emit testLayoutChangedSignal();
36
hgs
parents: 34
diff changeset
  1284
    QCOMPARE( label->heading(), QString("txt_videos_subtitle_ln_collections") );
30
hgs
parents:
diff changeset
  1285
34
hgs
parents: 30
diff changeset
  1286
    mTestView->mCurrentList = collectionContentWidget; 
30
hgs
parents:
diff changeset
  1287
	emit testLayoutChangedSignal();
36
hgs
parents: 34
diff changeset
  1288
    QCOMPARE( label->heading(), QString("txt_videos_subtitle_1_l2") );
30
hgs
parents:
diff changeset
  1289
36
hgs
parents: 34
diff changeset
  1290
    // how to test the collection name?
34
hgs
parents: 30
diff changeset
  1291
	
36
hgs
parents: 34
diff changeset
  1292
	cleanup();
30
hgs
parents:
diff changeset
  1293
}
hgs
parents:
diff changeset
  1294
hgs
parents:
diff changeset
  1295
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1296
// testShowHint
hgs
parents:
diff changeset
  1297
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
  1298
//
hgs
parents:
diff changeset
  1299
void TestListView::testShowHint()
hgs
parents:
diff changeset
  1300
{
39
hgs
parents: 38
diff changeset
  1301
    init(false);
30
hgs
parents:
diff changeset
  1302
    connect(this, SIGNAL(testLayoutChangedSignal()), mTestView, SLOT(layoutChangedSlot()));
36
hgs
parents: 34
diff changeset
  1303
    mTestView->mModelReady = true;
30
hgs
parents:
diff changeset
  1304
    
36
hgs
parents: 34
diff changeset
  1305
    // current list is null. (cannot be verified, run for coverity    
hgs
parents: 34
diff changeset
  1306
    emit testLayoutChangedSignal();   
hgs
parents: 34
diff changeset
  1307
    mTestView->activateView(TMPXItemId::InvalidId());
39
hgs
parents: 38
diff changeset
  1308
    disconnect(this, SIGNAL(testLayoutChangedSignal()), mTestView, SLOT(layoutChangedSlot()));
hgs
parents: 38
diff changeset
  1309
    
hgs
parents: 38
diff changeset
  1310
    cleanup();
hgs
parents: 38
diff changeset
  1311
    init(true);
hgs
parents: 38
diff changeset
  1312
    mTestView->mModelReady = true;
hgs
parents: 38
diff changeset
  1313
    connect(this, SIGNAL(testLayoutChangedSignal()), mTestView, SLOT(layoutChangedSlot()));
hgs
parents: 38
diff changeset
  1314
    
36
hgs
parents: 34
diff changeset
  1315
    // hint widget cannot be loaded. (cannot be tested, run for coverity)
hgs
parents: 34
diff changeset
  1316
    VideoCollectionUiLoaderData::mFindFailureNameList.append(DOCML_NAME_VC_VIDEOHINTWIDGET);
hgs
parents: 34
diff changeset
  1317
    emit testLayoutChangedSignal();
hgs
parents: 34
diff changeset
  1318
    VideoCollectionUiLoaderData::mFindFailureNameList.clear();
hgs
parents: 34
diff changeset
  1319
    
hgs
parents: 34
diff changeset
  1320
    VideoHintWidget *hintWidget = mUiLoader->findWidget<VideoHintWidget>(DOCML_NAME_VC_VIDEOHINTWIDGET);    
39
hgs
parents: 38
diff changeset
  1321
    hintWidget->deactivate();
36
hgs
parents: 34
diff changeset
  1322
    
hgs
parents: 34
diff changeset
  1323
    /////
hgs
parents: 34
diff changeset
  1324
    // hint widget showing
38
hgs
parents: 37
diff changeset
  1325
    // model not ready, row count zero.
30
hgs
parents:
diff changeset
  1326
    mTestView->mModelReady = false;
38
hgs
parents: 37
diff changeset
  1327
    setRowCount(0);
39
hgs
parents: 38
diff changeset
  1328
    VideoListWidget *backup = mTestView->mCurrentList;
36
hgs
parents: 34
diff changeset
  1329
    mTestView->mCurrentList =  mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_COLLECTIONWIDGET);
38
hgs
parents: 37
diff changeset
  1330
    emit testLayoutChangedSignal();
39
hgs
parents: 38
diff changeset
  1331
    QVERIFY(hintWidget->isVisible() == false);
36
hgs
parents: 34
diff changeset
  1332
    QVERIFY(VideoHintWidgetData::mSettedButtonShowLevel);
39
hgs
parents: 38
diff changeset
  1333
    mTestView->mCurrentList = backup;
38
hgs
parents: 37
diff changeset
  1334
    
hgs
parents: 37
diff changeset
  1335
    // model not ready, row count not zero.
hgs
parents: 37
diff changeset
  1336
    setRowCount(1);
hgs
parents: 37
diff changeset
  1337
    emit testLayoutChangedSignal();    
hgs
parents: 37
diff changeset
  1338
    QVERIFY(hintWidget->isVisible() == false );
hgs
parents: 37
diff changeset
  1339
    QVERIFY(VideoHintWidgetData::mSettedButtonShowLevel);
hgs
parents: 37
diff changeset
  1340
    QVERIFY(mTestView->mModelReady);
36
hgs
parents: 34
diff changeset
  1341
    
hgs
parents: 34
diff changeset
  1342
    // model ready, row count not zero
hgs
parents: 34
diff changeset
  1343
    mTestView->mModelReady = true;
hgs
parents: 34
diff changeset
  1344
    emit testLayoutChangedSignal();    
hgs
parents: 34
diff changeset
  1345
    QVERIFY(hintWidget->isVisible() == false );
hgs
parents: 34
diff changeset
  1346
    QVERIFY(VideoHintWidgetData::mSettedButtonShowLevel);
hgs
parents: 34
diff changeset
  1347
hgs
parents: 34
diff changeset
  1348
    // model ready, row count is zero
hgs
parents: 34
diff changeset
  1349
    setRowCount(0);
hgs
parents: 34
diff changeset
  1350
    emit testLayoutChangedSignal();    
hgs
parents: 34
diff changeset
  1351
    QVERIFY(hintWidget->isVisible() == true );
hgs
parents: 34
diff changeset
  1352
    QVERIFY(VideoHintWidgetData::mSettedButtonShowLevel);
hgs
parents: 34
diff changeset
  1353
38
hgs
parents: 37
diff changeset
  1354
    // model ready, row count is zero, show to be false
36
hgs
parents: 34
diff changeset
  1355
    connect(this, SIGNAL(testSignal()), mTestView, SLOT(openCollectionViewSlot()));
hgs
parents: 34
diff changeset
  1356
    emit testSignal();
hgs
parents: 34
diff changeset
  1357
    QVERIFY(hintWidget->isVisible() == false );
hgs
parents: 34
diff changeset
  1358
    QVERIFY(VideoHintWidgetData::mSettedButtonShowLevel);
hgs
parents: 34
diff changeset
  1359
    disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(openCollectionViewSlot()));
hgs
parents: 34
diff changeset
  1360
   
hgs
parents: 34
diff changeset
  1361
    mTestView->mCurrentList =  mUiLoader->findWidget<VideoListWidget>(DOCML_NAME_VC_VIDEOLISTWIDGET);
hgs
parents: 34
diff changeset
  1362
    
hgs
parents: 34
diff changeset
  1363
    ////////
hgs
parents: 34
diff changeset
  1364
    // toolbar setup
39
hgs
parents: 38
diff changeset
  1365
    mTestView->activateView(TMPXItemId::InvalidId());
36
hgs
parents: 34
diff changeset
  1366
    mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos]->setVisible(true);
37
hgs
parents: 36
diff changeset
  1367
36
hgs
parents: 34
diff changeset
  1368
    // mToolbarViewsActionGroup is null
hgs
parents: 34
diff changeset
  1369
    QActionGroup *tmp = mTestView->mToolbarViewsActionGroup;
hgs
parents: 34
diff changeset
  1370
    mTestView->mToolbarViewsActionGroup = 0;
hgs
parents: 34
diff changeset
  1371
    emit testLayoutChangedSignal();    
hgs
parents: 34
diff changeset
  1372
    QVERIFY(mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos]->isVisible());
hgs
parents: 34
diff changeset
  1373
    mTestView->mToolbarViewsActionGroup = tmp;
hgs
parents: 34
diff changeset
  1374
    
hgs
parents: 34
diff changeset
  1375
    //  mToolbarCollectionActionGroup is null
hgs
parents: 34
diff changeset
  1376
    tmp = mTestView->mToolbarCollectionActionGroup;
hgs
parents: 34
diff changeset
  1377
    mTestView->mToolbarCollectionActionGroup = 0;
hgs
parents: 34
diff changeset
  1378
    emit testLayoutChangedSignal();    
hgs
parents: 34
diff changeset
  1379
    QVERIFY(mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos]->isVisible());
hgs
parents: 34
diff changeset
  1380
    mTestView->mToolbarCollectionActionGroup = tmp;
hgs
parents: 34
diff changeset
  1381
    
hgs
parents: 34
diff changeset
  1382
    // mIsService is true
hgs
parents: 34
diff changeset
  1383
    mTestView->mIsService = true;
hgs
parents: 34
diff changeset
  1384
    emit testLayoutChangedSignal();    
hgs
parents: 34
diff changeset
  1385
    QVERIFY(mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos]->isVisible());
hgs
parents: 34
diff changeset
  1386
    mTestView->mIsService = false;
hgs
parents: 34
diff changeset
  1387
    
hgs
parents: 34
diff changeset
  1388
    // show -flag is true, currentlist level != VideoCollectionCommon::ELevelDefaultColl
hgs
parents: 34
diff changeset
  1389
    mTestView->mCurrentList->activate(VideoCollectionCommon::ELevelAlbum);
hgs
parents: 34
diff changeset
  1390
    emit testLayoutChangedSignal();    
hgs
parents: 34
diff changeset
  1391
    QVERIFY(!mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos]->isVisible());
hgs
parents: 34
diff changeset
  1392
    
hgs
parents: 34
diff changeset
  1393
    mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos]->setVisible(true);
hgs
parents: 34
diff changeset
  1394
    // show -flag is true, currentlist level == VideoCollectionCommon::ELevelDefaultColl
hgs
parents: 34
diff changeset
  1395
    mTestView->mCurrentList->activate(VideoCollectionCommon::ELevelDefaultColl);
hgs
parents: 34
diff changeset
  1396
    emit testLayoutChangedSignal();    
hgs
parents: 34
diff changeset
  1397
    QVERIFY(!mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos]->isVisible());
hgs
parents: 34
diff changeset
  1398
       
hgs
parents: 34
diff changeset
  1399
    // show -flag is false
hgs
parents: 34
diff changeset
  1400
    setRowCount(1);
hgs
parents: 34
diff changeset
  1401
    emit testLayoutChangedSignal();   
hgs
parents: 34
diff changeset
  1402
    QVERIFY(mTestView->mToolbarActions[VideoListView::ETBActionRemoveVideos]->isVisible());
hgs
parents: 34
diff changeset
  1403
    
hgs
parents: 34
diff changeset
  1404
    ///////
hgs
parents: 34
diff changeset
  1405
    // sub label
hgs
parents: 34
diff changeset
  1406
    
hgs
parents: 34
diff changeset
  1407
    // sub label cannot be found (cannot be verified, run for coverity)
hgs
parents: 34
diff changeset
  1408
    VideoCollectionUiLoaderData::mFindFailureNameList.append(DOCML_NAME_VC_HEADINGBANNER);
30
hgs
parents:
diff changeset
  1409
    emit testLayoutChangedSignal();
36
hgs
parents: 34
diff changeset
  1410
    VideoCollectionUiLoaderData::mFindFailureNameList.clear();
hgs
parents: 34
diff changeset
  1411
    
hgs
parents: 34
diff changeset
  1412
    HbGroupBox *subLabel =
hgs
parents: 34
diff changeset
  1413
            mUiLoader->findWidget<HbGroupBox>(
hgs
parents: 34
diff changeset
  1414
                DOCML_NAME_VC_HEADINGBANNER);
hgs
parents: 34
diff changeset
  1415
    
hgs
parents: 34
diff changeset
  1416
    // show -flag is false
hgs
parents: 34
diff changeset
  1417
    setRowCount(1);
hgs
parents: 34
diff changeset
  1418
    emit testLayoutChangedSignal();  
hgs
parents: 34
diff changeset
  1419
    QVERIFY(subLabel->isVisible());
hgs
parents: 34
diff changeset
  1420
    
hgs
parents: 34
diff changeset
  1421
    // show -flag is true, current list's level != ELevelVideos
hgs
parents: 34
diff changeset
  1422
    setRowCount(0);
hgs
parents: 34
diff changeset
  1423
    mTestView->mCurrentList->activate(VideoCollectionCommon::ELevelAlbum);
hgs
parents: 34
diff changeset
  1424
    emit testLayoutChangedSignal();  
hgs
parents: 34
diff changeset
  1425
    QVERIFY(subLabel->isVisible());
hgs
parents: 34
diff changeset
  1426
    
hgs
parents: 34
diff changeset
  1427
    // show -flag is true, current list's level == ELevelVideos
hgs
parents: 34
diff changeset
  1428
    setRowCount(0);
hgs
parents: 34
diff changeset
  1429
    mTestView->mCurrentList->activate(VideoCollectionCommon::ELevelVideos);
hgs
parents: 34
diff changeset
  1430
    emit testLayoutChangedSignal();  
hgs
parents: 34
diff changeset
  1431
    QVERIFY(!subLabel->isVisible());
hgs
parents: 34
diff changeset
  1432
}
hgs
parents: 34
diff changeset
  1433
hgs
parents: 34
diff changeset
  1434
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1435
// testTitleReadySlot
hgs
parents: 34
diff changeset
  1436
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1437
//
hgs
parents: 34
diff changeset
  1438
void TestListView::testTitleReadySlot()
hgs
parents: 34
diff changeset
  1439
{
hgs
parents: 34
diff changeset
  1440
    init(true);
hgs
parents: 34
diff changeset
  1441
    
hgs
parents: 34
diff changeset
  1442
    QVERIFY(connect(this, SIGNAL(testSignal(const QString &)), mTestView, SLOT(titleReadySlot(const QString &))));
hgs
parents: 34
diff changeset
  1443
    
hgs
parents: 34
diff changeset
  1444
    QString title("TEST");
hgs
parents: 34
diff changeset
  1445
    
hgs
parents: 34
diff changeset
  1446
    emit testSignal(title);
hgs
parents: 34
diff changeset
  1447
    
hgs
parents: 34
diff changeset
  1448
    QVERIFY(mTestView->mTitle == title);
hgs
parents: 34
diff changeset
  1449
    
hgs
parents: 34
diff changeset
  1450
    disconnect(this, SIGNAL(testSignal(const QString &)), mTestView, SLOT(titleReadySlot(const QString &)));
hgs
parents: 34
diff changeset
  1451
    cleanup();
hgs
parents: 34
diff changeset
  1452
}
hgs
parents: 34
diff changeset
  1453
hgs
parents: 34
diff changeset
  1454
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1455
// testDoDelayedSlot
hgs
parents: 34
diff changeset
  1456
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1457
//
hgs
parents: 34
diff changeset
  1458
void TestListView::testDoDelayedsSlot()
hgs
parents: 34
diff changeset
  1459
{
hgs
parents: 34
diff changeset
  1460
    init(true);
hgs
parents: 34
diff changeset
  1461
    
hgs
parents: 34
diff changeset
  1462
    QVERIFY(connect(this, SIGNAL(testSignal()), mTestView, SLOT(doDelayedsSlot())));
hgs
parents: 34
diff changeset
  1463
    
hgs
parents: 34
diff changeset
  1464
    emit testSignal();
hgs
parents: 34
diff changeset
  1465
    
hgs
parents: 34
diff changeset
  1466
    QCOMPARE(VideoCollectionUiLoaderData::mLastLoadPhasedData, (int)VideoCollectionUiLoaderParam::LoadPhaseSecondary); 
hgs
parents: 34
diff changeset
  1467
    
hgs
parents: 34
diff changeset
  1468
    disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(doDelayedsSlot()));
hgs
parents: 34
diff changeset
  1469
    cleanup();
hgs
parents: 34
diff changeset
  1470
}
hgs
parents: 34
diff changeset
  1471
hgs
parents: 34
diff changeset
  1472
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1473
// testOpenNewAlbumSlot
hgs
parents: 34
diff changeset
  1474
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1475
//
hgs
parents: 34
diff changeset
  1476
void TestListView::testOpenNewAlbumSlot()
hgs
parents: 34
diff changeset
  1477
{
hgs
parents: 34
diff changeset
  1478
    init(false);
hgs
parents: 34
diff changeset
  1479
    
hgs
parents: 34
diff changeset
  1480
    QVERIFY(connect(this, SIGNAL(testSignal(const QModelIndex &, int, int)), mTestView, SLOT(openNewAlbumSlot(const QModelIndex &, int, int))));
hgs
parents: 34
diff changeset
  1481
hgs
parents: 34
diff changeset
  1482
    QModelIndex index;
hgs
parents: 34
diff changeset
  1483
    
hgs
parents: 34
diff changeset
  1484
    // Not initialized, no mCurrentList
hgs
parents: 34
diff changeset
  1485
    emit testSignal(index, 0, 0);
39
hgs
parents: 38
diff changeset
  1486
    // no verification needed, this tests that method does not crash if mCurrentList is not set.
36
hgs
parents: 34
diff changeset
  1487
    
hgs
parents: 34
diff changeset
  1488
    // Good case
hgs
parents: 34
diff changeset
  1489
    QVERIFY(mTestView->initializeView() == 0);
hgs
parents: 34
diff changeset
  1490
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1491
    setRowCount(1);
39
hgs
parents: 38
diff changeset
  1492
    VideoListWidgetData::mEmitActivatedIndex = QModelIndex();
36
hgs
parents: 34
diff changeset
  1493
    emit testSignal(index, 0, 0);
hgs
parents: 34
diff changeset
  1494
    
39
hgs
parents: 38
diff changeset
  1495
    QModelIndex expectedIndex = mTestView->mCurrentList->mModel->index(0,0);
hgs
parents: 38
diff changeset
  1496
    QCOMPARE(VideoListWidgetData::mEmitActivatedIndex, expectedIndex);
hgs
parents: 38
diff changeset
  1497
    
hgs
parents: 38
diff changeset
  1498
    VideoListWidgetData::mEmitActivatedIndex = QModelIndex();
36
hgs
parents: 34
diff changeset
  1499
    // Invalid index
hgs
parents: 34
diff changeset
  1500
    emit testSignal(index, -1, 0);
39
hgs
parents: 38
diff changeset
  1501
    QCOMPARE(VideoListWidgetData::mEmitActivatedIndex, QModelIndex());
36
hgs
parents: 34
diff changeset
  1502
    
hgs
parents: 34
diff changeset
  1503
    disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(doDelayedsSlot()));
hgs
parents: 34
diff changeset
  1504
    cleanup();
hgs
parents: 34
diff changeset
  1505
}
hgs
parents: 34
diff changeset
  1506
hgs
parents: 34
diff changeset
  1507
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1508
// testAboutToChangeOrientationSlot
hgs
parents: 34
diff changeset
  1509
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1510
//
hgs
parents: 34
diff changeset
  1511
void TestListView::testAboutToChangeOrientationSlot()
hgs
parents: 34
diff changeset
  1512
{
hgs
parents: 34
diff changeset
  1513
    init(false);
hgs
parents: 34
diff changeset
  1514
    QVERIFY(connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToChangeOrientationSlot())));
hgs
parents: 34
diff changeset
  1515
hgs
parents: 34
diff changeset
  1516
    emit testSignal();
hgs
parents: 34
diff changeset
  1517
    
hgs
parents: 34
diff changeset
  1518
    // nothing to verify
hgs
parents: 34
diff changeset
  1519
    
hgs
parents: 34
diff changeset
  1520
    disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToChangeOrientationSlot()));
hgs
parents: 34
diff changeset
  1521
    cleanup();
hgs
parents: 34
diff changeset
  1522
}
hgs
parents: 34
diff changeset
  1523
hgs
parents: 34
diff changeset
  1524
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1525
// testOrientationChangedSlot
hgs
parents: 34
diff changeset
  1526
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1527
//
hgs
parents: 34
diff changeset
  1528
void TestListView::testOrientationChangedSlot()
hgs
parents: 34
diff changeset
  1529
{
hgs
parents: 34
diff changeset
  1530
    init(false);
hgs
parents: 34
diff changeset
  1531
    QVERIFY(connect(this, SIGNAL(testSignal(Qt::Orientation)), mTestView, 
hgs
parents: 34
diff changeset
  1532
            SLOT(orientationChangedSlot(Qt::Orientation))));
hgs
parents: 34
diff changeset
  1533
hgs
parents: 34
diff changeset
  1534
    HbView::mSetItemVisibleLast = false;
hgs
parents: 34
diff changeset
  1535
    
hgs
parents: 34
diff changeset
  1536
    emit testSignal(Qt::Vertical);
hgs
parents: 34
diff changeset
  1537
    QVERIFY(HbView::mSetItemVisibleLast == true);
hgs
parents: 34
diff changeset
  1538
hgs
parents: 34
diff changeset
  1539
    emit testSignal(Qt::Horizontal);
hgs
parents: 34
diff changeset
  1540
    QVERIFY(HbView::mSetItemVisibleLast == false);
hgs
parents: 34
diff changeset
  1541
    
hgs
parents: 34
diff changeset
  1542
    disconnect(this, SIGNAL(testSignal(Qt::Orientation)), mTestView, 
hgs
parents: 34
diff changeset
  1543
            SLOT(orientationChangedSlot(Qt::Orientation)));    
hgs
parents: 34
diff changeset
  1544
    cleanup();
hgs
parents: 34
diff changeset
  1545
}
hgs
parents: 34
diff changeset
  1546
hgs
parents: 34
diff changeset
  1547
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1548
// testCreateCollectionSlot
hgs
parents: 34
diff changeset
  1549
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1550
//
hgs
parents: 34
diff changeset
  1551
void TestListView::testCreateCollectionSlot()
hgs
parents: 34
diff changeset
  1552
{
hgs
parents: 34
diff changeset
  1553
    init(false);
hgs
parents: 34
diff changeset
  1554
    QVERIFY(connect(this, SIGNAL(testSignal()), mTestView, SLOT(createCollectionSlot())));
hgs
parents: 34
diff changeset
  1555
38
hgs
parents: 37
diff changeset
  1556
    HbInputDialog *dialog = new HbInputDialog(); 
hgs
parents: 37
diff changeset
  1557
    
36
hgs
parents: 34
diff changeset
  1558
    // not initialized, no mCurrentList
hgs
parents: 34
diff changeset
  1559
    emit testSignal();
39
hgs
parents: 38
diff changeset
  1560
    QCOMPARE(HbInputDialog::mOpenCallCount, 0);
36
hgs
parents: 34
diff changeset
  1561
    QVERIFY(VideoSortFilterProxyModelData::mLastAddedAlbumName == "");
hgs
parents: 34
diff changeset
  1562
hgs
parents: 34
diff changeset
  1563
    QVERIFY(mTestView->initializeView() == 0);
hgs
parents: 34
diff changeset
  1564
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1565
    
hgs
parents: 34
diff changeset
  1566
    // dialog canceled
38
hgs
parents: 37
diff changeset
  1567
    HbInputDialog::mValueCallCount = 0;
39
hgs
parents: 38
diff changeset
  1568
    HbInputDialog::mOpenCallCount = 0;
36
hgs
parents: 34
diff changeset
  1569
    emit testSignal();
38
hgs
parents: 37
diff changeset
  1570
    dialog->emitDialogFinished(mTestView, SLOT(createCollectionDialogFinished(HbAction *)), 1);
36
hgs
parents: 34
diff changeset
  1571
    QVERIFY(VideoSortFilterProxyModelData::mLastAddedAlbumName == "");
39
hgs
parents: 38
diff changeset
  1572
    QCOMPARE(HbInputDialog::mValueCallCount, 1);
hgs
parents: 38
diff changeset
  1573
    QCOMPARE(HbInputDialog::mOpenCallCount, 1);
30
hgs
parents:
diff changeset
  1574
    
36
hgs
parents: 34
diff changeset
  1575
    // empty name
38
hgs
parents: 37
diff changeset
  1576
    HbInputDialog::mValueCallCount = 0;
hgs
parents: 37
diff changeset
  1577
    HbInputDialog::mValueReturnValue = "";
39
hgs
parents: 38
diff changeset
  1578
    HbInputDialog::mOpenCallCount = 0;
36
hgs
parents: 34
diff changeset
  1579
    emit testSignal();
38
hgs
parents: 37
diff changeset
  1580
    dialog->emitDialogFinished(mTestView, SLOT(createCollectionDialogFinished(HbAction *)), 0);
36
hgs
parents: 34
diff changeset
  1581
    QVERIFY(VideoSortFilterProxyModelData::mLastAddedAlbumName == "");
39
hgs
parents: 38
diff changeset
  1582
    QCOMPARE(HbInputDialog::mValueCallCount, 1);
hgs
parents: 38
diff changeset
  1583
    QCOMPARE(HbInputDialog::mOpenCallCount, 1);
36
hgs
parents: 34
diff changeset
  1584
    
hgs
parents: 34
diff changeset
  1585
    // Good case.
38
hgs
parents: 37
diff changeset
  1586
    HbInputDialog::mValueCallCount = 0;
hgs
parents: 37
diff changeset
  1587
    HbInputDialog::mValueReturnValue = "testAlbum";
39
hgs
parents: 38
diff changeset
  1588
    HbInputDialog::mOpenCallCount = 0;
36
hgs
parents: 34
diff changeset
  1589
    emit testSignal();
38
hgs
parents: 37
diff changeset
  1590
    dialog->emitDialogFinished(mTestView, SLOT(createCollectionDialogFinished(HbAction *)), 0);
36
hgs
parents: 34
diff changeset
  1591
    QVERIFY(VideoSortFilterProxyModelData::mLastAddedAlbumName == "testAlbum");
39
hgs
parents: 38
diff changeset
  1592
    QCOMPARE(HbInputDialog::mValueCallCount, 1);
hgs
parents: 38
diff changeset
  1593
    QCOMPARE(HbInputDialog::mOpenCallCount, 1);
36
hgs
parents: 34
diff changeset
  1594
    
38
hgs
parents: 37
diff changeset
  1595
    HbInputDialog::mValueCallCount = 0;
hgs
parents: 37
diff changeset
  1596
    HbInputDialog::mValueReturnValue = "";
39
hgs
parents: 38
diff changeset
  1597
    HbInputDialog::mOpenCallCount = 0;
hgs
parents: 38
diff changeset
  1598
    VideoSortFilterProxyModelData::mLastAddedAlbumName = "";    
36
hgs
parents: 34
diff changeset
  1599
    disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(createCollectionSlot()));
hgs
parents: 34
diff changeset
  1600
    cleanup();
hgs
parents: 34
diff changeset
  1601
}
hgs
parents: 34
diff changeset
  1602
hgs
parents: 34
diff changeset
  1603
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1604
// testAddVideosToCollectionSlot
hgs
parents: 34
diff changeset
  1605
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1606
//
hgs
parents: 34
diff changeset
  1607
void TestListView::testAddVideosToCollectionSlot()
hgs
parents: 34
diff changeset
  1608
{
hgs
parents: 34
diff changeset
  1609
    init(false);
hgs
parents: 34
diff changeset
  1610
    QVERIFY(connect(this, SIGNAL(testSignal()), mTestView, SLOT(addVideosToCollectionSlot())));
hgs
parents: 34
diff changeset
  1611
hgs
parents: 34
diff changeset
  1612
    VideoSortFilterProxyModelData::mOpenedItemId = TMPXItemId(0, 2);
hgs
parents: 34
diff changeset
  1613
    
hgs
parents: 34
diff changeset
  1614
    // Not initalized, no mCurrentList
hgs
parents: 34
diff changeset
  1615
    emit testSignal();
hgs
parents: 34
diff changeset
  1616
    QVERIFY(VideoListSelectionDialogData::mSelectionType == -1);
hgs
parents: 34
diff changeset
  1617
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1618
    QCOMPARE(VideoCollectionViewUtilsData::mLastError, 0);
hgs
parents: 34
diff changeset
  1619
    
hgs
parents: 34
diff changeset
  1620
    QVERIFY(mTestView->initializeView() == 0);
hgs
parents: 34
diff changeset
  1621
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1622
    
hgs
parents: 34
diff changeset
  1623
    // Selection dialog widget loading fails.
hgs
parents: 34
diff changeset
  1624
    VideoCollectionUiLoaderData::mFindFailure = true;
hgs
parents: 34
diff changeset
  1625
    emit testSignal();
hgs
parents: 34
diff changeset
  1626
    QVERIFY(VideoListSelectionDialogData::mSelectionType == -1);
hgs
parents: 34
diff changeset
  1627
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1628
    QCOMPARE(VideoCollectionViewUtilsData::mLastError, 0);
hgs
parents: 34
diff changeset
  1629
    
hgs
parents: 34
diff changeset
  1630
    // Current level is not album
hgs
parents: 34
diff changeset
  1631
    VideoListSelectionDialogData::reset();
hgs
parents: 34
diff changeset
  1632
    VideoCollectionViewUtilsData::reset();
hgs
parents: 34
diff changeset
  1633
    VideoCollectionUiLoaderData::mFindFailure = false;
hgs
parents: 34
diff changeset
  1634
    mTestView->mCurrentList->mCurrentLevel = VideoCollectionCommon::ELevelCategory;
hgs
parents: 34
diff changeset
  1635
    emit testSignal();
hgs
parents: 34
diff changeset
  1636
    QVERIFY(VideoListSelectionDialogData::mSelectionType == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
  1637
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == VideoSortFilterProxyModelData::mOpenedItemId);
hgs
parents: 34
diff changeset
  1638
    QCOMPARE(VideoCollectionViewUtilsData::mLastError, 0);
hgs
parents: 34
diff changeset
  1639
hgs
parents: 34
diff changeset
  1640
    // Current level is album, video list widget load fails.
hgs
parents: 34
diff changeset
  1641
    VideoListSelectionDialogData::reset();
hgs
parents: 34
diff changeset
  1642
    VideoCollectionViewUtilsData::reset();
hgs
parents: 34
diff changeset
  1643
    VideoCollectionUiLoaderData::reset();
hgs
parents: 34
diff changeset
  1644
    HbDocumentLoader::mVideoListWidgetFailure = true;
hgs
parents: 34
diff changeset
  1645
    mTestView->mCurrentList->mCurrentLevel = VideoCollectionCommon::ELevelAlbum;
hgs
parents: 34
diff changeset
  1646
    emit testSignal();
hgs
parents: 34
diff changeset
  1647
    QVERIFY(VideoListSelectionDialogData::mSelectionType == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
  1648
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == VideoSortFilterProxyModelData::mOpenedItemId);
hgs
parents: 34
diff changeset
  1649
    QCOMPARE(VideoCollectionViewUtilsData::mLastError, 0);
hgs
parents: 34
diff changeset
  1650
    
hgs
parents: 34
diff changeset
  1651
    // Current level is album, but model is empty.
hgs
parents: 34
diff changeset
  1652
    HbDocumentLoader::mVideoListWidgetFailure = false;
hgs
parents: 34
diff changeset
  1653
    VideoListSelectionDialogData::reset();
hgs
parents: 34
diff changeset
  1654
    VideoCollectionViewUtilsData::reset();
hgs
parents: 34
diff changeset
  1655
    VideoCollectionUiLoaderData::reset();
hgs
parents: 34
diff changeset
  1656
    mTestView->mCurrentList->mCurrentLevel = VideoCollectionCommon::ELevelAlbum;
hgs
parents: 34
diff changeset
  1657
    emit testSignal();
hgs
parents: 34
diff changeset
  1658
    QVERIFY(VideoListSelectionDialogData::mSelectionType == -1);
hgs
parents: 34
diff changeset
  1659
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1660
    QCOMPARE(VideoCollectionViewUtilsData::mLastError, 0);
hgs
parents: 34
diff changeset
  1661
hgs
parents: 34
diff changeset
  1662
    // Current level is album, all videos are in the album 
hgs
parents: 34
diff changeset
  1663
    VideoListSelectionDialogData::reset();
hgs
parents: 34
diff changeset
  1664
    VideoListDataModelData::reset();
hgs
parents: 34
diff changeset
  1665
    VideoCollectionViewUtilsData::reset();
hgs
parents: 34
diff changeset
  1666
    mTestView->mCurrentList->mCurrentLevel = VideoCollectionCommon::ELevelAlbum;
hgs
parents: 34
diff changeset
  1667
    VideoListWidget *allVideos = mUiLoader->findWidget<VideoListWidget>(
hgs
parents: 34
diff changeset
  1668
                DOCML_NAME_VC_VIDEOLISTWIDGET);
hgs
parents: 34
diff changeset
  1669
    QVERIFY(allVideos);
hgs
parents: 34
diff changeset
  1670
    setRowCount(3, allVideos->mModel);
hgs
parents: 34
diff changeset
  1671
    emit testSignal();
hgs
parents: 34
diff changeset
  1672
    QVERIFY(VideoListSelectionDialogData::mSelectionType == -1);
hgs
parents: 34
diff changeset
  1673
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1674
    QVERIFY(VideoCollectionViewUtilsData::mLastError == 
hgs
parents: 34
diff changeset
  1675
            VideoCollectionCommon::statusAllVideosAlreadyInCollection);
hgs
parents: 34
diff changeset
  1676
    
hgs
parents: 34
diff changeset
  1677
    // Current level is album, all videos are not in the album
hgs
parents: 34
diff changeset
  1678
    VideoListSelectionDialogData::reset();
hgs
parents: 34
diff changeset
  1679
    VideoCollectionViewUtilsData::reset();
hgs
parents: 34
diff changeset
  1680
    VideoListDataModelData::reset();
hgs
parents: 34
diff changeset
  1681
    QVERIFY(allVideos);
hgs
parents: 34
diff changeset
  1682
    setRowCount(3, allVideos->mModel);
hgs
parents: 34
diff changeset
  1683
    // Must have different model than selection dialog has. Otherwise Qt optimizes rowCount calls 
39
hgs
parents: 38
diff changeset
  1684
    // to source model and VideoListDataModelData::mRowCountDecrement doesn't work.
hgs
parents: 38
diff changeset
  1685
    QVERIFY(mTestView->initializeView() == 0);
36
hgs
parents: 34
diff changeset
  1686
    QVERIFY(connect(this, SIGNAL(testSignal2()), mTestView, SLOT(openCollectionViewSlot())));
hgs
parents: 34
diff changeset
  1687
    emit testSignal2();
hgs
parents: 34
diff changeset
  1688
    disconnect(this, SIGNAL(testSignal2()), mTestView, SLOT(openCollectionViewSlot()));
hgs
parents: 34
diff changeset
  1689
    mTestView->activateView(TMPXItemId::InvalidId());
hgs
parents: 34
diff changeset
  1690
    VideoListDataModelData::mRowCountDecrement = 1;
hgs
parents: 34
diff changeset
  1691
    mTestView->mCurrentList->mCurrentLevel = VideoCollectionCommon::ELevelAlbum;
hgs
parents: 34
diff changeset
  1692
    setRowCount(1);
hgs
parents: 34
diff changeset
  1693
    emit testSignal();
hgs
parents: 34
diff changeset
  1694
    QVERIFY(VideoListSelectionDialogData::mSelectionType == VideoListSelectionDialog::EAddToCollection);
hgs
parents: 34
diff changeset
  1695
    QVERIFY(VideoListSelectionDialogData::mSettedMpxId == VideoSortFilterProxyModelData::mOpenedItemId);
hgs
parents: 34
diff changeset
  1696
    QCOMPARE(VideoCollectionViewUtilsData::mLastError, 0);
hgs
parents: 34
diff changeset
  1697
    
hgs
parents: 34
diff changeset
  1698
    disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(addVideosToCollectionSlot()));
hgs
parents: 34
diff changeset
  1699
    
hgs
parents: 34
diff changeset
  1700
    cleanup();
hgs
parents: 34
diff changeset
  1701
}
34
hgs
parents: 30
diff changeset
  1702
36
hgs
parents: 34
diff changeset
  1703
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1704
// testRemoveVideosFromCollectionSlot
hgs
parents: 34
diff changeset
  1705
// ---------------------------------------------------------------------------
hgs
parents: 34
diff changeset
  1706
//
hgs
parents: 34
diff changeset
  1707
void TestListView::testRemoveVideosFromCollectionSlot()
hgs
parents: 34
diff changeset
  1708
{
hgs
parents: 34
diff changeset
  1709
    VideoListSelectionDialogData::reset();
hgs
parents: 34
diff changeset
  1710
    VideoCollectionViewUtilsData::reset();
hgs
parents: 34
diff changeset
  1711
    VideoCollectionUiLoaderData::reset();
hgs
parents: 34
diff changeset
  1712
    HbDocumentLoader::mVideoListWidgetFailure = false;
hgs
parents: 34
diff changeset
  1713
    
hgs
parents: 34
diff changeset
  1714
    init(false);
hgs
parents: 34
diff changeset
  1715
    
hgs
parents: 34
diff changeset
  1716
    QVERIFY(connect(this, SIGNAL(testSignal()), mTestView, SLOT(removeVideosFromCollectionSlot())));
hgs
parents: 34
diff changeset
  1717
    
hgs
parents: 34
diff changeset
  1718
    // Not initialized, no current list
hgs
parents: 34
diff changeset
  1719
    emit testSignal();
hgs
parents: 34
diff changeset
  1720
    
hgs
parents: 34
diff changeset
  1721
    QVERIFY(mTestView->initializeView() == 0);
hgs
parents: 34
diff changeset
  1722
    mTestView->activateView(TMPXItemId::InvalidId());
34
hgs
parents: 30
diff changeset
  1723
    setRowCount(1);
36
hgs
parents: 34
diff changeset
  1724
    
hgs
parents: 34
diff changeset
  1725
    // Wrong level.
hgs
parents: 34
diff changeset
  1726
    mTestView->mCurrentList->mCurrentLevel = VideoCollectionCommon::ELevelCategory;
hgs
parents: 34
diff changeset
  1727
    emit testSignal();
hgs
parents: 34
diff changeset
  1728
    
hgs
parents: 34
diff changeset
  1729
    // No items in model.
hgs
parents: 34
diff changeset
  1730
    mTestView->mCurrentList->mCurrentLevel = VideoCollectionCommon::ELevelDefaultColl;
hgs
parents: 34
diff changeset
  1731
    emit testSignal();
hgs
parents: 34
diff changeset
  1732
hgs
parents: 34
diff changeset
  1733
    // Fail to load selection dialog.
hgs
parents: 34
diff changeset
  1734
    VideoCollectionUiLoaderData::mFindFailure = true;
hgs
parents: 34
diff changeset
  1735
    emit testSignal();
hgs
parents: 34
diff changeset
  1736
    
hgs
parents: 34
diff changeset
  1737
    // Open item is invalid
hgs
parents: 34
diff changeset
  1738
    VideoCollectionUiLoaderData::mFindFailure = false;
hgs
parents: 34
diff changeset
  1739
    VideoSortFilterProxyModelData::mOpenedItemId = TMPXItemId::InvalidId();
hgs
parents: 34
diff changeset
  1740
    emit testSignal();
hgs
parents: 34
diff changeset
  1741
    
hgs
parents: 34
diff changeset
  1742
    // Open item is video!
hgs
parents: 34
diff changeset
  1743
    VideoSortFilterProxyModelData::mOpenedItemId = TMPXItemId(0, KVcxMvcMediaTypeVideo);
hgs
parents: 34
diff changeset
  1744
    emit testSignal();
hgs
parents: 34
diff changeset
  1745
    
hgs
parents: 34
diff changeset
  1746
    // Good case.
hgs
parents: 34
diff changeset
  1747
    VideoSortFilterProxyModelData::mOpenedItemId = TMPXItemId(0, KVcxMvcMediaTypeAlbum);
hgs
parents: 34
diff changeset
  1748
    emit testSignal();
hgs
parents: 34
diff changeset
  1749
    
hgs
parents: 34
diff changeset
  1750
    disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(removeVideosFromCollectionSlot()));
hgs
parents: 34
diff changeset
  1751
    
hgs
parents: 34
diff changeset
  1752
    cleanup();
hgs
parents: 34
diff changeset
  1753
}
hgs
parents: 34
diff changeset
  1754
30
hgs
parents:
diff changeset
  1755
// End of file