videoplayerapp/videoplayerengine/tsrc/testvideoplayerengine/src/testvideoplayerengine.cpp
changeset 62 0e1e938beb1a
parent 52 e3cecb93e76a
equal deleted inserted replaced
59:a76e86df7ccd 62:0e1e938beb1a
    13 *
    13 *
    14 * Description:  Videoplayerengine test class implementation.
    14 * Description:  Videoplayerengine test class implementation.
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 // Version : %version: da1mmcf#15 %
    18 // Version : %version: 18 %
    19 
    19 
    20 // INCLUDES
    20 // INCLUDES
    21 #include <QtTest/QtTest>
    21 #include <QtTest/QtTest>
    22 #include <qdebug.h>
    22 #include <qdebug.h>
    23 #include "stub/inc/hbinstance.h"
    23 #include "stub/inc/hbinstance.h"
    29 #include <qabstractitemmodel.h>
    29 #include <qabstractitemmodel.h>
    30 #include <xqsharablefile.h>
    30 #include <xqsharablefile.h>
    31 #include <f32file.h>
    31 #include <f32file.h>
    32 #include <qfile.h>
    32 #include <qfile.h>
    33 
    33 
       
    34 #include "afactivitystorage.h"
    34 #include "mpxhbvideocommondefs.h"
    35 #include "mpxhbvideocommondefs.h"
    35 #include "testvideoplayerengine.h"
    36 #include "testvideoplayerengine.h"
    36 #include "stub/inc/mpxviewpluginqt.h"
    37 #include "stub/inc/mpxviewpluginqt.h"
    37 #include "stub/inc/videoservices.h"
    38 #include "stub/inc/videoservices.h"
    38 #include "stub/inc/xqpluginloader.h"
    39 #include "stub/inc/xqpluginloader.h"
   223     QVERIFY( mTestObject->mPlaybackWrapper == 0 );
   224     QVERIFY( mTestObject->mPlaybackWrapper == 0 );
   224     QVERIFY( mTestObject->mVideoServices == 0 );
   225     QVERIFY( mTestObject->mVideoServices == 0 );
   225     QVERIFY( mTestObject->mIsService == true );
   226     QVERIFY( mTestObject->mIsService == true );
   226     QVERIFY( VideoServices::mReferenceCount == 0 );
   227     QVERIFY( VideoServices::mReferenceCount == 0 );
   227 
   228 
       
   229     AfActivityStorage::mLastHandledActivity = "";
       
   230     AfActivityStorage::mActivityCount = 0;
       
   231     
   228     mTestObject->initialize();
   232     mTestObject->initialize();
   229 
   233 
   230     QVERIFY( mTestObject->mCurrentViewPlugin == 0 );
   234     QVERIFY( mTestObject->mCurrentViewPlugin == 0 );
   231     QVERIFY( mTestObject->mPlaybackViewPlugin != 0 );
   235     QVERIFY( mTestObject->mPlaybackViewPlugin != 0 );
   232     QVERIFY( mTestObject->mCollectionViewPlugin == 0 );
   236     QVERIFY( mTestObject->mCollectionViewPlugin == 0 );
   233     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   237     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   234     QVERIFY( mTestObject->mPlaybackWrapper != 0 );
   238     QVERIFY( mTestObject->mPlaybackWrapper != 0 );
   235     QVERIFY( mTestObject->mVideoServices != 0 );
   239     QVERIFY( mTestObject->mVideoServices != 0 );
   236     QVERIFY( mTestObject->mIsService == true );
   240     QVERIFY( mTestObject->mIsService == true );
   237     QVERIFY( VideoServices::mReferenceCount == 1 );
   241     QVERIFY( VideoServices::mReferenceCount == 1 );
   238 
       
   239     QVERIFY( mTestObject->mCollectionViewPlugin != mTestObject->mPlaybackViewPlugin );
   242     QVERIFY( mTestObject->mCollectionViewPlugin != mTestObject->mPlaybackViewPlugin );
       
   243     // during service initialization, we do not remove possible exiting activation state
       
   244     QVERIFY( AfActivityStorage::mActivityCount == 0 );
       
   245     QVERIFY( AfActivityStorage::mLastHandledActivity.isEmpty() );
   240 
   246 
   241     cleanup();
   247     cleanup();
   242 
   248 
   243     QVERIFY( VideoServices::mReferenceCount == 0 );
   249     QVERIFY( VideoServices::mReferenceCount == 0 );
   244 }
   250 }
   265     QVERIFY( mTestObject->mCollectionViewPlugin != 0 );
   271     QVERIFY( mTestObject->mCollectionViewPlugin != 0 );
   266     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   272     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   267     QVERIFY( mTestObject->mVideoServices == 0 );
   273     QVERIFY( mTestObject->mVideoServices == 0 );
   268     QVERIFY( mTestObject->mIsService == false );
   274     QVERIFY( mTestObject->mIsService == false );
   269     QVERIFY( VideoServices::mReferenceCount == 0 );
   275     QVERIFY( VideoServices::mReferenceCount == 0 );
   270 
   276 /*
   271     mCurrentViewPlugin = mTestObject->mCurrentViewPlugin;
   277     mCurrentViewPlugin = mTestObject->mCurrentViewPlugin;
   272     mPlaybackViewPlugin = mTestObject->mPlaybackViewPlugin;
   278     mPlaybackViewPlugin = mTestObject->mPlaybackViewPlugin;
   273     mCollectionViewPlugin = mTestObject->mCollectionViewPlugin;
   279     mCollectionViewPlugin = mTestObject->mCollectionViewPlugin;
   274     mFileDetailsViewPlugin = mTestObject->mFileDetailsViewPlugin;
   280     mFileDetailsViewPlugin = mTestObject->mFileDetailsViewPlugin;
   275 
   281 
   278     QVERIFY( mCurrentViewPlugin == mTestObject->mCurrentViewPlugin );
   284     QVERIFY( mCurrentViewPlugin == mTestObject->mCurrentViewPlugin );
   279     QVERIFY( mPlaybackViewPlugin == mTestObject->mPlaybackViewPlugin );
   285     QVERIFY( mPlaybackViewPlugin == mTestObject->mPlaybackViewPlugin );
   280     QVERIFY( mCollectionViewPlugin == mTestObject->mCollectionViewPlugin );
   286     QVERIFY( mCollectionViewPlugin == mTestObject->mCollectionViewPlugin );
   281     QVERIFY( mFileDetailsViewPlugin == mTestObject->mFileDetailsViewPlugin );
   287     QVERIFY( mFileDetailsViewPlugin == mTestObject->mFileDetailsViewPlugin );
   282     QVERIFY( VideoServices::mReferenceCount == 0 );
   288     QVERIFY( VideoServices::mReferenceCount == 0 );
   283 
   289 */
   284     cleanup();
   290     cleanup();
   285 
   291 
   286     QVERIFY( VideoServices::mReferenceCount == 0 );
   292     QVERIFY( VideoServices::mReferenceCount == 0 );
   287 }
   293 }
   288 
   294 
   880 {
   886 {
   881     MPX_ENTER_EXIT(_L("TestVideoPlayerEngine::testInitialize()"));
   887     MPX_ENTER_EXIT(_L("TestVideoPlayerEngine::testInitialize()"));
   882        
   888        
   883     init();
   889     init();
   884     QVERIFY( !mTestObject.isNull() );
   890     QVERIFY( !mTestObject.isNull() );
       
   891     AfActivityStorage::mLastHandledActivity = "";
       
   892     AfActivityStorage::mActivityCount = 0;
   885     
   893     
   886     mTestObject->initialize();
   894     mTestObject->initialize();
   887     
   895     
   888     // by default, colleciton view plugin is activated
   896     // by default, colleciton view plugin is activated
   889     QVERIFY( mTestObject );
   897     QVERIFY( mTestObject );
   892     QVERIFY( mTestObject->mCollectionViewPlugin );
   900     QVERIFY( mTestObject->mCollectionViewPlugin );
   893     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   901     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   894     QVERIFY( mTestObject->mPlaybackWrapper );
   902     QVERIFY( mTestObject->mPlaybackWrapper );
   895     QVERIFY( mTestObject->mCurrentViewPlugin->activated() );
   903     QVERIFY( mTestObject->mCurrentViewPlugin->activated() );
   896     QVERIFY( mTestObject->mCollectionViewPlugin->activated() );
   904     QVERIFY( mTestObject->mCollectionViewPlugin->activated() );
       
   905     QVERIFY( AfActivityStorage::mActivityCount == -1 );
       
   906     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
   897     
   907     
   898     cleanup();
   908     cleanup();
   899     init();
   909     init();
   900     QVERIFY( !mTestObject.isNull() );
   910     QVERIFY( !mTestObject.isNull() );
   901     
   911     QHash<QString, QVariant> activityHash; 
       
   912     
       
   913     // playback plugin 
       
   914     AfActivityStorage::mLastHandledActivity = "";
       
   915     AfActivityStorage::mActivityCount = 0;
   902     QVariant data = int( MpxHbVideoCommon::PlaybackView );
   916     QVariant data = int( MpxHbVideoCommon::PlaybackView );
   903     // playback plugin 
   917     activityHash[KEY_VIEWPLUGIN_TYPE] = data;
   904     VideoActivityState::instance().setActivityData( data, KEY_VIEWPLUGIN_TYPE );
   918     AfActivityStorage::mDataToReturn = activityHash;    
   905     mTestObject->initialize();
   919     mTestObject->initialize();
   906     QVERIFY( mTestObject );
   920     QVERIFY( mTestObject );
   907     QVERIFY( mTestObject->mCurrentViewPlugin );
   921     QVERIFY( mTestObject->mCurrentViewPlugin );
   908     QVERIFY( mTestObject->mPlaybackViewPlugin );
   922     QVERIFY( mTestObject->mPlaybackViewPlugin );
   909     QVERIFY( mTestObject->mCollectionViewPlugin == 0 );
   923     QVERIFY( mTestObject->mCollectionViewPlugin == 0 );
   910     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   924     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   911     QVERIFY( mTestObject->mPlaybackWrapper );
   925     QVERIFY( mTestObject->mPlaybackWrapper );
   912     QVERIFY( mTestObject->mCurrentViewPlugin->activated() );
   926     QVERIFY( mTestObject->mCurrentViewPlugin->activated() );
   913     QVERIFY( mTestObject->mPlaybackViewPlugin->activated() );
   927     QVERIFY( mTestObject->mPlaybackViewPlugin->activated() );
       
   928     QVERIFY( AfActivityStorage::mActivityCount == -1 );
       
   929     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
   914     
   930     
   915     cleanup();
   931     cleanup();
   916     init();
   932     init();
   917     QVERIFY( !mTestObject.isNull() );
   933     QVERIFY( !mTestObject.isNull() );
   918     
   934     
   919     // only collection view and playback view are accepted, so all other cases 
   935     // only collection view and playback view are accepted, so all other cases 
   920     // ends up into default: collectionview
   936     // ends up into default: collectionview
       
   937     AfActivityStorage::mLastHandledActivity = "";
       
   938     AfActivityStorage::mActivityCount = 0;
   921     data = int( MpxHbVideoCommon::VideoDetailsView );
   939     data = int( MpxHbVideoCommon::VideoDetailsView );
   922     VideoActivityState::instance().setActivityData( data, KEY_VIEWPLUGIN_TYPE );
   940     activityHash[KEY_VIEWPLUGIN_TYPE] = data;
       
   941     AfActivityStorage::mDataToReturn = activityHash;  
   923     mTestObject->initialize();
   942     mTestObject->initialize();
   924     QVERIFY( mTestObject );
   943     QVERIFY( mTestObject );
   925     QVERIFY( mTestObject->mCurrentViewPlugin );
   944     QVERIFY( mTestObject->mCurrentViewPlugin );
   926     QVERIFY( mTestObject->mPlaybackViewPlugin == 0 );
   945     QVERIFY( mTestObject->mPlaybackViewPlugin == 0 );
   927     QVERIFY( mTestObject->mCollectionViewPlugin );
   946     QVERIFY( mTestObject->mCollectionViewPlugin );
   928     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   947     QVERIFY( mTestObject->mFileDetailsViewPlugin == 0 );
   929     QVERIFY( mTestObject->mPlaybackWrapper );
   948     QVERIFY( mTestObject->mPlaybackWrapper );
   930     QVERIFY( mTestObject->mCurrentViewPlugin->activated() );
   949     QVERIFY( mTestObject->mCurrentViewPlugin->activated() );
   931     QVERIFY( mTestObject->mCollectionViewPlugin->activated() );
   950     QVERIFY( mTestObject->mCollectionViewPlugin->activated() );
   932     
   951     QVERIFY( AfActivityStorage::mActivityCount == -1 );
   933     cleanup();
   952     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
   934     
   953     
   935 }
   954     cleanup();
   936 
   955     
   937 void TestVideoPlayerEngine::testHandleQuitWihtActivityData()
   956 }
       
   957 
       
   958 void TestVideoPlayerEngine::testHandleQuitWithActivityData()
   938 {
   959 {
   939     MPX_ENTER_EXIT(_L("TestVideoPlayerEngine::testHandleQuitWihtActivityData()"));
   960     MPX_ENTER_EXIT(_L("TestVideoPlayerEngine::testHandleQuitWihtActivityData()"));
   940     
   961     
   941     // we make sure that engine saves correct plugin type before exit
   962     // we make sure that engine saves correct plugin type before exit
   942     // using VideoActivityState since value is saved there before actually
   963     // using VideoActivityState since value is saved there before actually
   943     // being save to activitymanager
   964     // being save to activitymanager
   944     
   965     QHash<QString, QVariant> activityHash; 
   945     init();
   966     QVariant data = int( MpxHbVideoCommon::CollectionView );
       
   967     activityHash[KEY_VIEWPLUGIN_TYPE] = data;  
       
   968     AfActivityStorage::mDataToReturn = activityHash;  
       
   969     init();
       
   970     
       
   971     AfActivityStorage::mLastHandledActivity = "";
       
   972     AfActivityStorage::mActivityCount = 0;
   946     QVERIFY( !mTestObject.isNull() );
   973     QVERIFY( !mTestObject.isNull() );
   947     connect( this, SIGNAL(aboutToQuit()), mTestObject, SLOT(handleQuit()) );
   974     connect( this, SIGNAL(aboutToQuit()), mTestObject, SLOT(handleQuit()) );
   948 
   975 
   949     mTestObject->initialize();
   976     mTestObject->initialize();
   950     VideoActivityState::mAllDataGetCount = 0;
   977     VideoActivityState::mAllDataGetCount = 0;
   951     
   978     QVERIFY( AfActivityStorage::mActivityCount == -1 );
       
   979     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
       
   980     AfActivityStorage::mLastHandledActivity = "";
   952     emit aboutToQuit();
   981     emit aboutToQuit();
   953        
   982       
   954     QVariant data = QVariant();
   983     data = QVariant();    
   955     data = VideoActivityState::instance().getActivityData( KEY_VIEWPLUGIN_TYPE );
   984     data = VideoActivityState::instance().getActivityData( KEY_VIEWPLUGIN_TYPE );
   956     QVERIFY( data.isValid() );
   985     QVERIFY( data.isValid() );
   957     QVERIFY( data.toInt() == MpxHbVideoCommon::CollectionView );
   986     QVERIFY( data.toInt() == MpxHbVideoCommon::CollectionView );
   958     QVERIFY( VideoActivityState::mAllDataGetCount == 1 );
   987     QVERIFY( VideoActivityState::mAllDataGetCount == 1 );
       
   988     QVERIFY( AfActivityStorage::mActivityCount == 0 );
       
   989     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
   959     
   990     
   960     cleanup();
   991     cleanup();
   961     init();
   992     init();
   962     QVERIFY( ! mTestObject.isNull() );
   993     QVERIFY( ! mTestObject.isNull() );
   963     connect( this, SIGNAL(aboutToQuit()), mTestObject, SLOT(handleQuit()) );
   994     connect( this, SIGNAL(aboutToQuit()), mTestObject, SLOT(handleQuit()) );
   964     
   995     
       
   996     
   965     data = int(MpxHbVideoCommon::PlaybackView);
   997     data = int(MpxHbVideoCommon::PlaybackView);
   966     VideoActivityState::instance().setActivityData( data, KEY_VIEWPLUGIN_TYPE );
   998     activityHash[KEY_VIEWPLUGIN_TYPE] = data;
       
   999     data.clear();
       
  1000     data = bool( true );
       
  1001     activityHash[KEY_LAST_LOCAL_PLAYBACK] = data;
       
  1002     AfActivityStorage::mDataToReturn = activityHash;  
       
  1003     AfActivityStorage::mLastHandledActivity = "";
       
  1004     AfActivityStorage::mActivityCount = 0;
       
  1005     
   967     mTestObject->initialize();
  1006     mTestObject->initialize();
   968     VideoActivityState::mAllDataGetCount = 0;
  1007     VideoActivityState::mAllDataGetCount = 0;
       
  1008     QVERIFY( AfActivityStorage::mActivityCount == -1 );
       
  1009     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
       
  1010     AfActivityStorage::mLastHandledActivity = "";
   969     
  1011     
   970     emit aboutToQuit();
  1012     emit aboutToQuit();
   971     
  1013     
   972     data = QVariant();
  1014     data = QVariant();
   973     data = VideoActivityState::instance().getActivityData( KEY_VIEWPLUGIN_TYPE );
  1015     data = VideoActivityState::instance().getActivityData( KEY_VIEWPLUGIN_TYPE );
   974     QVERIFY( data.isValid() );
  1016     QVERIFY( data.isValid() );
   975     QVERIFY( data.toInt() == MpxHbVideoCommon::PlaybackView );
  1017     QVERIFY( data.toInt() == MpxHbVideoCommon::PlaybackView );
   976     QVERIFY( VideoActivityState::mAllDataGetCount == 1 );
  1018     QVERIFY( VideoActivityState::mAllDataGetCount == 1 );
       
  1019     QVERIFY( AfActivityStorage::mActivityCount == 0 );
       
  1020     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
   977     
  1021     
   978     cleanup();
  1022     cleanup();
   979     init();
  1023     init();
   980     QVERIFY( ! mTestObject.isNull() );
  1024     QVERIFY( ! mTestObject.isNull() );
   981     connect( this, SIGNAL(aboutToQuit()), mTestObject, SLOT(handleQuit()) );
  1025     connect( this, SIGNAL(aboutToQuit()), mTestObject, SLOT(handleQuit()) );
   982     
  1026     activityHash.clear();
       
  1027     data.clear();
   983     data = int( MpxHbVideoCommon::VideoDetailsView );
  1028     data = int( MpxHbVideoCommon::VideoDetailsView );
   984     VideoActivityState::instance().setActivityData( data, KEY_VIEWPLUGIN_TYPE );
  1029     activityHash[KEY_VIEWPLUGIN_TYPE] = data;
       
  1030     AfActivityStorage::mDataToReturn = activityHash;  
       
  1031     AfActivityStorage::mLastHandledActivity = "";
       
  1032     AfActivityStorage::mActivityCount = 0;
       
  1033     
   985     mTestObject->initialize();
  1034     mTestObject->initialize();
   986     VideoActivityState::mAllDataGetCount = 0;
  1035     VideoActivityState::mAllDataGetCount = 0;
       
  1036     QVERIFY( AfActivityStorage::mActivityCount == -1 );
       
  1037     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
       
  1038     AfActivityStorage::mLastHandledActivity = "";      
   987     
  1039     
   988     emit aboutToQuit();
  1040     emit aboutToQuit();
   989        
  1041        
   990     data = QVariant();
  1042     data = QVariant();
   991     data = VideoActivityState::instance().getActivityData( KEY_VIEWPLUGIN_TYPE );
  1043     data = VideoActivityState::instance().getActivityData( KEY_VIEWPLUGIN_TYPE );
   992     QVERIFY( data.isValid() );
  1044     QVERIFY( data.isValid() );
   993     QVERIFY( data.toInt() == MpxHbVideoCommon::CollectionView );
  1045     QVERIFY( data.toInt() == MpxHbVideoCommon::CollectionView );
   994     QVERIFY( VideoActivityState::mAllDataGetCount == 1 );
  1046     QVERIFY( VideoActivityState::mAllDataGetCount == 1 );
       
  1047     QVERIFY( AfActivityStorage::mActivityCount == 0 );
       
  1048     QVERIFY( AfActivityStorage::mLastHandledActivity == ACTIVITY_VIDEOPLAYER_MAINVIEW );
   995     
  1049     
   996     cleanup();
  1050     cleanup();
   997 }
  1051 }
   998 
  1052 
   999 
  1053