tsrc/unittest/unittest_mediamodel/unittest_mediamodel.cpp
author hgs
Mon, 20 Sep 2010 12:39:08 +0530
changeset 65 ccee5c4b0de4
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
65
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: 
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#include "unittest_mediamodel.h"
hgs
parents:
diff changeset
    19
#include "glxmediamodel.h"
hgs
parents:
diff changeset
    20
#include "glxmlwrapper.h"
hgs
parents:
diff changeset
    21
#include "glxmodelparm.h"
hgs
parents:
diff changeset
    22
#include "glxcollectionpluginall.hrh"
hgs
parents:
diff changeset
    23
#include "hbicon.h"
hgs
parents:
diff changeset
    24
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    27
// initTestCase
hgs
parents:
diff changeset
    28
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    29
//
hgs
parents:
diff changeset
    30
void TestGlxMediaModel::initTestCase()
hgs
parents:
diff changeset
    31
{    
hgs
parents:
diff changeset
    32
    GlxModelParm modelParm;
hgs
parents:
diff changeset
    33
    modelParm.setCollection( KGlxCollectionPluginAllImplementationUid );
hgs
parents:
diff changeset
    34
    modelParm.setDepth(0);
hgs
parents:
diff changeset
    35
    modelParm.setContextMode( GlxContextLsGrid ) ;
hgs
parents:
diff changeset
    36
    mModel = new GlxMediaModel( modelParm );
hgs
parents:
diff changeset
    37
    QTest::qWait(2000);
hgs
parents:
diff changeset
    38
    
hgs
parents:
diff changeset
    39
    QVERIFY( mModel );
hgs
parents:
diff changeset
    40
    QVERIFY( mModel->mMLWrapper );
hgs
parents:
diff changeset
    41
    QVERIFY( mModel->mDRMUtilityWrapper );
hgs
parents:
diff changeset
    42
    QVERIFY( mModel->m_DefaultIcon );
hgs
parents:
diff changeset
    43
    QVERIFY( mModel->m_CorruptIcon );
hgs
parents:
diff changeset
    44
    QCOMPARE( mModel->thumbnailPopulatedFlag, false );
hgs
parents:
diff changeset
    45
    QCOMPARE( mModel->mPaintPage, true );
hgs
parents:
diff changeset
    46
}
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    49
// init
hgs
parents:
diff changeset
    50
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    51
//
hgs
parents:
diff changeset
    52
void TestGlxMediaModel::init()
hgs
parents:
diff changeset
    53
{
hgs
parents:
diff changeset
    54
    
hgs
parents:
diff changeset
    55
}
hgs
parents:
diff changeset
    56
hgs
parents:
diff changeset
    57
void TestGlxMediaModel::rowCountTestCase()
hgs
parents:
diff changeset
    58
{
hgs
parents:
diff changeset
    59
    QVERIFY( mModel->rowCount() >= 0 );
hgs
parents:
diff changeset
    60
}
hgs
parents:
diff changeset
    61
hgs
parents:
diff changeset
    62
void TestGlxMediaModel::columnCountTestCase()
hgs
parents:
diff changeset
    63
{
hgs
parents:
diff changeset
    64
    QCOMPARE( mModel->columnCount(), 1 );
hgs
parents:
diff changeset
    65
}
hgs
parents:
diff changeset
    66
hgs
parents:
diff changeset
    67
void TestGlxMediaModel::parentTestCase()
hgs
parents:
diff changeset
    68
{
hgs
parents:
diff changeset
    69
    QModelIndex index = mModel->parent( mModel->index( 0, 0 ) );
hgs
parents:
diff changeset
    70
    QCOMPARE( index.isValid(), false);
hgs
parents:
diff changeset
    71
}
hgs
parents:
diff changeset
    72
hgs
parents:
diff changeset
    73
void TestGlxMediaModel::itemImageDataInvalidIndexTestCase()
hgs
parents:
diff changeset
    74
{
hgs
parents:
diff changeset
    75
    QVariant variant = mModel->itemImageData( QModelIndex(), GlxFsImageRole );
hgs
parents:
diff changeset
    76
    QCOMPARE( variant.isValid(), false );
hgs
parents:
diff changeset
    77
    
hgs
parents:
diff changeset
    78
    variant = mModel->itemImageData( mModel->createIndex( mModel->rowCount(), 0 ), GlxFsImageRole );
hgs
parents:
diff changeset
    79
    QCOMPARE( variant.isValid(), false );
hgs
parents:
diff changeset
    80
}
hgs
parents:
diff changeset
    81
