homescreenapp/stateplugins/hsmenuworkerstateplugin/tsrc/t_hsmenuworkerstateplugin/src/t_hsaddappstocollectionstate.cpp
author hgs
Wed, 06 Oct 2010 16:06:24 +0300
changeset 97 66b5fe3c07fd
parent 90 3ac3aaebaee5
child 98 e6f74eb7f69f
permissions -rw-r--r--
201039_01
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
90
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:  Main test class for hsHomeScreenStatePlugin library.
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#include <QStateMachine>
hgs
parents:
diff changeset
    19
#include <QTest>
hgs
parents:
diff changeset
    20
#include <qstandarditemmodel.h>
hgs
parents:
diff changeset
    21
#include <hbaction.h>
hgs
parents:
diff changeset
    22
#include <hblistview.h>
hgs
parents:
diff changeset
    23
hgs
parents:
diff changeset
    24
#include "t_hsmenuworkerstateplugin.h"
hgs
parents:
diff changeset
    25
#include "hsaddappstocollectionstate.h"
hgs
parents:
diff changeset
    26
#include "hsmenuworkerstate.h"
hgs
parents:
diff changeset
    27
#include "hsaddtohomescreenstate.h"
hgs
parents:
diff changeset
    28
#include "hsappschecklist.h"
hgs
parents:
diff changeset
    29
#include "hscollectionnamedialog.h"
hgs
parents:
diff changeset
    30
#include "hsapp_defs.h"
hgs
parents:
diff changeset
    31
hgs
parents:
diff changeset
    32
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
    33
//
90
hgs
parents:
diff changeset
    34
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    35
//
hgs
parents:
diff changeset
    36
void MenuStatesTest::AddAppsToCollectionState_construction()
hgs
parents:
diff changeset
    37
{
hgs
parents:
diff changeset
    38
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
    39
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
    40
    __UHEAP_MARK;
hgs
parents:
diff changeset
    41
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
    42
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
    43
    {
hgs
parents:
diff changeset
    44
        HsMenuWorkerState parentState1;
hgs
parents:
diff changeset
    45
hgs
parents:
diff changeset
    46
        HsAddAppsToCollectionState aatcs1(&parentState1);
hgs
parents:
diff changeset
    47
        QString s1 = aatcs1.objectName();
hgs
parents:
diff changeset
    48
        QVERIFY(s1 == tr("homescreen.nokia.com/state/addappstocollectionstate"));
hgs
parents:
diff changeset
    49
hgs
parents:
diff changeset
    50
    }
hgs
parents:
diff changeset
    51
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
    52
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
    53
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
    54
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
    55
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
    56
}
hgs
parents:
diff changeset
    57
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
    58
90
hgs
parents:
diff changeset
    59
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
    60
//
90
hgs
parents:
diff changeset
    61
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    62
//
hgs
parents:
diff changeset
    63
void MenuStatesTest::AddAppsToCollectionState_save()
hgs
parents:
diff changeset
    64
{
hgs
parents:
diff changeset
    65
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
    66
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
    67
    __UHEAP_MARK;
hgs
parents:
diff changeset
    68
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
    69
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
    70
    {
hgs
parents:
diff changeset
    71
        HsMenuWorkerState parentState1;
hgs
parents:
diff changeset
    72
hgs
parents:
diff changeset
    73
        HsAddAppsToCollectionState aatcs1(&parentState1);
hgs
parents:
diff changeset
    74
hgs
parents:
diff changeset
    75
        aatcs1.mCollectionId = 10;
hgs
parents:
diff changeset
    76
        aatcs1.save();
hgs
parents:
diff changeset
    77
        QCOMPARE(aatcs1.mCollectionId, 10);
hgs
parents:
diff changeset
    78
hgs
parents:
diff changeset
    79
    }
hgs
parents:
diff changeset
    80
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
    81
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
    82
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
    83
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
    84
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
    85
}
hgs
parents:
diff changeset
    86
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
    87
90
hgs
parents:
diff changeset
    88
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
    89
//
90
hgs
parents:
diff changeset
    90
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    91
//
hgs
parents:
diff changeset
    92
