controlpanel/tsrc/unit/ut_cpapi/src/ut_cpapi.cpp
author hgs
Thu, 01 Apr 2010 03:17:51 +0800
changeset 31 2c9d3aa5bea2
child 32 20bd089f4aaa
permissions -rw-r--r--
201003_2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     1
/*
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     3
* All rights reserved.
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0""
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     8
*
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
     9
* Initial Contributors:
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    11
*
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    12
* Contributors:
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    13
*
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    14
* Description:  
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    15
*
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    16
*/
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    17
#include "ut_cpapi.h"
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    18
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    19
#include <hbmainwindow.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    20
#include <QGraphicsWidget>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    21
#include <qDebug>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    22
#include <QtTest/QtTest>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    23
#include <HbView.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    24
#include <hbdataform.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    25
#include <hbdataformmodel.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    26
#include <hbdataformmodelitem.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    27
#include <hbabstractviewitem.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    28
#include <hbsettingformitem.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    29
//testing following classes
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    30
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    31
#include "cpbasesettingview.h"
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    32
#include "cpsettingformentryitemdata.h"
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    33
#include "cpsettingformentryitemdataimpl.h"
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    34
#include <cpsettingformitemdata.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    35
#include <cpitemdatahelper.h>
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    36
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    37
void TestCpAPI::initTestCase()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    38
{    
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    39
	mainWindow = new HbMainWindow;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    40
  mainWindow->show();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    41
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    42
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    43
void TestCpAPI::cleanupTestCase()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    44
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    45
	delete mainWindow;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    46
	mainWindow = 0;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    47
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    48
void TestCpAPI::testCpBaseSettingView()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    49
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    50
	CpBaseSettingView * pview = new CpBaseSettingView(0);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    51
	QVERIFY( pview !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    52
        HbDataForm *pForm = new HbDataForm(0);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    53
        pview->setSettingForm(pForm);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    54
        QVERIFY( pview->settingForm() == pForm );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    55
	delete pview;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    56
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    57
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    58
void TestCpAPI::testCpSettingFormEntryItemDataImpl()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    59
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    60
	CpItemDataHelper *pHelper = new CpItemDataHelper();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    61
        CpSettingFormEntryItemDataImpl<CpBaseSettingView> *pdataimp = new CpSettingFormEntryItemDataImpl<CpBaseSettingView>( *pHelper, "text", "description"  );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    62
	QVERIFY( pdataimp !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    63
	QString strtxt = "input texts";
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    64
	pdataimp->setText(strtxt);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    65
	QVERIFY( pdataimp->text() == strtxt );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    66
	
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    67
	QString strDes = "input descriptions";
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    68
	pdataimp->setDescription(strDes);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    69
	QVERIFY( pdataimp->description() == strDes);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    70
	delete pdataimp;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    71
        delete pHelper;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    72
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    73
void TestCpAPI::testCpSettingFormItemData()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    74
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    75
        CpSettingFormItemData *pdata = new CpSettingFormItemData( HbDataFormModelItem::TextItem, "label" );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    76
        QVERIFY( pdata !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    77
        delete pdata;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    78
        pdata = 0;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    79
        pdata = new CpSettingFormItemData( HbDataFormModelItem::SliderItem, "label" );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    80
        QVERIFY( pdata !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    81
        delete pdata;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    82
        pdata = 0;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    83
        pdata = new CpSettingFormItemData( HbDataFormModelItem::VolumeSliderItem, "label" );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    84
        QVERIFY( pdata !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    85
        delete pdata;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    86
        pdata = new CpSettingFormItemData( HbDataFormModelItem::CheckBoxItem, "label" );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    87
        QVERIFY( pdata !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    88
        delete pdata;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    89
        pdata = 0;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    90
        pdata = new CpSettingFormItemData( HbDataFormModelItem::ToggleValueItem, "label" );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    91
        QVERIFY( pdata !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    92
        delete pdata;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    93
        pdata = 0;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    94
        pdata = new CpSettingFormItemData( HbDataFormModelItem::RadioButtonListItem, "label" );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    95
        QVERIFY( pdata !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    96
        delete pdata;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    97
        pdata = 0;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    98
        pdata = new CpSettingFormItemData( HbDataFormModelItem::MultiselectionItem, "label" );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
    99
        QVERIFY( pdata !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   100
        delete pdata;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   101
        pdata = 0;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   102
        pdata = new CpSettingFormItemData( HbDataFormModelItem::ComboBoxItem, "label" );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   103
        QVERIFY( pdata !=0 );
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   104
        delete pdata;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   105
        pdata = 0;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   106
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   107
void TestCpAPI::testItemDataHelper()
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   108
{
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   109
    HbDataForm* form = new HbDataForm();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   110
    HbDataFormModel *model = new HbDataFormModel();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   111
    HbDataFormModelItem *general = model->appendDataFormPage(QString("General"));
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   112
    CpItemDataHelper *phelper = new CpItemDataHelper();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   113
    phelper->addConnection( general, "hello",form,"hello");
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   114
    phelper->removeConnection(general,"hello",form, "hello");
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   115
    phelper->bindToForm(form);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   116
    HbSettingFormItem *pitem = new HbSettingFormItem();
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   117
    phelper->addItemPrototype(pitem);
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   118
    delete phelper;
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   119
}
2c9d3aa5bea2 201003_2
hgs
parents:
diff changeset
   120
QTEST_MAIN(TestCpAPI)