videocollection/videocollectionview/tsrc/testlistview/src/testlistview.cpp
changeset 46 adbe7d5ba2f5
parent 28 c48470be1ba7
child 47 45e72b57a2fd
equal deleted inserted replaced
28:c48470be1ba7 46:adbe7d5ba2f5
    13 *
    13 *
    14 * Description:	 tester	for	methods	in VideoListView
    14 * Description:	 tester	for	methods	in VideoListView
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 // Version : %version: 44 %
    18 // Version : %version: 46 %
    19 
    19 
    20 #define private public
    20 #define private public
    21 #include "videoservices.h"
    21 #include "videoservices.h"
    22 #include "videosortfilterproxymodel.h"
    22 #include "videosortfilterproxymodel.h"
    23 #include "videolistwidget.h"
    23 #include "videolistwidget.h"
   846 	init();
   846 	init();
   847     mTestView->activateView(TMPXItemId::InvalidId());
   847     mTestView->activateView(TMPXItemId::InvalidId());
   848     sortMenu = mUiLoader->findWidget<HbMenu>(DOCML_NAME_SORT_MENU);
   848     sortMenu = mUiLoader->findWidget<HbMenu>(DOCML_NAME_SORT_MENU);
   849     sortMenuAction->setMenu(sortMenu);
   849     sortMenuAction->setMenu(sortMenu);
   850     HbMenuData::mMenuAction = sortMenuAction;
   850     HbMenuData::mMenuAction = sortMenuAction;
   851     VideoSortFilterProxyModel& model = mTestView->mCurrentList->getModel();
   851     VideoSortFilterProxyModel* model = mTestView->mCurrentList->getModel();
   852 	QVERIFY(action != 0);
   852 	QVERIFY(action != 0);
   853 	mUiLoader->findWidget<HbMenu>(DOCML_NAME_OPTIONS_MENU)->setActiveAction(sortMenuAction);
   853 	mUiLoader->findWidget<HbMenu>(DOCML_NAME_OPTIONS_MENU)->setActiveAction(sortMenuAction);
   854 	HbAction* sortAction = mUiLoader->findObject<HbAction>(DOCML_NAME_SORT_BY_NAME);
   854 	HbAction* sortAction = mUiLoader->findObject<HbAction>(DOCML_NAME_SORT_BY_NAME);
   855 	QVERIFY(sortAction != 0);
   855 	QVERIFY(sortAction != 0);
   856 	sortMenu->setActiveAction(sortAction);
   856 	sortMenu->setActiveAction(sortAction);
   857 	model.setSortRole(1);
   857 	model->setSortRole(1);
   858 	connect(this, SIGNAL(testObjectReadySignal(QObject*, const QString)), mTestView, SLOT(objectReadySlot(QObject*, const QString)));
   858 	connect(this, SIGNAL(testObjectReadySignal(QObject*, const QString)), mTestView, SLOT(objectReadySlot(QObject*, const QString)));
   859 	emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_DATE), DOCML_NAME_SORT_BY_DATE);
   859 	emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_DATE), DOCML_NAME_SORT_BY_DATE);
   860     emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_NAME), DOCML_NAME_SORT_BY_NAME);
   860     emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_NAME), DOCML_NAME_SORT_BY_NAME);
   861     emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_NUMBER_OF_ITEMS), DOCML_NAME_SORT_BY_NUMBER_OF_ITEMS);
   861     emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_NUMBER_OF_ITEMS), DOCML_NAME_SORT_BY_NUMBER_OF_ITEMS);
   862     emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_SIZE), DOCML_NAME_SORT_BY_SIZE);
   862     emit testObjectReadySignal(mUiLoader->findObject<QObject>(DOCML_NAME_SORT_BY_SIZE), DOCML_NAME_SORT_BY_SIZE);
   883     QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyTitle);
   883     QCOMPARE(VideoSortFilterProxyModelData::mSortRole, (int)VideoCollectionCommon::KeyTitle);
   884     QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
   884     QCOMPARE(VideoSortFilterProxyModelData::mSortOrder, Qt::AscendingOrder);
   885     QVERIFY(VideoSortFilterProxyModelData::mSortAsync);
   885     QVERIFY(VideoSortFilterProxyModelData::mSortAsync);
   886 
   886 
   887     // test that after changing the sort role, the order is also switched to ascending.
   887     // test that after changing the sort role, the order is also switched to ascending.
   888     model.doSorting(model.sortRole(), Qt::DescendingOrder);
   888     model->doSorting(model->sortRole(), Qt::DescendingOrder);
   889     sortAction = mUiLoader->findObject<HbAction>(DOCML_NAME_SORT_BY_DATE);
   889     sortAction = mUiLoader->findObject<HbAction>(DOCML_NAME_SORT_BY_DATE);
   890     QVERIFY(sortAction != 0);
   890     QVERIFY(sortAction != 0);
   891     sortMenu->setActiveAction(sortAction);
   891     sortMenu->setActiveAction(sortAction);
   892 
   892 
   893     emit testSignal(0);
   893     emit testSignal(0);
   964 //
   964 //
   965 void TestListView::testDeleteItemsSlot()
   965 void TestListView::testDeleteItemsSlot()
   966 {
   966 {
   967     init();
   967     init();
   968     connect( this, SIGNAL(testSignal()), mTestView, SLOT(deleteItemsSlot()) );
   968     connect( this, SIGNAL(testSignal()), mTestView, SLOT(deleteItemsSlot()) );
   969     ////////////
       
   970     // no current list
       
   971     ////////////
       
   972     VideoListWidget *backup = mTestView->mCurrentList;
       
   973     mTestView->mCurrentList = 0;
       
   974     emit testSignal();
       
   975     QCOMPARE(VideoListSelectionDialogData::mMultiSelectionLaunchCount, 0);
       
   976     mTestView->mCurrentList = backup;
       
   977     mTestView->activateView(TMPXItemId::InvalidId());
       
   978     
   969     
   979     ////////////
   970     ////////////
   980     // dialog loading fails
   971     // dialog loading fails
   981     ////////////
   972     ////////////
   982     VideoCollectionUiLoaderData::mFailDialogLoad = true;
   973     VideoCollectionUiLoaderData::mFailDialogLoad = true;
  1117     serviceUtil->setCurrentService(true);
  1108     serviceUtil->setCurrentService(true);
  1118     videoServices->mCurrentService = VideoServices::EBrowse;
  1109     videoServices->mCurrentService = VideoServices::EBrowse;
  1119 	init(true);
  1110 	init(true);
  1120 	connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
  1111 	connect(this, SIGNAL(testSignal()), mTestView, SLOT(aboutToShowMainMenuSlot()));
  1121     mTestView->activateView(TMPXItemId::InvalidId());
  1112     mTestView->activateView(TMPXItemId::InvalidId());
  1122     setRowCount(3, &mTestView->mCurrentList->getModel());
  1113     setRowCount(3, mTestView->mCurrentList->getModel());
  1123     emit testSignal();
  1114     emit testSignal();
  1124     QVERIFY(isActionVisible(DOCML_NAME_DELETE_MULTIPLE));
  1115     QVERIFY(isActionVisible(DOCML_NAME_DELETE_MULTIPLE));
  1125     QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_DATE));
  1116     QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_DATE));
  1126     QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_NAME));
  1117     QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_NAME));
  1127     QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_SIZE));
  1118     QVERIFY(isActionVisible(DOCML_NAME_SORT_BY_SIZE));
  1468     disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(doDelayedsSlot()));
  1459     disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(doDelayedsSlot()));
  1469     cleanup();
  1460     cleanup();
  1470 }
  1461 }
  1471 
  1462 
  1472 // ---------------------------------------------------------------------------
  1463 // ---------------------------------------------------------------------------
  1473 // testOpenNewAlbumSlot
       
  1474 // ---------------------------------------------------------------------------
       
  1475 //
       
  1476 void TestListView::testOpenNewAlbumSlot()
       
  1477 {
       
  1478     init(false);
       
  1479     
       
  1480     QVERIFY(connect(this, SIGNAL(testSignal(const QModelIndex &, int, int)), mTestView, SLOT(openNewAlbumSlot(const QModelIndex &, int, int))));
       
  1481 
       
  1482     QModelIndex index;
       
  1483     
       
  1484     // Not initialized, no mCurrentList
       
  1485     emit testSignal(index, 0, 0);
       
  1486     // no verification needed, this tests that method does not crash if mCurrentList is not set.
       
  1487     
       
  1488     // Good case
       
  1489     QVERIFY(mTestView->initializeView() == 0);
       
  1490     mTestView->activateView(TMPXItemId::InvalidId());
       
  1491     setRowCount(1);
       
  1492     VideoListWidgetData::mEmitActivatedIndex = QModelIndex();
       
  1493     emit testSignal(index, 0, 0);
       
  1494     
       
  1495     QModelIndex expectedIndex = mTestView->mCurrentList->mModel->index(0,0);
       
  1496     QCOMPARE(VideoListWidgetData::mEmitActivatedIndex, expectedIndex);
       
  1497     
       
  1498     VideoListWidgetData::mEmitActivatedIndex = QModelIndex();
       
  1499     // Invalid index
       
  1500     emit testSignal(index, -1, 0);
       
  1501     QCOMPARE(VideoListWidgetData::mEmitActivatedIndex, QModelIndex());
       
  1502     
       
  1503     disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(doDelayedsSlot()));
       
  1504     cleanup();
       
  1505 }
       
  1506 
       
  1507 // ---------------------------------------------------------------------------
       
  1508 // testAboutToChangeOrientationSlot
  1464 // testAboutToChangeOrientationSlot
  1509 // ---------------------------------------------------------------------------
  1465 // ---------------------------------------------------------------------------
  1510 //
  1466 //
  1511 void TestListView::testAboutToChangeOrientationSlot()
  1467 void TestListView::testAboutToChangeOrientationSlot()
  1512 {
  1468 {
  1550 //
  1506 //
  1551 void TestListView::testCreateCollectionSlot()
  1507 void TestListView::testCreateCollectionSlot()
  1552 {
  1508 {
  1553     init(false);
  1509     init(false);
  1554     QVERIFY(connect(this, SIGNAL(testSignal()), mTestView, SLOT(createCollectionSlot())));
  1510     QVERIFY(connect(this, SIGNAL(testSignal()), mTestView, SLOT(createCollectionSlot())));
  1555 
  1511   
  1556     HbInputDialog *dialog = new HbInputDialog(); 
  1512     // dialog finding fails
  1557     
  1513     VideoCollectionUiLoaderData::mFailDialogLoad = true;
  1558     // not initialized, no mCurrentList
  1514     emit testSignal();
  1559     emit testSignal();
  1515     QCOMPARE(VideoListSelectionDialogData::mMultiSelectionLaunchCount, 0);
  1560     QCOMPARE(HbInputDialog::mOpenCallCount, 0);
  1516 	QCOMPARE(VideoListSelectionDialogData::mSelectionType, -1);
  1561     QVERIFY(VideoSortFilterProxyModelData::mLastAddedAlbumName == "");
  1517     // dialog finding succeeds
  1562 
  1518     VideoCollectionUiLoaderData::mFailDialogLoad = false;
  1563     QVERIFY(mTestView->initializeView() == 0);
  1519     emit testSignal();    
  1564     mTestView->activateView(TMPXItemId::InvalidId());
  1520     QVERIFY(VideoListSelectionDialogData::mSettedMpxId == TMPXItemId::InvalidId());
  1565     
  1521     QCOMPARE(VideoListSelectionDialogData::mSelectionType, (int)VideoListSelectionDialog::ECreateCollection);
  1566     // dialog canceled
  1522     QCOMPARE(VideoListSelectionDialogData::mMultiSelectionLaunchCount, 1);
  1567     HbInputDialog::mValueCallCount = 0;
  1523  
  1568     HbInputDialog::mOpenCallCount = 0;
       
  1569     emit testSignal();
       
  1570     dialog->emitDialogFinished(mTestView, SLOT(createCollectionDialogFinished(HbAction *)), 1);
       
  1571     QVERIFY(VideoSortFilterProxyModelData::mLastAddedAlbumName == "");
       
  1572     QCOMPARE(HbInputDialog::mValueCallCount, 1);
       
  1573     QCOMPARE(HbInputDialog::mOpenCallCount, 1);
       
  1574     
       
  1575     // empty name
       
  1576     HbInputDialog::mValueCallCount = 0;
       
  1577     HbInputDialog::mValueReturnValue = "";
       
  1578     HbInputDialog::mOpenCallCount = 0;
       
  1579     emit testSignal();
       
  1580     dialog->emitDialogFinished(mTestView, SLOT(createCollectionDialogFinished(HbAction *)), 0);
       
  1581     QVERIFY(VideoSortFilterProxyModelData::mLastAddedAlbumName == "");
       
  1582     QCOMPARE(HbInputDialog::mValueCallCount, 1);
       
  1583     QCOMPARE(HbInputDialog::mOpenCallCount, 1);
       
  1584     
       
  1585     // Good case.
       
  1586     HbInputDialog::mValueCallCount = 0;
       
  1587     HbInputDialog::mValueReturnValue = "testAlbum";
       
  1588     HbInputDialog::mOpenCallCount = 0;
       
  1589     emit testSignal();
       
  1590     dialog->emitDialogFinished(mTestView, SLOT(createCollectionDialogFinished(HbAction *)), 0);
       
  1591     QVERIFY(VideoSortFilterProxyModelData::mLastAddedAlbumName == "testAlbum");
       
  1592     QCOMPARE(HbInputDialog::mValueCallCount, 1);
       
  1593     QCOMPARE(HbInputDialog::mOpenCallCount, 1);
       
  1594     
       
  1595     HbInputDialog::mValueCallCount = 0;
       
  1596     HbInputDialog::mValueReturnValue = "";
       
  1597     HbInputDialog::mOpenCallCount = 0;
       
  1598     VideoSortFilterProxyModelData::mLastAddedAlbumName = "";    
       
  1599     disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(createCollectionSlot()));
  1524     disconnect(this, SIGNAL(testSignal()), mTestView, SLOT(createCollectionSlot()));
  1600     cleanup();
  1525     cleanup();
  1601 }
  1526 }
  1602 
  1527 
  1603 // ---------------------------------------------------------------------------
  1528 // ---------------------------------------------------------------------------