void MenuStatesTest::AddAppsToCollectionState_cleanData()
hgs
parents:
diff changeset
    93
{
hgs
parents:
diff changeset
    94
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
    95
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
    96
    __UHEAP_MARK;
hgs
parents:
diff changeset
    97
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
    98
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
    99
    {
hgs
parents:
diff changeset
   100
        HsMenuWorkerState parentState1;
hgs
parents:
diff changeset
   101
hgs
parents:
diff changeset
   102
        HsAddAppsToCollectionState aatcs1(&parentState1);
hgs
parents:
diff changeset
   103
hgs
parents:
diff changeset
   104
        aatcs1.mCollectionId = 10;
hgs
parents:
diff changeset
   105
        aatcs1.cleanData();
hgs
parents:
diff changeset
   106
        QVERIFY(aatcs1.mCollectionId == 0);
hgs
parents:
diff changeset
   107
hgs
parents:
diff changeset
   108
    }
hgs
parents:
diff changeset
   109
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   110
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   111
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   112
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   113
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   114
}
hgs
parents:
diff changeset
   115
hgs
parents:
diff changeset
   116
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   117
//
90
hgs
parents:
diff changeset
   118
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   119
//
hgs
parents:
diff changeset
   120
void MenuStatesTest::AddAppsToCollectionState_setCollectionName()
hgs
parents:
diff changeset
   121
{
hgs
parents:
diff changeset
   122
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   123
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   124
    __UHEAP_MARK;
hgs
parents:
diff changeset
   125
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   126
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   127
    {
hgs
parents:
diff changeset
   128
        HsMenuWorkerState parentState1;
hgs
parents:
diff changeset
   129
hgs
parents:
diff changeset
   130
        HsAddAppsToCollectionState aatcs1(&parentState1);
hgs
parents:
diff changeset
   131
hgs
parents:
diff changeset
   132
        aatcs1.setCollectionName("test");
hgs
parents:
diff changeset
   133
        QVERIFY(aatcs1.mCollectionName == "test");
hgs
parents:
diff changeset
   134
hgs
parents:
diff changeset
   135
    }
hgs
parents:
diff changeset
   136
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   137
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   138
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   139
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   140
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   141
}
hgs
parents:
diff changeset
   142
hgs
parents:
diff changeset
   143
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   144
//
90
hgs
parents:
diff changeset
   145
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   146
//
hgs
parents:
diff changeset
   147
void MenuStatesTest::AddAppsToCollectionState_setCollectionId()
hgs
parents:
diff changeset
   148
{
hgs
parents:
diff changeset
   149
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   150
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   151
    __UHEAP_MARK;
hgs
parents:
diff changeset
   152
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   153
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   154
    {
hgs
parents:
diff changeset
   155
        HsMenuWorkerState parentState1;
hgs
parents:
diff changeset
   156
hgs
parents:
diff changeset
   157
        HsAddAppsToCollectionState aatcs1(&parentState1);
hgs
parents:
diff changeset
   158
hgs
parents:
diff changeset
   159
        aatcs1.setCollectionId(1);
hgs
parents:
diff changeset
   160
        QVERIFY(aatcs1.mCollectionId == 1);
hgs
parents:
diff changeset
   161
hgs
parents:
diff changeset
   162
    }
hgs
parents:
diff changeset
   163
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   164
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   165
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   166
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   167
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   168
}
hgs
parents:
diff changeset
   169
hgs
parents:
diff changeset
   170
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   171
//
90
hgs
parents:
diff changeset
   172
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   173
//
hgs
parents:
diff changeset
   174
void MenuStatesTest::AddAppsToCollectionState_setAppList()
hgs
parents:
diff changeset
   175
{
hgs
parents:
diff changeset
   176
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   177
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   178
    __UHEAP_MARK;
hgs
parents:
diff changeset
   179
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   180
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   181
    {
hgs
parents:
diff changeset
   182
        HsMenuWorkerState parentState1;
hgs
parents:
diff changeset
   183
hgs
parents:
diff changeset
   184
        HsAddAppsToCollectionState aatcs1(&parentState1);
hgs
parents:
diff changeset
   185
hgs
parents:
diff changeset
   186
        QList<int> appList;
hgs
parents:
diff changeset
   187
        appList.append(1);
hgs
parents:
diff changeset
   188
        aatcs1.setAppList(appList);
hgs
parents:
diff changeset
   189
        QVERIFY(aatcs1.mAppList.count() == 1);
hgs
parents:
diff changeset
   190
hgs
parents:
diff changeset
   191
    }
hgs
parents:
diff changeset
   192
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   193
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   194
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   195
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   196
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   197
}
hgs
parents:
diff changeset
   198
