controlpanelui/src/cpcategorymodel/tsrc/ut_categorymodelitemdata/src/ut_categorymodelitemdata.cpp
author hgs
Wed, 29 Sep 2010 10:09:58 +0800
changeset 40 593f946f4fec
permissions -rw-r--r--
201037_2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
40
593f946f4fec 201037_2
hgs
parents:
diff changeset
     1
/*
593f946f4fec 201037_2
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
593f946f4fec 201037_2
hgs
parents:
diff changeset
     3
* All rights reserved.
593f946f4fec 201037_2
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
593f946f4fec 201037_2
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0""
593f946f4fec 201037_2
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
593f946f4fec 201037_2
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
593f946f4fec 201037_2
hgs
parents:
diff changeset
     8
*
593f946f4fec 201037_2
hgs
parents:
diff changeset
     9
* Initial Contributors:
593f946f4fec 201037_2
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
593f946f4fec 201037_2
hgs
parents:
diff changeset
    11
*
593f946f4fec 201037_2
hgs
parents:
diff changeset
    12
* Contributors:
593f946f4fec 201037_2
hgs
parents:
diff changeset
    13
*
593f946f4fec 201037_2
hgs
parents:
diff changeset
    14
* Description:  
593f946f4fec 201037_2
hgs
parents:
diff changeset
    15
*       test application for qt cpcategorymodel functions.
593f946f4fec 201037_2
hgs
parents:
diff changeset
    16
*/
593f946f4fec 201037_2
hgs
parents:
diff changeset
    17
593f946f4fec 201037_2
hgs
parents:
diff changeset
    18
#include "ut_categorymodelitemdata.h"
593f946f4fec 201037_2
hgs
parents:
diff changeset
    19
#include "cpcategorysettingformitemdata.h"
593f946f4fec 201037_2
hgs
parents:
diff changeset
    20
#include <QtTest/QtTest>
593f946f4fec 201037_2
hgs
parents:
diff changeset
    21
#include <cpitemdatahelper.h>
593f946f4fec 201037_2
hgs
parents:
diff changeset
    22
#include <hbdataformmodel.h>
593f946f4fec 201037_2
hgs
parents:
diff changeset
    23
#include <hbdataformmodelitem.h>
593f946f4fec 201037_2
hgs
parents:
diff changeset
    24
#include <HbView.h>
593f946f4fec 201037_2
hgs
parents:
diff changeset
    25
593f946f4fec 201037_2
hgs
parents:
diff changeset
    26
/*!
593f946f4fec 201037_2
hgs
parents:
diff changeset
    27
      \class TestCpCategorySettingFormItem \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    28
      \brief class name: TestCpCategorySettingFormItem \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    29
      type of test case: unit test  \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    30
      test cases' number totally: 3 \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    31
 */
593f946f4fec 201037_2
hgs
parents:
diff changeset
    32
593f946f4fec 201037_2
hgs
parents:
diff changeset
    33