hgs
parents:
diff changeset
    82
void TestGlxMediaModel::itemImageDataGridImagetestCase()
hgs
parents:
diff changeset
    83
{
hgs
parents:
diff changeset
    84
    mModel->itemIconCache.insert( 0, NULL );
hgs
parents:
diff changeset
    85
    QVariant variant = mModel->itemImageData( mModel->index( 0, 0), Qt::DecorationRole );
hgs
parents:
diff changeset
    86
    QCOMPARE( variant.isValid(), true );
hgs
parents:
diff changeset
    87
    
hgs
parents:
diff changeset
    88
    mModel->itemIconCache.insert( 0, new HbIcon() );
hgs
parents:
diff changeset
    89
    variant = mModel->itemImageData( mModel->index( 0, 0), Qt::DecorationRole );
hgs
parents:
diff changeset
    90
    QCOMPARE( variant.isValid(), true );
hgs
parents:
diff changeset
    91
}
hgs
parents:
diff changeset
    92
hgs
parents:
diff changeset
    93
void TestGlxMediaModel::itemImageDataHdmiBitmapTestCase()
hgs
parents:
diff changeset
    94
{
hgs
parents:
diff changeset
    95
    QVariant variant = mModel->itemImageData( mModel->index( 0, 0), GlxHdmiBitmap );
hgs
parents:
diff changeset
    96
    QCOMPARE( variant.isValid(), true );
hgs
parents:
diff changeset
    97
}
hgs
parents:
diff changeset
    98
hgs
parents:
diff changeset
    99
void TestGlxMediaModel::ItemPropertyViewTitleTestCase()
hgs
parents:
diff changeset
   100
{
hgs
parents:
diff changeset
   101
   QVariant variant = mModel->collectionProperty( GlxViewTitle );
hgs
parents:
diff changeset
   102
   QCOMPARE( variant.isValid(), true );
hgs
parents:
diff changeset
   103
}
hgs
parents:
diff changeset
   104
hgs
parents:
diff changeset
   105
void TestGlxMediaModel::ItemPropertyImageTitleTestCase()
hgs
parents:
diff changeset
   106
{
hgs
parents:
diff changeset
   107
   QVariant variant = mModel->collectionProperty( GlxImageTitle );
hgs
parents:
diff changeset
   108
   QCOMPARE( variant.isValid(), false );
hgs
parents:
diff changeset
   109
}
hgs
parents:
diff changeset
   110
hgs
parents:
diff changeset
   111
void TestGlxMediaModel::ItemPropertyDateTestCase()
hgs
parents:
diff changeset
   112
{
hgs
parents:
diff changeset
   113
   QVariant variant = mModel->collectionProperty( GlxDateRole );
hgs
parents:
diff changeset
   114
   QCOMPARE( variant.isValid(), false );
hgs
parents:
diff changeset
   115
}
hgs
parents:
diff changeset
   116
hgs
parents:
diff changeset
   117
void TestGlxMediaModel::ItemPropertyCorruptImageTestCase()
hgs
parents:
diff changeset
   118
{
hgs
parents:
diff changeset
   119
   QVariant variant = mModel->collectionProperty( GlxImageCorruptRole );
hgs
parents:
diff changeset
   120
   QCOMPARE( variant.isValid(), false );
hgs
parents:
diff changeset
   121
}
hgs
parents:
diff changeset
   122
hgs
parents:
diff changeset
   123
void TestGlxMediaModel::ItemPropertyTimeTestCase()
hgs
parents:
diff changeset
   124
{
hgs
parents:
diff changeset
   125
   QVariant variant = mModel->collectionProperty( GlxTimeRole );
hgs
parents:
diff changeset
   126
   QCOMPARE( variant.isValid(), false );
hgs
parents:
diff changeset
   127
}
hgs
parents:
diff changeset
   128
hgs
parents:
diff changeset
   129
void TestGlxMediaModel::ItemPropertySizeTestCase()
hgs
parents:
diff changeset
   130
{
hgs
parents:
diff changeset
   131
   QVariant variant = mModel->collectionProperty( GlxSizeRole );
hgs
parents:
diff changeset
   132
   QCOMPARE( variant.isValid(), false );
hgs
parents:
diff changeset
   133
}
hgs
parents:
diff changeset
   134
hgs
parents:
diff changeset
   135