hgs
parents:
diff changeset
   199
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   200
//
90
hgs
parents:
diff changeset
   201
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   202
//
hgs
parents:
diff changeset
   203
void MenuStatesTest::AddAppsToCollectionState_showMessageAppsAdded()
hgs
parents:
diff changeset
   204
{
hgs
parents:
diff changeset
   205
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   206
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   207
    __UHEAP_MARK;
hgs
parents:
diff changeset
   208
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   209
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   210
    {
hgs
parents:
diff changeset
   211
        HsMenuWorkerState parentState;
hgs
parents:
diff changeset
   212
        HsAddAppsToCollectionState aatcs(&parentState);
hgs
parents:
diff changeset
   213
hgs
parents:
diff changeset
   214
        //aatcs.mMenuService = new MenuService();
hgs
parents:
diff changeset
   215
hgs
parents:
diff changeset
   216
        aatcs.onEntry(new HsMenuEvent(HsMenuEvent::OpenCollectionFromAppLibrary, QVariantMap()));
hgs
parents:
diff changeset
   217
        aatcs.showMessageAppsAdded(10);
hgs
parents:
diff changeset
   218
        aatcs.stateExited();
hgs
parents:
diff changeset
   219
    }
hgs
parents:
diff changeset
   220
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   221
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   222
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   223
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   224
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   225
}
hgs
parents:
diff changeset
   226
hgs
parents:
diff changeset
   227
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   228
//
90
hgs
parents:
diff changeset
   229
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   230
//
hgs
parents:
diff changeset
   231
void MenuStatesTest::AddAppsToCollectionState_selectCollection()
hgs
parents:
diff changeset
   232
{
hgs
parents:
diff changeset
   233
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   234
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   235
    __UHEAP_MARK;
hgs
parents:
diff changeset
   236
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   237
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   238
    {
hgs
parents:
diff changeset
   239
    HsMenuWorkerState parentState;
hgs
parents:
diff changeset
   240
    HsAddAppsToCollectionState aatcs(&parentState);
hgs
parents:
diff changeset
   241
    QVERIFY(aatcs.mListDialog == NULL);
hgs
parents:
diff changeset
   242
hgs
parents:
diff changeset
   243
    aatcs.selectCollection();
hgs
parents:
diff changeset
   244
hgs
parents:
diff changeset
   245
    QVERIFY(aatcs.mListDialog);
hgs
parents:
diff changeset
   246
    QVERIFY(aatcs.mListDialog->testAttribute(Qt::WA_DeleteOnClose));
hgs
parents:
diff changeset
   247
    QCOMPARE(aatcs.mListDialog->dismissPolicy(), HbPopup::NoDismiss);
hgs
parents:
diff changeset
   248
    // disconnect to check if connection was done
hgs
parents:
diff changeset
   249
    bool result = disconnect(aatcs.mListDialog, SIGNAL(finished(HbAction*)),
hgs
parents:
diff changeset
   250
               &aatcs, SLOT(listDialogFinished(HbAction*)));
hgs
parents:
diff changeset
   251
    QVERIFY (result);
hgs
parents:
diff changeset
   252
hgs
parents:
diff changeset
   253
    aatcs.mListDialog->close();
hgs
parents:
diff changeset
   254
hgs
parents:
diff changeset
   255
    }
hgs
parents:
diff changeset
   256
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   257
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   258
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   259
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   260
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   261
}
hgs
parents:
diff changeset
   262
hgs
parents:
diff changeset
   263
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   264
//
90
hgs
parents:
diff changeset
   265
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   266
//
hgs
parents:
diff changeset
   267
