messagingapp/msgui/msgaudiofetcher/tsrc/unittest_msgaudiofetchermodel/src/unittest_msgaudiofetchermodel.cpp
author hgs
Tue, 05 Oct 2010 13:58:47 +0530
changeset 73 ecf6a73a9186
permissions -rw-r--r--
201039_03
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
73
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     1
/*
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     2
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     3
 * All rights reserved.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     8
 *
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
     9
 * Initial Contributors:
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    11
 *
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    12
 * Contributors:
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    13
 *
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    14
 * Description:  Item decorator of the message list view.
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    15
 *
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    16
 */
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    17
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    18
#include "unittest_msgaudiofetchermodel.h"
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    19
#include <QtTest/QtTest>
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    20
#include <HbMainWindow>
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    21
#include <HbListView>
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    22
#include "msguitest.h"
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    23
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    24
TestMsgAudioFetcherModel::TestMsgAudioFetcherModel():mTestMainWindow(NULL),mListView(NULL),mMsgAudioFetcherModel(NULL)
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    25
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    26
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    27
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    28
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    29
TestMsgAudioFetcherModel::~TestMsgAudioFetcherModel()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    30
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    31
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    32
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    33
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    34
void TestMsgAudioFetcherModel::initTestCase()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    35
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    36
        mTestMainWindow = new HbMainWindow();
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    37
        mListView = new HbListView();
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    38
        mMsgAudioFetcherModel = new MsgAudioFetcherModel(this);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    39
        mListView->setModel(mMsgAudioFetcherModel);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    40
        mTestMainWindow->addView(mListView);        
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    41
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    42
void TestMsgAudioFetcherModel::test_Constructor()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    43
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    44
        QVERIFY(mMsgAudioFetcherModel->mSelectionEngine != NULL);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    45
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    46
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    47
void TestMsgAudioFetcherModel::test_init()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    48
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    49
        QVERIFY(mMsgAudioFetcherModel->mSelectionEngine != NULL);    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    50
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    51
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    52
void TestMsgAudioFetcherModel::test_addToneFiles()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    53
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    54
        QDir dir("c:\\data\\testAudioFetcher");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    55
        mMsgAudioFetcherModel->addToneFiles(dir);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    56
        int rowCount = mMsgAudioFetcherModel->rowCount();
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    57
        QVERIFY(mMsgAudioFetcherModel->rowCount() != 0);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    58
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    59
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    60
void TestMsgAudioFetcherModel::test_insertIndex()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    61
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    62
        QDir dir("c:\\data\\testAudioFetcher");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    63
        mMsgAudioFetcherModel->addToneFiles(dir);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    64
        /*As already 4 file are present int the list, So index for file AAA should be 0 and ZZZ should be 4*/
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    65
        int index = mMsgAudioFetcherModel->insertIndex(0,mMsgAudioFetcherModel->rowCount(),"AAA");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    66
        QVERIFY(index == 0);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    67
        index = mMsgAudioFetcherModel->insertIndex(0,mMsgAudioFetcherModel->rowCount(),"zzz");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    68
        QVERIFY(index == 4);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    69
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    70
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    71
void TestMsgAudioFetcherModel::test_clearAll()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    72
{    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    73
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    74
    QVERIFY(mMsgAudioFetcherModel->rowCount() != 0);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    75
    /*test_addToneFiles is already called so this count should not be 0*/
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    76
    mMsgAudioFetcherModel->clearAll();
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    77
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    78
    QVERIFY(mMsgAudioFetcherModel->rowCount() == 0) ;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    79
    QVERIFY(mMsgAudioFetcherModel->columnCount() == 0);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    80
}
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    81
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    82
void TestMsgAudioFetcherModel::test_queryComplete()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    83
{
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    84
    QStringList nameList;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    85
    QStringList uriList;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    86
    nameList.append("drm.amr");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    87
    nameList.append("nondrm.amr");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    88
    
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    89
    uriList.append("c:\\data\\testAudioFetcher\\drm.amr");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    90
    uriList.append("c:\\data\\testAudioFetcher\\nondrm.amr");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    91
    mMsgAudioFetcherModel->queryComplete(nameList,uriList);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    92
    QVERIFY(mMsgAudioFetcherModel->rowCount() == 2);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    93
}
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    94
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    95
void TestMsgAudioFetcherModel::test_isDRM()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    96
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    97
        QFETCH(QString, fileName);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    98
        QFETCH(bool, expectedResult);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
    99
        bool result = mMsgAudioFetcherModel->isDRM(fileName);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   100
        QVERIFY(result == expectedResult);
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   101
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   102
void TestMsgAudioFetcherModel::test_isDRM_data()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   103
    {
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   104
        QTest::addColumn<QString>("fileName");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   105
        QTest::addColumn<bool>("expectedResult");
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   106
        QTest::newRow("NON DRM File")<< "c:\\data\\testAudioFetcher\\drm.amr" << false;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   107
        QTest::newRow("NON DRM File")<< "c:\\data\\testAudioFetcher\\nondrm.amr" << false;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   108
        QTest::newRow("DRM File")<< "c:\\data\\testAudioFetcher\\DRM_AMR.dcf" << true;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   109
    } 
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   110
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   111
void TestMsgAudioFetcherModel::cleanupTestCase()
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   112
    {          
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   113
            if(mMsgAudioFetcherModel)
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   114
                delete mMsgAudioFetcherModel;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   115
            if(mListView)
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   116
                delete mListView;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   117
            if(mTestMainWindow)
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   118
                delete mTestMainWindow;
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   119
    }
ecf6a73a9186 201039_03
hgs
parents:
diff changeset
   120
MSGUI_TEST_MAIN(TestMsgAudioFetcherModel)