void TestGlxMediaModel::ItemPropertyDescTestCase()
hgs
parents:
diff changeset
   136
{
hgs
parents:
diff changeset
   137
   QVariant variant = mModel->collectionProperty( GlxDescRole );
hgs
parents:
diff changeset
   138
   QCOMPARE( variant.isValid(), false );
hgs
parents:
diff changeset
   139
}
hgs
parents:
diff changeset
   140
hgs
parents:
diff changeset
   141
void TestGlxMediaModel::indexTestCase()
hgs
parents:
diff changeset
   142
{
hgs
parents:
diff changeset
   143
    QModelIndex index = mModel->index( -1, 0 );
hgs
parents:
diff changeset
   144
    QCOMPARE( index.isValid(), false);
hgs
parents:
diff changeset
   145
    
hgs
parents:
diff changeset
   146
    index = mModel->index( 0, -1 );
hgs
parents:
diff changeset
   147
    QCOMPARE( index.isValid(), false);
hgs
parents:
diff changeset
   148
    
hgs
parents:
diff changeset
   149
    index = mModel->index( mModel->rowCount(), 1 );
hgs
parents:
diff changeset
   150
    QCOMPARE( index.isValid(), false);
hgs
parents:
diff changeset
   151
hgs
parents:
diff changeset
   152
    index = mModel->index( 0, 0 );
hgs
parents:
diff changeset
   153
    QCOMPARE( index.isValid(), true);
hgs
parents:
diff changeset
   154
}
hgs
parents:
diff changeset
   155
hgs
parents:
diff changeset
   156
void TestGlxMediaModel::setDataContextRoleTestCase()
hgs
parents:
diff changeset
   157
{
hgs
parents:
diff changeset
   158
    mModel->setData( mModel->index( 0, 0 ), GlxContextPtGrid, GlxContextRole );
hgs
parents:
diff changeset
   159
    QCOMPARE( mModel->mContextMode, GlxContextPtGrid );
hgs
parents:
diff changeset
   160
        
hgs
parents:
diff changeset
   161
    mModel->setData( mModel->index( 0, 0), QVariant( QVariant::Invalid ), GlxContextRole );
hgs
parents:
diff changeset
   162
    QCOMPARE( mModel->mContextMode, GlxContextPtGrid );
hgs
parents:
diff changeset
   163
}
hgs
parents:
diff changeset
   164
hgs
parents:
diff changeset
   165
void TestGlxMediaModel::setDataRemoveContextRoleTestCase()
hgs
parents:
diff changeset
   166
{
hgs
parents:
diff changeset
   167
    mModel->setData( mModel->index( 0, 0), GlxContextPtGrid, GlxContextRole );
hgs
parents:
diff changeset
   168
        
hgs
parents:
diff changeset
   169
    mModel->setData( mModel->index( 0, 0), QVariant( QVariant::Invalid ), GlxRemoveContextRole );
hgs
parents:
diff changeset
   170
    QCOMPARE( mModel->mContextMode, GlxContextPtGrid );
hgs
parents:
diff changeset
   171
}
hgs
parents:
diff changeset
   172
hgs
parents:
diff changeset
   173
void TestGlxMediaModel::setDataFocusIndexRoleTestCase()
hgs
parents:
diff changeset
   174
{
hgs
parents:
diff changeset
   175
    mModel->setData( mModel->index( 0, 0), 1, GlxFocusIndexRole );
hgs
parents:
diff changeset
   176
    QCOMPARE( mModel->mFocusIndex, 1 );
hgs
parents:
diff changeset
   177
        
hgs
parents:
diff changeset
   178
    mModel->setData( mModel->index( 0, 0), QVariant( QVariant::Invalid ), GlxFocusIndexRole );
hgs
parents:
diff changeset
   179
    QCOMPARE( mModel->mFocusIndex, 1 );
hgs
parents:
diff changeset
   180
}
hgs
parents:
diff changeset
   181
hgs
parents:
diff changeset
   182
void TestGlxMediaModel::setDataVisualIndexTestCase()
hgs
parents:
diff changeset
   183
{
hgs
parents:
diff changeset
   184
    mModel->setData( mModel->index( 0, 0), 1, GlxVisualWindowIndex );
hgs
parents:
diff changeset
   185
    int visualIndex = mModel->mMLWrapper->getVisibleWindowIndex();
hgs
parents:
diff changeset
   186
    QCOMPARE( visualIndex, 1 );    
hgs
parents:
diff changeset
   187
hgs
parents:
diff changeset
   188
    mModel->setData( mModel->index( 0, 0), QVariant( QVariant::Invalid ), GlxVisualWindowIndex );
hgs
parents:
diff changeset
   189
    visualIndex = mModel->mMLWrapper->getVisibleWindowIndex();
hgs
parents:
diff changeset
   190
    QCOMPARE( visualIndex, 1 );    
hgs
parents:
diff changeset
   191
}
hgs
parents:
diff changeset
   192