void MenuStatesTest::AddAppsToCollectionState_listDialogFinished()
hgs
parents:
diff changeset
   268
{
hgs
parents:
diff changeset
   269
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   270
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   271
    __UHEAP_MARK;
hgs
parents:
diff changeset
   272
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   273
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   274
    {
hgs
parents:
diff changeset
   275
    HsMenuWorkerState parentState;
hgs
parents:
diff changeset
   276
    HsAddAppsToCollectionState aatcs(&parentState);
hgs
parents:
diff changeset
   277
    QVERIFY(aatcs.mListDialog == NULL);
hgs
parents:
diff changeset
   278
hgs
parents:
diff changeset
   279
    aatcs.selectCollection();
hgs
parents:
diff changeset
   280
hgs
parents:
diff changeset
   281
    QVERIFY(aatcs.mListDialog);
hgs
parents:
diff changeset
   282
    
hgs
parents:
diff changeset
   283
    aatcs.listDialogFinished(qobject_cast<HbAction *>(aatcs.mListDialog->actions().value(1))); //Cancel
hgs
parents:
diff changeset
   284
    
hgs
parents:
diff changeset
   285
    QVERIFY(aatcs.mListDialog == NULL);
hgs
parents:
diff changeset
   286
hgs
parents:
diff changeset
   287
    }
hgs
parents:
diff changeset
   288
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   289
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   290
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   291
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   292
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   293
}
hgs
parents:
diff changeset
   294
hgs
parents:
diff changeset
   295
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   296
//
90
hgs
parents:
diff changeset
   297
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   298
//
hgs
parents:
diff changeset
   299
void MenuStatesTest::AddAppsToCollectionState_newCollection()
hgs
parents:
diff changeset
   300
{
hgs
parents:
diff changeset
   301
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   302
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   303
    __UHEAP_MARK;
hgs
parents:
diff changeset
   304
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   305
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   306
    {
hgs
parents:
diff changeset
   307
    HsMenuWorkerState parentState;
hgs
parents:
diff changeset
   308
    HsAddAppsToCollectionState aatcs(&parentState);
hgs
parents:
diff changeset
   309
    QVERIFY(aatcs.mEditorDialog == NULL);
hgs
parents:
diff changeset
   310
hgs
parents:
diff changeset
   311
    aatcs.newCollection();
hgs
parents:
diff changeset
   312
hgs
parents:
diff changeset
   313
    QVERIFY(aatcs.mEditorDialog);
hgs
parents:
diff changeset
   314
    QVERIFY(aatcs.mEditorDialog->testAttribute(Qt::WA_DeleteOnClose));
hgs
parents:
diff changeset
   315
hgs
parents:
diff changeset
   316
    // disconnect to check if connection was done 
hgs
parents:
diff changeset
   317
    bool result = disconnect(aatcs.mEditorDialog, SIGNAL(finished(HbAction*)),
hgs
parents:
diff changeset
   318
               &aatcs, SLOT(editorDialogFinished(HbAction*)));
hgs
parents:
diff changeset
   319
    QVERIFY (result);
hgs
parents:
diff changeset
   320
hgs
parents:
diff changeset
   321
    aatcs.mEditorDialog->close();
hgs
parents:
diff changeset
   322
hgs
parents:
diff changeset
   323
hgs
parents:
diff changeset
   324
    }
hgs
parents:
diff changeset
   325
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   326
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   327
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   328
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   329
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   330
}
hgs
parents:
diff changeset
   331
hgs
parents:
diff changeset
   332
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   333
//
90
hgs
parents:
diff changeset
   334
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   335
//
hgs
parents:
diff changeset
   336
void MenuStatesTest::AddAppsToCollectionState_editorDialogFinished()
hgs
parents:
diff changeset
   337
{
hgs
parents:
diff changeset
   338
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   339
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   340
    __UHEAP_MARK;
hgs
parents:
diff changeset
   341
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   342
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   343
    {
hgs
parents:
diff changeset
   344
    HsMenuWorkerState parentState;
hgs
parents:
diff changeset
   345
    HsAddAppsToCollectionState aatcs(&parentState);
hgs
parents:
diff changeset
   346
    aatcs.mEditorDialog = new HsCollectionNameDialog();
hgs
parents:
diff changeset
   347
    
hgs
parents:
diff changeset
   348
    aatcs.editorDialogFinished(qobject_cast<HbAction *>(aatcs.mEditorDialog->actions().value(0)));
hgs
parents:
diff changeset
   349
    
hgs
parents:
diff changeset
   350
    QVERIFY(aatcs.mEditorDialog == NULL);
hgs
parents:
diff changeset
   351
hgs
parents:
diff changeset
   352
    }
hgs
parents:
diff changeset
   353
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   354
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   355
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   356
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   357
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   358
}
hgs
parents:
diff changeset
   359