void TestCpCategorySettingFormItem::initTestCase()
593f946f4fec 201037_2
hgs
parents:
diff changeset
    34
{
593f946f4fec 201037_2
hgs
parents:
diff changeset
    35
    // initialize public test data here
593f946f4fec 201037_2
hgs
parents:
diff changeset
    36
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
    37
593f946f4fec 201037_2
hgs
parents:
diff changeset
    38
/*!
593f946f4fec 201037_2
hgs
parents:
diff changeset
    39
     Test Case Description:  \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    40
     1. Fucntion Name:  \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    41
     CpCategorySettingFormItemData(HbDataFormModelItem::DataItemType type,
593f946f4fec 201037_2
hgs
parents:
diff changeset
    42
                                                      const QString &label,
593f946f4fec 201037_2
hgs
parents:
diff changeset
    43
                                                      const QString &configFile,
593f946f4fec 201037_2
hgs
parents:
diff changeset
    44
                                                      const HbDataFormModelItem *parent = 0) \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    45
     2. Case Descrition: Test the first constructor function. \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    46
     3. Input Parameters:  \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    47
     (1) type = HbDataFormModelItem::DataItemType,
593f946f4fec 201037_2
hgs
parents:
diff changeset
    48
                              label = QString("XX"), 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    49
                              configFile = QString("XX"), 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    50
                              parent = new HbDataFormModelItem() \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    51
     (2) type = HbDataFormModelItem::DataItemType,
593f946f4fec 201037_2
hgs
parents:
diff changeset
    52
                              label = QString(), 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    53
                              configFile = QString(), 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    54
                              parent = new HbDataFormModelItem()\n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    55
     4. Expected result:  \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    56
     (1) no crash\n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    57
     (2) no crash \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    58
 */
593f946f4fec 201037_2
hgs
parents:
diff changeset
    59
void TestCpCategorySettingFormItem::testFirstConstructor()
593f946f4fec 201037_2
hgs
parents:
diff changeset
    60
{
593f946f4fec 201037_2
hgs
parents:
diff changeset
    61
    HbDataFormModelItem::DataItemType aType = HbDataFormModelItem::CheckBoxItem;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    62
    QString aLabel = "testLabel";
593f946f4fec 201037_2
hgs
parents:
diff changeset
    63
    QString configFile = "testFile";
593f946f4fec 201037_2
hgs
parents:
diff changeset
    64
    HbDataFormModelItem *pParent = new HbDataFormModelItem();
593f946f4fec 201037_2
hgs
parents:
diff changeset
    65
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    66
    CpCategorySettingFormItemData *pCategoryItemData = new CpCategorySettingFormItemData(aType, aLabel, configFile, pParent);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    67
    QVERIFY(pCategoryItemData != 0 ); 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    68
    QVERIFY(pCategoryItemData->type()== aType);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    69
    delete pParent;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    70
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    71
    pCategoryItemData = new CpCategorySettingFormItemData(aType, QString(), QString(), 0);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    72
    QVERIFY(pCategoryItemData != 0 ); 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    73
    QVERIFY(pCategoryItemData->type()== aType);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    74
    delete pCategoryItemData;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    75
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
    76
593f946f4fec 201037_2
hgs
parents:
diff changeset
    77
/*!
593f946f4fec 201037_2
hgs
parents:
diff changeset
    78
     Test Case Description: \n 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    79
     1. Fucntion Name: \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    80
        explicit CpCategorySettingFormItemData(const QString &configFile = QString(), const HbDataFormModelItem *parent = 0);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    81
     2. Case Descrition: \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    82
        Test the second constructor function. \n 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    83
     3. Input Parameters: \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    84
     (1) configFile = QString("XX"), *parent = new HbDataFormModelItem()\n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    85
     (2) configFile = QString(""), *parent = new HbDataFormModelItem() \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
    86
     4. Expected result:  \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    87
         (1) no crash \n &nbsp;&nbsp;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    88
         (2) no crash
593f946f4fec 201037_2
hgs
parents:
diff changeset
    89
 */
593f946f4fec 201037_2
hgs
parents:
diff changeset
    90
void TestCpCategorySettingFormItem::testSecondConstructor()
593f946f4fec 201037_2
hgs
parents:
diff changeset
    91
{
593f946f4fec 201037_2
hgs
parents:
diff changeset
    92
    QString configFile = "testFile";
593f946f4fec 201037_2
hgs
parents:
diff changeset
    93
    HbDataFormModelItem *pParent = new HbDataFormModelItem();
593f946f4fec 201037_2
hgs
parents:
diff changeset
    94
    CpCategorySettingFormItemData *pCategoryItemData = new CpCategorySettingFormItemData(configFile, pParent);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    95
    delete pParent;
593f946f4fec 201037_2
hgs
parents:
diff changeset
    96
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
    97
    pCategoryItemData = new CpCategorySettingFormItemData(QString(), 0);
593f946f4fec 201037_2
hgs
parents:
diff changeset
    98
    QVERIFY(pCategoryItemData != 0 ); 
593f946f4fec 201037_2
hgs
parents:
diff changeset
    99
    delete pCategoryItemData;
593f946f4fec 201037_2
hgs
parents:
diff changeset
   100
    pCategoryItemData = 0;
593f946f4fec 201037_2
hgs
parents:
diff changeset
   101
    
593f946f4fec 201037_2
hgs
parents:
diff changeset
   102
    pCategoryItemData = new CpCategorySettingFormItemData();
593f946f4fec 201037_2
hgs
parents:
diff changeset
   103
    QVERIFY(pCategoryItemData != 0 ); 
593f946f4fec 201037_2
hgs
parents:
diff changeset
   104
    delete pCategoryItemData;
593f946f4fec 201037_2
hgs
parents:
diff changeset
   105
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
   106
593f946f4fec 201037_2
hgs
parents:
diff changeset
   107
/*!
593f946f4fec 201037_2
hgs
parents:
diff changeset
   108
     Test Case Description: \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
   109
     1. Fucntion Name: void initialize(CpItemDataHelper &itemDataHelper); \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
   110
     2. Case Descrition: Test the initialize() function. \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
   111
     3. Input Parameters: (1) itemDataHelper = new itemDataHelper() \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
   112
     4. Expected result:  (1) no crash \n
593f946f4fec 201037_2
hgs
parents:
diff changeset
   113
 */
593f946f4fec 201037_2
hgs
parents:
diff changeset
   114
void TestCpCategorySettingFormItem::testInit()
593f946f4fec 201037_2
hgs
parents:
diff changeset
   115
{
593f946f4fec 201037_2
hgs
parents:
diff changeset
   116
    CpItemDataHelper *itemDataHelper = new CpItemDataHelper();
593f946f4fec 201037_2
hgs
parents:
diff changeset
   117
    QString configFile = "pluginfileformodelitemdata.cpcfg";
593f946f4fec 201037_2
hgs
parents:
diff changeset
   118
    HbDataFormModelItem *pParent = new HbDataFormModelItem();
593f946f4fec 201037_2
hgs
parents:
diff changeset
   119
    CpCategorySettingFormItemData *pCategoryItemData = new CpCategorySettingFormItemData(configFile, pParent);
593f946f4fec 201037_2
hgs
parents:
diff changeset
   120
    QVERIFY(pCategoryItemData != 0 ); 
593f946f4fec 201037_2
hgs
parents:
diff changeset
   121
    // mInitialized = FALSE
593f946f4fec 201037_2
hgs
parents:
diff changeset
   122
    pCategoryItemData->initialize(*itemDataHelper);    
593f946f4fec 201037_2
hgs
parents:
diff changeset
   123
    // call initialize() again in order to test another branch (mInitialized = TRUE)
593f946f4fec 201037_2
hgs
parents:
diff changeset
   124
    pCategoryItemData->initialize(*itemDataHelper);
593f946f4fec 201037_2
hgs
parents:
diff changeset
   125
    delete itemDataHelper;
593f946f4fec 201037_2
hgs
parents:
diff changeset
   126
    delete pParent;
593f946f4fec 201037_2
hgs
parents:
diff changeset
   127
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
   128
593f946f4fec 201037_2
hgs
parents:
diff changeset
   129
void TestCpCategorySettingFormItem::cleanupTestCase()
593f946f4fec 201037_2
hgs
parents:
diff changeset
   130
{
593f946f4fec 201037_2
hgs
parents:
diff changeset
   131
    // release all test data
593f946f4fec 201037_2
hgs
parents:
diff changeset
   132
    QCoreApplication::processEvents();
593f946f4fec 201037_2
hgs
parents:
diff changeset
   133
}
593f946f4fec 201037_2
hgs
parents:
diff changeset
   134
593f946f4fec 201037_2
hgs
parents:
diff changeset
   135
QTEST_MAIN(TestCpCategorySettingFormItem)
593f946f4fec 201037_2
hgs
parents:
diff changeset
   136
//QTEST_APPLESS_MAIN(TestCpCategorySettingFormItem)