hgs
parents:
diff changeset
   193
void TestGlxMediaModel::setDataSelectedIndexTestCase()
hgs
parents:
diff changeset
   194
{
hgs
parents:
diff changeset
   195
    bool result = mModel->setData( mModel->index( 0, 0), 1, GlxSelectedIndexRole  );
hgs
parents:
diff changeset
   196
    QCOMPARE( result, true );    
hgs
parents:
diff changeset
   197
    
hgs
parents:
diff changeset
   198
    result = mModel->setData( mModel->index( 0, 0), QVariant( QVariant::Invalid ), GlxSelectedIndexRole );
hgs
parents:
diff changeset
   199
    QCOMPARE( result, false );  
hgs
parents:
diff changeset
   200
}
hgs
parents:
diff changeset
   201
hgs
parents:
diff changeset
   202
void TestGlxMediaModel::setDataSubStateTestCase()
hgs
parents:
diff changeset
   203
{
hgs
parents:
diff changeset
   204
    bool result = mModel->setData( mModel->index( 0, 0), 5, GlxSubStateRole );
hgs
parents:
diff changeset
   205
    QCOMPARE( result, true );
hgs
parents:
diff changeset
   206
    QCOMPARE( mModel->mSubState, 5 );
hgs
parents:
diff changeset
   207
hgs
parents:
diff changeset
   208
    result = mModel->setData( mModel->index( 0, 0), QVariant( QVariant::Invalid ), GlxSubStateRole  );
hgs
parents:
diff changeset
   209
    QCOMPARE( result, false );
hgs
parents:
diff changeset
   210
    QCOMPARE( mModel->mSubState, 5 );
hgs
parents:
diff changeset
   211
}
hgs
parents:
diff changeset
   212
hgs
parents:
diff changeset
   213
void TestGlxMediaModel::setDataTempVisualIndexTestCase()
hgs
parents:
diff changeset
   214
{
hgs
parents:
diff changeset
   215
    bool result = mModel->setData( mModel->index( 0, 0), 2, GlxTempVisualWindowIndex );
hgs
parents:
diff changeset
   216
    QCOMPARE( result, true );
hgs
parents:
diff changeset
   217
    QCOMPARE( mModel->mTempVisibleWindowIndex,  2 );
hgs
parents:
diff changeset
   218
    
hgs
parents:
diff changeset
   219
    result = mModel->setData( mModel->index( 0, 0), QVariant( QVariant::Invalid ), GlxTempVisualWindowIndex  );
hgs
parents:
diff changeset
   220
    QCOMPARE( result, false );
hgs
parents:
diff changeset
   221
    QCOMPARE( mModel->mTempVisibleWindowIndex, 2 );    
hgs
parents:
diff changeset
   222
}
hgs
parents:
diff changeset
   223
hgs
parents:
diff changeset
   224
void TestGlxMediaModel::GetGridIconItemTestCase()
hgs
parents:
diff changeset
   225
{
hgs
parents:
diff changeset
   226
    QTest::qWait( 2000 );
hgs
parents:
diff changeset
   227
    
hgs
parents:
diff changeset
   228
    mModel->itemIconCache.insert( 0, NULL );
hgs
parents:
diff changeset
   229
    HbIcon *icon = mModel->GetGridIconItem( 0, GlxTBContextGrid );
hgs
parents:
diff changeset
   230
    QVERIFY( icon || icon == NULL );
hgs
parents:
diff changeset
   231
    
hgs
parents:
diff changeset
   232
    mModel->itemIconCache.insert( 0, new HbIcon() );
hgs
parents:
diff changeset
   233
    icon = mModel->GetGridIconItem( 0, GlxTBContextGrid );
hgs
parents:
diff changeset
   234
    QVERIFY( icon );
hgs
parents:
diff changeset
   235
}
hgs
parents:
diff changeset
   236
    
hgs
parents:
diff changeset
   237