hgs
parents:
diff changeset
   360
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   361
//
90
hgs
parents:
diff changeset
   362
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   363
//
hgs
parents:
diff changeset
   364
void MenuStatesTest::AddAppsToCollectionState_collectionSelected()
hgs
parents:
diff changeset
   365
{
hgs
parents:
diff changeset
   366
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   367
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   368
    __UHEAP_MARK;
hgs
parents:
diff changeset
   369
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   370
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   371
    {
hgs
parents:
diff changeset
   372
    HsMenuWorkerState parentState;
hgs
parents:
diff changeset
   373
    HsAddAppsToCollectionState aatcs(&parentState);
hgs
parents:
diff changeset
   374
    QVERIFY(aatcs.mListDialog == NULL);
hgs
parents:
diff changeset
   375
hgs
parents:
diff changeset
   376
    aatcs.selectCollection();
hgs
parents:
diff changeset
   377
hgs
parents:
diff changeset
   378
    QVERIFY(aatcs.mListDialog);
hgs
parents:
diff changeset
   379
hgs
parents:
diff changeset
   380
    QStandardItemModel *standardItemModel = aatcs.standardItemModel(0);
hgs
parents:
diff changeset
   381
    QModelIndex index(standardItemModel->indexFromItem(standardItemModel->item(3,0)));
hgs
parents:
diff changeset
   382
    QVERIFY(index.isValid());
hgs
parents:
diff changeset
   383
    aatcs.collectionSelected(index);
hgs
parents:
diff changeset
   384
    
hgs
parents:
diff changeset
   385
    QVERIFY(aatcs.mListDialog == NULL);
hgs
parents:
diff changeset
   386
    delete standardItemModel;
hgs
parents:
diff changeset
   387
    }
hgs
parents:
diff changeset
   388
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   389
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   390
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   391
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   392
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   393
}
hgs
parents:
diff changeset
   394
hgs
parents:
diff changeset
   395
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   396
//
90
hgs
parents:
diff changeset
   397
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   398
//
hgs
parents:
diff changeset
   399
void MenuStatesTest::AddAppsToCollectionState_appsCheckListState()
hgs
parents:
diff changeset
   400
{
hgs
parents:
diff changeset
   401
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   402
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   403
    __UHEAP_MARK;
hgs
parents:
diff changeset
   404
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   405
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   406
    {
hgs
parents:
diff changeset
   407
    HsAddAppsToCollectionState addAppsState;
hgs
parents:
diff changeset
   408
    connect(&addAppsState,SIGNAL(transitToFinalState()),
hgs
parents:
diff changeset
   409
        this,SLOT(testTransitToStateSlot()));
hgs
parents:
diff changeset
   410
    QCOMPARE((int)addAppsState.mAppsCheckList,NULL);
hgs
parents:
diff changeset
   411
    addAppsState.appsCheckListState();
hgs
parents:
diff changeset
   412
    QVERIFY(addAppsState.mAppsCheckList != NULL);
hgs
parents:
diff changeset
   413
    QCOMPARE(addAppsState.mAppsCheckList->mSortAttribute,
hgs
parents:
diff changeset
   414
        addAppsState.mApplicationsSortAttribute);
hgs
parents:
diff changeset
   415
    mTransitToStateEmited = false;
hgs
parents:
diff changeset
   416
    addAppsState.mAppsCheckList->mAppsSelectDialog->close();
hgs
parents:
diff changeset
   417
    QTest::qWait(150);
hgs
parents:
diff changeset
   418
    QCOMPARE(mTransitToStateEmited,true);
hgs
parents:
diff changeset
   419
    }
hgs
parents:
diff changeset
   420
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   421
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   422
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   423
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   424
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   425
}
hgs
parents:
diff changeset
   426