void TestGlxMediaModel::GetFsIconItemTestCase()
hgs
parents:
diff changeset
   238
{
hgs
parents:
diff changeset
   239
    mModel->setContextMode( GlxContextPtFs );
hgs
parents:
diff changeset
   240
    HbIcon *icon = mModel->GetFsIconItem( 0, GlxTBContextPtFs );
hgs
parents:
diff changeset
   241
    QTest::qWait( 2000 );
hgs
parents:
diff changeset
   242
    QVERIFY( icon || icon == NULL );
hgs
parents:
diff changeset
   243
    mModel->setContextMode( GlxContextLsGrid );
hgs
parents:
diff changeset
   244
}
hgs
parents:
diff changeset
   245
hgs
parents:
diff changeset
   246
void TestGlxMediaModel::getFullScreenIconTestCase()
hgs
parents:
diff changeset
   247
{
hgs
parents:
diff changeset
   248
    HbIcon icon = mModel->getFullScreenIcon( 0 );
hgs
parents:
diff changeset
   249
    QCOMPARE( icon.isNull(), false );
hgs
parents:
diff changeset
   250
    
hgs
parents:
diff changeset
   251
    mModel->itemIconCache.insert( 0, NULL );
hgs
parents:
diff changeset
   252
    icon = mModel->getFullScreenIcon( 0 );
hgs
parents:
diff changeset
   253
    QCOMPARE( icon.isNull(), false );
hgs
parents:
diff changeset
   254
    
hgs
parents:
diff changeset
   255
    mModel->itemIconCache.insert( 0, new HbIcon() );
hgs
parents:
diff changeset
   256
    icon = mModel->getFullScreenIcon( 0 );
hgs
parents:
diff changeset
   257
    QCOMPARE( icon.isNull(), false );
hgs
parents:
diff changeset
   258
}
hgs
parents:
diff changeset
   259
hgs
parents:
diff changeset
   260
void TestGlxMediaModel::getFullScreenImagetestCase()
hgs
parents:
diff changeset
   261
{
hgs
parents:
diff changeset
   262
    mModel->setContextMode( GlxContextLsFs );
hgs
parents:
diff changeset
   263
    QTest::qWait( 2000 );
hgs
parents:
diff changeset
   264
    QImage img = mModel->getFullScreenImage( 0 );
hgs
parents:
diff changeset
   265
    QVERIFY( img.isNull() == true || img.isNull() == false );
hgs
parents:
diff changeset
   266
hgs
parents:
diff changeset
   267
    mModel->setContextMode( GlxContextPtFs );
hgs
parents:
diff changeset
   268
    QTest::qWait( 2000 );
hgs
parents:
diff changeset
   269
    img = mModel->getFullScreenImage( 0 );
hgs
parents:
diff changeset
   270
    QVERIFY( img.isNull() == true || img.isNull() == false );  
hgs
parents:
diff changeset
   271
}
hgs
parents:
diff changeset
   272
hgs
parents:
diff changeset
   273
void TestGlxMediaModel::setContextModeTestCase()
hgs
parents:
diff changeset
   274
{
hgs
parents:
diff changeset
   275
    mModel->setContextMode( GlxContextPtFs );
hgs
parents:
diff changeset
   276
    QCOMPARE( mModel->mContextMode, GlxContextPtFs );
hgs
parents:
diff changeset
   277
    
hgs
parents:
diff changeset
   278
    mModel->setContextMode( GlxContextComment );
hgs
parents:
diff changeset
   279
    QCOMPARE( mModel->mContextMode, GlxContextPtFs ); 
hgs
parents:
diff changeset
   280
    mModel->removeContextMode( GlxContextComment );
hgs
parents:
diff changeset
   281
    
hgs
parents:
diff changeset
   282
    mModel->setContextMode( GlxContextLsGrid );
hgs
parents:
diff changeset
   283
    QCOMPARE( mModel->mContextMode, GlxContextLsGrid );
hgs
parents:
diff changeset
   284
    QCOMPARE( mModel->itemFsIconCache.size(), 0 );
hgs
parents:
diff changeset
   285
    QCOMPARE( mModel->itemIconCache.size(), 0 );
hgs
parents:
diff changeset
   286
}
hgs
parents:
diff changeset
   287
hgs
parents:
diff changeset
   288
void TestGlxMediaModel::removeContextModeTestCase()
hgs
parents:
diff changeset
   289
{
hgs
parents:
diff changeset
   290
    mModel->removeContextMode( GlxContextComment );
hgs
parents:
diff changeset
   291
    QCOMPARE( mModel->mContextMode, GlxContextLsGrid );
hgs
parents:
diff changeset
   292
}
hgs
parents:
diff changeset
   293
hgs
parents:
diff changeset
   294
void TestGlxMediaModel::setFocusIndexTestCase()
hgs
parents:
diff changeset
   295
{
hgs
parents:
diff changeset
   296
    mModel->setFocusIndex( mModel->index( 1, 0 ) );
hgs
parents:
diff changeset
   297
    QModelIndex modelIndex = mModel->getFocusIndex();
hgs
parents:
diff changeset
   298
    QCOMPARE( mModel->mFocusIndex, 1 );
hgs
parents:
diff changeset
   299
    QCOMPARE( 1, modelIndex.row() );    
hgs
parents:
diff changeset
   300
    
hgs
parents:
diff changeset
   301
    int index = mModel->rowCount() - 1;
hgs
parents:
diff changeset
   302
    mModel->setFocusIndex( mModel->index( index, 0 ) );
hgs
parents:
diff changeset
   303
    modelIndex = mModel->getFocusIndex();
hgs
parents:
diff changeset
   304
    QCOMPARE( mModel->mFocusIndex, modelIndex.row() );
hgs
parents:
diff changeset
   305
    QCOMPARE( index, modelIndex.row() );
hgs
parents:
diff changeset
   306
    
hgs
parents:
diff changeset
   307
    index = mModel->rowCount();
hgs
parents:
diff changeset
   308
    mModel->setFocusIndex( mModel->index( index, 0 ) );
hgs
parents:
diff changeset
   309
    modelIndex = mModel->getFocusIndex();
hgs
parents:
diff changeset
   310
    QCOMPARE( mModel->mFocusIndex, modelIndex.row() );
hgs
parents:
diff changeset
   311
    QCOMPARE( 0, modelIndex.row() );    
hgs
parents:
diff changeset
   312
}
hgs
parents:
diff changeset
   313
hgs
parents:
diff changeset
   314
void TestGlxMediaModel::getFocusIndexTestcase()
hgs
parents:
diff changeset
   315
{
hgs
parents:
diff changeset
   316
    mModel->mFocusIndex = -1;
hgs
parents:
diff changeset
   317
    mModel->setFocusIndex( mModel->index( 1, 0 ) );
hgs
parents:
diff changeset
   318
    QModelIndex index = mModel->getFocusIndex();
hgs
parents:
diff changeset
   319
    QCOMPARE( 1, index.row() );
hgs
parents:
diff changeset
   320
    
hgs
parents:
diff changeset
   321
    mModel->mFocusIndex = 2;
hgs
parents:
diff changeset
   322
    mModel->setFocusIndex( mModel->index( 1, 0 ) );
hgs
parents:
diff changeset
   323
    index = mModel->getFocusIndex();
hgs
parents:
diff changeset
   324
    QCOMPARE( 1, index.row() );
hgs
parents:
diff changeset
   325
}
hgs
parents:
diff changeset
   326
hgs
parents:
diff changeset
   327
void TestGlxMediaModel::setSelectedIndexTestCase()
hgs
parents:
diff changeset
   328
{
hgs
parents:
diff changeset
   329
    mModel->setSelectedIndex( mModel->index( 1, 0 ) );
hgs
parents:
diff changeset
   330
}
hgs
parents:
diff changeset
   331
hgs
parents:
diff changeset
   332
void TestGlxMediaModel::getCorruptDefaultIconTestCase()
hgs
parents:
diff changeset
   333
{
hgs
parents:
diff changeset
   334
    HbIcon *icon = mModel->getCorruptDefaultIcon( mModel->index( 0, 0 ) );
hgs
parents:
diff changeset
   335
    QVERIFY( icon );
hgs
parents:
diff changeset
   336
}
hgs
parents:
diff changeset
   337
hgs
parents:
diff changeset
   338
void TestGlxMediaModel::thumbnailPopulatedCheckTestCase()
hgs
parents:
diff changeset
   339
{
hgs
parents:
diff changeset
   340
    mModel->thumbnailPopulatedFlag = false;
hgs
parents:
diff changeset
   341
    mModel->thumbnailPopulatedCheck( 1 );
hgs
parents:
diff changeset
   342
    QCOMPARE( mModel->thumbnailPopulatedFlag, false );
hgs
parents:
diff changeset
   343
    
hgs
parents:
diff changeset
   344
    mModel->thumbnailPopulatedCheck( 30 );
hgs
parents:
diff changeset
   345
    QCOMPARE( mModel->thumbnailPopulatedFlag, true );
hgs
parents:
diff changeset
   346
}
hgs
parents:
diff changeset
   347