hgs
parents:
diff changeset
   427
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   428
//
90
hgs
parents:
diff changeset
   429
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   430
//
hgs
parents:
diff changeset
   431
void MenuStatesTest::AddAppsToCollectionState_selectApplicationsDone()
hgs
parents:
diff changeset
   432
{
hgs
parents:
diff changeset
   433
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   434
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   435
    __UHEAP_MARK;
hgs
parents:
diff changeset
   436
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   437
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   438
    {
hgs
parents:
diff changeset
   439
    HsAddAppsToCollectionState addAppsState;
hgs
parents:
diff changeset
   440
    connect(&addAppsState,SIGNAL(transitToSaveState(const QList<int>&)),
hgs
parents:
diff changeset
   441
        this,SLOT(testTransitToStateSlot()));
hgs
parents:
diff changeset
   442
    QList<int> appList;
hgs
parents:
diff changeset
   443
    appList.append(1222);
hgs
parents:
diff changeset
   444
    QCOMPARE(addAppsState.mActionType,
hgs
parents:
diff changeset
   445
        HsAddAppsToCollectionState::NoActionType);
hgs
parents:
diff changeset
   446
    mTransitToStateEmited = false;
hgs
parents:
diff changeset
   447
    addAppsState.selectApplicationsDone(appList);
hgs
parents:
diff changeset
   448
    QTest::qWait(100);
hgs
parents:
diff changeset
   449
    QCOMPARE(mTransitToStateEmited,true);
hgs
parents:
diff changeset
   450
    
hgs
parents:
diff changeset
   451
    addAppsState.mActionType =
hgs
parents:
diff changeset
   452
        HsAddAppsToCollectionState::ViaAllViewOptionMenuType;
hgs
parents:
diff changeset
   453
    disconnect(&addAppsState,SIGNAL(transitToFinalState()),
hgs
parents:
diff changeset
   454
            this,SLOT(testTransitToStateSlot()));
hgs
parents:
diff changeset
   455
    connect(&addAppsState,SIGNAL(transitToSelectCollectionState()),
hgs
parents:
diff changeset
   456
            this,SLOT(testTransitToStateSlot()));
hgs
parents:
diff changeset
   457
    mTransitToStateEmited = false;
hgs
parents:
diff changeset
   458
    addAppsState.selectApplicationsDone(appList);
hgs
parents:
diff changeset
   459
    QTest::qWait(100);
hgs
parents:
diff changeset
   460
    QCOMPARE(mTransitToStateEmited,true);
hgs
parents:
diff changeset
   461
    }
hgs
parents:
diff changeset
   462
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   463
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   464
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   465
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   466
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   467
}
hgs
parents:
diff changeset
   468
hgs
parents:
diff changeset
   469
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   470
//
90
hgs
parents:
diff changeset
   471
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   472
//
hgs
parents:
diff changeset
   473
void MenuStatesTest::AppsCheckList_showAppsCheckboxList()
hgs
parents:
diff changeset
   474
{
hgs
parents:
diff changeset
   475
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   476
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   477
    __UHEAP_MARK;
hgs
parents:
diff changeset
   478
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   479
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   480
    {
hgs
parents:
diff changeset
   481
        HsAppsCheckList checkList;
hgs
parents:
diff changeset
   482
        Hs::HsSortAttribute sortOrder = Hs::NoHsSortAttribute;
hgs
parents:
diff changeset
   483
        mCommitEmited = false;
hgs
parents:
diff changeset
   484
        connect(&checkList,SIGNAL(commit(const QList<int>&)),
hgs
parents:
diff changeset
   485
                this,SLOT(testCommitSlot(const QList<int>&)));
hgs
parents:
diff changeset
   486
        checkList.showAppsCheckboxList(sortOrder);
hgs
parents:
diff changeset
   487
        QVERIFY(checkList.mModel != NULL);
hgs
parents:
diff changeset
   488
        QVERIFY(checkList.mActionConfirm != NULL);
hgs
parents:
diff changeset
   489
        QVERIFY(checkList.mListView != NULL);
hgs
parents:
diff changeset
   490
        QVERIFY(checkList.mAppsSelectDialog != NULL);
hgs
parents:
diff changeset
   491
        QCOMPARE(mCommitEmited,false);
hgs
parents:
diff changeset
   492
        checkList.mAppsSelectDialog->close();
hgs
parents:
diff changeset
   493
        QTest::qWait(100);
hgs
parents:
diff changeset
   494
        QCOMPARE((int)checkList.mAppsSelectDialog,NULL);
hgs
parents:
diff changeset
   495
        QCOMPARE(mCommitEmited,true);
hgs
parents:
diff changeset
   496
    }
hgs
parents:
diff changeset
   497
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   498
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   499
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   500
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   501
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   502
}
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   503
90
hgs
parents:
diff changeset
   504
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   505
//
90
hgs
parents:
diff changeset
   506
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   507
//
hgs
parents:
diff changeset
   508