hgs
parents:
diff changeset
   348
void TestGlxMediaModel::itemUpdatedTestCase()
hgs
parents:
diff changeset
   349
{
hgs
parents:
diff changeset
   350
    mModel->itemUpdated( 0, GlxTBContextGrid );
hgs
parents:
diff changeset
   351
    QVERIFY( mModel->itemIconCache[0] == NULL );
hgs
parents:
diff changeset
   352
hgs
parents:
diff changeset
   353
    mModel->thumbnailPopulatedFlag = false;
hgs
parents:
diff changeset
   354
    mModel->itemUpdated( 0, GlxTBContextGrid );
hgs
parents:
diff changeset
   355
    QVERIFY( mModel->itemIconCache[0] == NULL );
hgs
parents:
diff changeset
   356
    
hgs
parents:
diff changeset
   357
    mModel->itemUpdated( 0, GlxTBContextPtFs );
hgs
parents:
diff changeset
   358
    QVERIFY( mModel->itemFsIconCache[0] == NULL );
hgs
parents:
diff changeset
   359
    
hgs
parents:
diff changeset
   360
    mModel->itemUpdated( 0, GlxTBContextPtFs );
hgs
parents:
diff changeset
   361
    QVERIFY( mModel->itemFsIconCache[0] == NULL );
hgs
parents:
diff changeset
   362
}
hgs
parents:
diff changeset
   363
hgs
parents:
diff changeset
   364
void TestGlxMediaModel::itemsAddedTestCase()
hgs
parents:
diff changeset
   365
{
hgs
parents:
diff changeset
   366
    mModel->itemsAdded( 1, 5 );
hgs
parents:
diff changeset
   367
    QCOMPARE( mModel->mFocusIndex, -1 );
hgs
parents:
diff changeset
   368
    QCOMPARE( mModel->itemIconCache.size(), 0 );
hgs
parents:
diff changeset
   369
    QCOMPARE( mModel->itemFsIconCache.size(), 0 );
hgs
parents:
diff changeset
   370
}
hgs
parents:
diff changeset
   371
hgs
parents:
diff changeset
   372
void TestGlxMediaModel::itemsRemovedTestCase()
hgs
parents:
diff changeset
   373
{
hgs
parents:
diff changeset
   374
    mModel->itemsRemoved( 1, 5 );
hgs
parents:
diff changeset
   375
    QCOMPARE( mModel->mFocusIndex, -1 );
hgs
parents:
diff changeset
   376
    QCOMPARE( mModel->itemIconCache.size(), 0 );
hgs
parents:
diff changeset
   377
    QCOMPARE( mModel->itemFsIconCache.size(), 0 );
hgs
parents:
diff changeset
   378
}
hgs
parents:
diff changeset
   379
hgs
parents:
diff changeset
   380
void TestGlxMediaModel::itemCorruptedTestCase()
hgs
parents:
diff changeset
   381
{
hgs
parents:
diff changeset
   382
    mModel->thumbnailPopulatedFlag = false;
hgs
parents:
diff changeset
   383
    mModel->itemCorrupted( 1 );
hgs
parents:
diff changeset
   384
    QCOMPARE( mModel->thumbnailPopulatedFlag, false );
hgs
parents:
diff changeset
   385
    
hgs
parents:
diff changeset
   386
    mModel->itemCorrupted( 30 );
hgs
parents:
diff changeset
   387
    QCOMPARE( mModel->thumbnailPopulatedFlag, true );    
hgs
parents:
diff changeset
   388
}
hgs
parents:
diff changeset
   389
hgs
parents:
diff changeset
   390
void TestGlxMediaModel::albumTitleUpdatedTestCase()
hgs
parents:
diff changeset
   391
{
hgs
parents:
diff changeset
   392
    mModel->albumTitleUpdated( QString( "Album" ) );
hgs
parents:
diff changeset
   393
}
hgs
parents:
diff changeset
   394
hgs
parents:
diff changeset
   395
void TestGlxMediaModel::modelpopulatedTestCase()
hgs
parents:
diff changeset
   396
{
hgs
parents:
diff changeset
   397
    int visualIndex = mModel->mMLWrapper->getVisibleWindowIndex();
hgs
parents:
diff changeset
   398
    mModel->mTempVisibleWindowIndex = -1;
hgs
parents:
diff changeset
   399
    mModel->modelpopulated();
hgs
parents:
diff changeset
   400
    QCOMPARE( mModel->mTempVisibleWindowIndex, -1 );
hgs
parents:
diff changeset
   401
    QCOMPARE( visualIndex,  mModel->mMLWrapper->getVisibleWindowIndex() );
hgs
parents:
diff changeset
   402
    
hgs
parents:
diff changeset
   403
    mModel->mTempVisibleWindowIndex = mModel->rowCount() - 1;
hgs
parents:
diff changeset
   404
    mModel->modelpopulated();
hgs
parents:
diff changeset
   405
    visualIndex = mModel->mMLWrapper->getVisibleWindowIndex();
hgs
parents:
diff changeset
   406
    QCOMPARE( mModel->mTempVisibleWindowIndex, -1 );
hgs
parents:
diff changeset
   407
    QCOMPARE( visualIndex, mModel->rowCount() - 1 );
hgs
parents:
diff changeset
   408
    
hgs
parents:
diff changeset
   409
    mModel->mTempVisibleWindowIndex = mModel->rowCount();
hgs
parents:
diff changeset
   410
    mModel->modelpopulated();
hgs
parents:
diff changeset
   411
    visualIndex = mModel->mMLWrapper->getVisibleWindowIndex();
hgs
parents:
diff changeset
   412
    QCOMPARE( mModel->mTempVisibleWindowIndex, -1 );
hgs
parents:
diff changeset
   413
    QCOMPARE( visualIndex, 0 );
hgs
parents:
diff changeset
   414
}
hgs
parents:
diff changeset
   415
hgs
parents:
diff changeset
   416
void TestGlxMediaModel::updateDetailItemsTestCase()
hgs
parents:
diff changeset
   417
{
hgs
parents:
diff changeset
   418
    mModel->updateDetailItems();
hgs
parents:
diff changeset
   419
}
hgs
parents:
diff changeset
   420
hgs
parents:
diff changeset
   421
void TestGlxMediaModel::updateItemIconTestCase()
hgs
parents:
diff changeset
   422
{
hgs
parents:
diff changeset
   423
    mModel->updateItemIcon( 1, new HbIcon(), GlxTBContextGrid );
hgs
parents:
diff changeset
   424
    QVERIFY( mModel->itemIconCache[1] );
hgs
parents:
diff changeset
   425
hgs
parents:
diff changeset
   426
    mModel->updateItemIcon( 1, new HbIcon(), GlxTBContextLsFs );
hgs
parents:
diff changeset
   427
    QVERIFY( mModel->itemFsIconCache[1] );
hgs
parents:
diff changeset
   428
hgs
parents:
diff changeset
   429
    mModel->updateItemIcon( 1, new HbIcon(), GlxTBContextPtFs );
hgs
parents:
diff changeset
   430
    QVERIFY( mModel->itemFsIconCache[1] );  
hgs
parents:
diff changeset
   431
}
hgs
parents:
diff changeset
   432
hgs
parents:
diff changeset
   433
hgs
parents:
diff changeset
   434
hgs
parents:
diff changeset
   435
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   436
// cleanup
hgs
parents:
diff changeset
   437
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   438
//
hgs
parents:
diff changeset
   439
void TestGlxMediaModel::cleanup()
hgs
parents:
diff changeset
   440
{
hgs
parents:
diff changeset
   441
    
hgs
parents:
diff changeset
   442
}
hgs
parents:
diff changeset
   443
hgs
parents:
diff changeset
   444
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   445
// cleanupTestCase
hgs
parents:
diff changeset
   446
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   447
//
hgs
parents:
diff changeset
   448
void TestGlxMediaModel::cleanupTestCase()
hgs
parents:
diff changeset
   449
{
hgs
parents:
diff changeset
   450
    if( mModel ) {        
hgs
parents:
diff changeset
   451
        delete mModel;
hgs
parents:
diff changeset
   452
        mModel = 0;
hgs
parents:
diff changeset
   453
    }  
hgs
parents:
diff changeset
   454
}
hgs
parents:
diff changeset
   455
hgs
parents:
diff changeset
   456
QTEST_MAIN(TestGlxMediaModel)
hgs
parents:
diff changeset
   457
#include "moc_unittest_mediamodel.cpp"