void MenuStatesTest::testCommitSlot(const QList<int> &appList)
hgs
parents:
diff changeset
   509
{
hgs
parents:
diff changeset
   510
    if(appList.isEmpty()){
hgs
parents:
diff changeset
   511
        mCommitEmited = true;
hgs
parents:
diff changeset
   512
    } else {
hgs
parents:
diff changeset
   513
        mCommitEmited = false;
hgs
parents:
diff changeset
   514
    }
hgs
parents:
diff changeset
   515
}
hgs
parents:
diff changeset
   516
hgs
parents:
diff changeset
   517
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   518
//
90
hgs
parents:
diff changeset
   519
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   520
//
hgs
parents:
diff changeset
   521
void MenuStatesTest::AppsCheckList_getItemsList()
hgs
parents:
diff changeset
   522
{
hgs
parents:
diff changeset
   523
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   524
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   525
    __UHEAP_MARK;
hgs
parents:
diff changeset
   526
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   527
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   528
    {
hgs
parents:
diff changeset
   529
        QStandardItemModel *standardModel = new QStandardItemModel(2,1);
hgs
parents:
diff changeset
   530
        QStandardItem *standardItem = new QStandardItem();
hgs
parents:
diff changeset
   531
        standardItem->setData(2, CaItemModel::IdRole);
hgs
parents:
diff changeset
   532
        standardItem->setData(QString("bbb"), Qt::DisplayRole);
hgs
parents:
diff changeset
   533
        QList<QStandardItem *> items;
hgs
parents:
diff changeset
   534
        items << standardItem;
hgs
parents:
diff changeset
   535
        standardModel->insertRow(0, items);
hgs
parents:
diff changeset
   536
        {
hgs
parents:
diff changeset
   537
            QStandardItem *standardItem = new QStandardItem();
hgs
parents:
diff changeset
   538
            standardItem->setData(3, CaItemModel::IdRole);
hgs
parents:
diff changeset
   539
            //standardItem->setData(QString("aaa"), Qt::DisplayRole);
hgs
parents:
diff changeset
   540
            QList<QVariant> text;
hgs
parents:
diff changeset
   541
            text << QString("aaa");
hgs
parents:
diff changeset
   542
            text << QString("ccc");
hgs
parents:
diff changeset
   543
            standardItem->setData(text, Qt::DisplayRole);
hgs
parents:
diff changeset
   544
hgs
parents:
diff changeset
   545
            QList<QStandardItem *> items;
hgs
parents:
diff changeset
   546
            items << standardItem;
hgs
parents:
diff changeset
   547
            standardModel->insertRow(0, items);
hgs
parents:
diff changeset
   548
        }
hgs
parents:
diff changeset
   549
hgs
parents:
diff changeset
   550
        QModelIndexList modelIndexList;
hgs
parents:
diff changeset
   551
        modelIndexList.append(standardModel->index(0,0));
hgs
parents:
diff changeset
   552
        modelIndexList.append(standardModel->index(1,0));
hgs
parents:
diff changeset
   553
hgs
parents:
diff changeset
   554
        HsMenuWorkerState parentState;
hgs
parents:
diff changeset
   555
hgs
parents:
diff changeset
   556
        HsAppsCheckList checkList;
hgs
parents:
diff changeset
   557
        QList<int> list = checkList.getSortedItemsList(modelIndexList);
hgs
parents:
diff changeset
   558
        QCOMPARE(list.count(), 2);
hgs
parents:
diff changeset
   559
        QCOMPARE(list[0], 3);
hgs
parents:
diff changeset
   560
        QCOMPARE(list[1], 2);
hgs
parents:
diff changeset
   561
    }
hgs
parents:
diff changeset
   562
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   563
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   564
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   565
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   566
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   567
}
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   568
90
hgs
parents:
diff changeset
   569
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   570
//
90
hgs
parents:
diff changeset
   571
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   572
//
hgs
parents:
diff changeset
   573
void MenuStatesTest::AppsCheckList_setSortOrder()
hgs
parents:
diff changeset
   574
{
hgs
parents:
diff changeset
   575
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   576
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   577
    __UHEAP_MARK;
hgs
parents:
diff changeset
   578
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   579
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   580
    {
hgs
parents:
diff changeset
   581
        HsAppsCheckList checkList;
hgs
parents:
diff changeset
   582
        QCOMPARE(checkList.mSortAttribute, Hs::AscendingNameHsSortAttribute);
hgs
parents:
diff changeset
   583
        checkList.setSortOrder(Hs::DescendingNameHsSortAttribute);
hgs
parents:
diff changeset
   584
        QCOMPARE(checkList.mSortAttribute, Hs::DescendingNameHsSortAttribute);
hgs
parents:
diff changeset
   585
    }
hgs
parents:
diff changeset
   586
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   587
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   588
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   589
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   590
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   591
}
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   592
90
hgs
parents:
diff changeset
   593
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   594
//
90
hgs
parents:
diff changeset
   595
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   596
//
hgs
parents:
diff changeset
   597
void MenuStatesTest::AppsCheckList_selectedItemsChanged()
hgs
parents:
diff changeset
   598
{
hgs
parents:
diff changeset
   599
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   600
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   601
    __UHEAP_MARK;
hgs
parents:
diff changeset
   602
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   603
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   604
    {
hgs
parents:
diff changeset
   605
        HsAppsCheckList checkList;
hgs
parents:
diff changeset
   606
        checkList.mModel =
hgs
parents:
diff changeset
   607
                HsMenuService::getAllApplicationsModel(Hs::NoHsSortAttribute);
hgs
parents:
diff changeset
   608
        checkList.constructControls();
hgs
parents:
diff changeset
   609
        QVERIFY(checkList.mActionConfirm != NULL);
hgs
parents:
diff changeset
   610
        QVERIFY(checkList.mListView != NULL);
hgs
parents:
diff changeset
   611
        QVERIFY(checkList.mAppsSelectDialog != NULL);
hgs
parents:
diff changeset
   612
        checkList.selectedItemsChanged();
hgs
parents:
diff changeset
   613
        QCOMPARE(checkList.mActionConfirm->isEnabled(),false);
hgs
parents:
diff changeset
   614
        QItemSelectionModel *model = checkList.mListView->selectionModel();
hgs
parents:
diff changeset
   615
        model->select(model->model()->index(0,0),QItemSelectionModel::Select);
hgs
parents:
diff changeset
   616
        QTest::qWait(100);
hgs
parents:
diff changeset
   617
        checkList.selectedItemsChanged();
hgs
parents:
diff changeset
   618
        QCOMPARE(checkList.mActionConfirm->isEnabled(),true);
hgs
parents:
diff changeset
   619
    }
hgs
parents:
diff changeset
   620
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   621
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   622
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   623
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   624
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   625
}
hgs
parents:
diff changeset
   626
hgs
parents:
diff changeset
   627
// ---------------------------------------------------------------------------
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   628
//
90
hgs
parents:
diff changeset
   629
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   630
//
hgs
parents:
diff changeset
   631
void MenuStatesTest::testTransitToStateSlot()
hgs
parents:
diff changeset
   632
{
hgs
parents:
diff changeset
   633
    mTransitToStateEmited = true;
hgs
parents:
diff changeset
   634
}
hgs
parents:
diff changeset
   635