homescreenapp/stateplugins/hsapplibrarystateplugin/tsrc/t_allappsstate/src/t_allappsstate.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) 2010 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 <HbMainWindow>
hgs
parents:
diff changeset
    19
#include <HbInstance>
hgs
parents:
diff changeset
    20
#include <HbView>
hgs
parents:
diff changeset
    21
#include <HbListView>
hgs
parents:
diff changeset
    22
#include <HbListViewItem>
hgs
parents:
diff changeset
    23
#include <HbMenu>
hgs
parents:
diff changeset
    24
#include <HbAction>
hgs
parents:
diff changeset
    25
#include <qscopedpointer>
hgs
parents:
diff changeset
    26
#include <qservicemanager.h>
hgs
parents:
diff changeset
    27
#include "caentry.h"
hgs
parents:
diff changeset
    28
#include "caitemmodel.h"
hgs
parents:
diff changeset
    29
#include "hsmenuview.h"
hgs
parents:
diff changeset
    30
#include "hsmenuevent.h"
hgs
parents:
diff changeset
    31
#include "hsallappsstate.h"
hgs
parents:
diff changeset
    32
#include "hsmenueventtransition.h"
hgs
parents:
diff changeset
    33
#include "hsmainwindow.h"
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
    34
#include "hsscene.h"
90
hgs
parents:
diff changeset
    35
hgs
parents:
diff changeset
    36
#include "t_hsaddtohomescreenmockstate.h"
hgs
parents:
diff changeset
    37
#include "t_hsmockmodel.h"
hgs
parents:
diff changeset
    38
#include "t_allappsstate.h"
hgs
parents:
diff changeset
    39
hgs
parents:
diff changeset
    40
QTM_USE_NAMESPACE
hgs
parents:
diff changeset
    41
hgs
parents:
diff changeset
    42
hgs
parents:
diff changeset
    43
hgs
parents:
diff changeset
    44
class HsMainWindowMock : public HsMainWindow
hgs
parents:
diff changeset
    45
{
hgs
parents:
diff changeset
    46
    virtual void setCurrentView(HbView *view);
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
};
hgs
parents:
diff changeset
    49
hgs
parents:
diff changeset
    50
void HsMainWindowMock::setCurrentView(HbView *view)
hgs
parents:
diff changeset
    51
{
hgs
parents:
diff changeset
    52
    Q_UNUSED(view)
hgs
parents:
diff changeset
    53
    // do nothing    
hgs
parents:
diff changeset
    54
}
hgs
parents:
diff changeset
    55
hgs
parents:
diff changeset
    56
//void MenuStatesTest::initTestCase()
hgs
parents:
diff changeset
    57
//{
hgs
parents:
diff changeset
    58
//    mMainWindow = new HbMainWindow();
hgs
parents:
diff changeset
    59
//}
hgs
parents:
diff changeset
    60
hgs
parents:
diff changeset
    61
hgs
parents:
diff changeset
    62
//void MenuStatesTest::init()
hgs
parents:
diff changeset
    63
//{
hgs
parents:
diff changeset
    64
//	if (mMainWindow==NULL)
hgs
parents:
diff changeset
    65
//		{
hgs
parents:
diff changeset
    66
//	    mMainWindow = new HbMainWindow();
hgs
parents:
diff changeset
    67
//		}
hgs
parents:
diff changeset
    68
//}
hgs
parents:
diff changeset
    69
hgs
parents:
diff changeset
    70
//void MenuStatesTest::cleanup()
hgs
parents:
diff changeset
    71
//{
hgs
parents:
diff changeset
    72
//    qApp->processEvents();
hgs
parents:
diff changeset
    73
//    delete mMainWindow;
hgs
parents:
diff changeset
    74
//    mMainWindow = NULL;
hgs
parents:
diff changeset
    75
//}
hgs
parents:
diff changeset
    76
hgs
parents:
diff changeset
    77
//void MenuStatesTest::cleanupTestCase()
hgs
parents:
diff changeset
    78
//{
hgs
parents:
diff changeset
    79
//    //    delete mMainWindow;
hgs
parents:
diff changeset
    80
//}
hgs
parents:
diff changeset
    81
hgs
parents:
diff changeset
    82
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    83
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
    84
//
hgs
parents:
diff changeset
    85
void MenuStatesTest::construction()
hgs
parents:
diff changeset
    86
{
hgs
parents:
diff changeset
    87
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
    88
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
    89
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
    90
    __UHEAP_MARK;
hgs
parents:
diff changeset
    91
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
    92
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
    93
    {
hgs
parents:
diff changeset
    94
        ////clear test entries
hgs
parents:
diff changeset
    95
        CaQuery q;
hgs
parents:
diff changeset
    96
        q.setAttribute(QString(Hs::widgetParam)+TEST_PARAM_NAME,
hgs
parents:
diff changeset
    97
            TEST_PARAM_VALUE);
hgs
parents:
diff changeset
    98
        QSharedPointer<CaService> caServiceInstance = CaService::instance();
hgs
parents:
diff changeset
    99
        QList< QSharedPointer<CaEntry> > testEntries = caServiceInstance->getEntries(q);
hgs
parents:
diff changeset
   100
        caServiceInstance->removeEntries(testEntries);
hgs
parents:
diff changeset
   101
hgs
parents:
diff changeset
   102
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   103
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   104
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   105
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   106
            builder, menuMode, mainWindow, 0));
hgs
parents:
diff changeset
   107
hgs
parents:
diff changeset
   108
        QCOMPARE(allAppsState->mSortAttribute,
hgs
parents:
diff changeset
   109
                 Hs::AscendingNameHsSortAttribute);
hgs
parents:
diff changeset
   110
hgs
parents:
diff changeset
   111
        QVERIFY(allAppsState->mModel != static_cast<HsMenuItemModel *>(0));
hgs
parents:
diff changeset
   112
    }
hgs
parents:
diff changeset
   113
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   114
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   115
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   116
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   117
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   118
}
hgs
parents:
diff changeset
   119
hgs
parents:
diff changeset
   120
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   121
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   122
//
hgs
parents:
diff changeset
   123
hgs
parents:
diff changeset
   124
void MenuStatesTest::addModeEnteredExited()
hgs
parents:
diff changeset
   125
{
hgs
parents:
diff changeset
   126
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   127
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   128
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   129
    __UHEAP_MARK;
hgs
parents:
diff changeset
   130
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   131
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   132
    {
hgs
parents:
diff changeset
   133
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   134
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   135
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   136
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   137
        builder, menuMode, mainWindow, 0));
hgs
parents:
diff changeset
   138
        allAppsState->mViewOptions = new HbMenu();
hgs
parents:
diff changeset
   139
hgs
parents:
diff changeset
   140
        allAppsState->mMenuMode->setHsMenuMode(Hs::AddHsMenuMode);
hgs
parents:
diff changeset
   141
        allAppsState->addModeEntered();
hgs
parents:
diff changeset
   142
        QCOMPARE(allAppsState->mMenuMode->getHsMenuMode(),Hs::AddHsMenuMode);
hgs
parents:
diff changeset
   143
        allAppsState->mMenuView->view()->setMenu( 0 );
hgs
parents:
diff changeset
   144
        allAppsState->addModeExited();
hgs
parents:
diff changeset
   145
        QCOMPARE(allAppsState->mMenuView->view()->menu(),allAppsState->mViewOptions);
hgs
parents:
diff changeset
   146
hgs
parents:
diff changeset
   147
    }
hgs
parents:
diff changeset
   148
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   149
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   150
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   151
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   152
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   153
}
hgs
parents:
diff changeset
   154
hgs
parents:
diff changeset
   155
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   156
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   157
//
hgs
parents:
diff changeset
   158
void MenuStatesTest::sortOrder()
hgs
parents:
diff changeset
   159
{
hgs
parents:
diff changeset
   160
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   161
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   162
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   163
    __UHEAP_MARK;
hgs
parents:
diff changeset
   164
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   165
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   166
    {
hgs
parents:
diff changeset
   167
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   168
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   169
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   170
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   171
            builder, menuMode, mainWindow, 0));
hgs
parents:
diff changeset
   172
        allAppsState->scrollToBeginning();
hgs
parents:
diff changeset
   173
hgs
parents:
diff changeset
   174
        allAppsState->stateEntered();
hgs
parents:
diff changeset
   175
hgs
parents:
diff changeset
   176
        QVERIFY(allAppsState->mModel->columnCount() > 0);
hgs
parents:
diff changeset
   177
        QVERIFY(allAppsState->mModel->rowCount() > 0);
hgs
parents:
diff changeset
   178
        QVERIFY(allAppsState->mMenuView->view()->menu() != NULL);
hgs
parents:
diff changeset
   179
hgs
parents:
diff changeset
   180
        allAppsState->stateExited();
hgs
parents:
diff changeset
   181
hgs
parents:
diff changeset
   182
        QVERIFY(allAppsState->mModel->columnCount() > 0);
hgs
parents:
diff changeset
   183
        QVERIFY(allAppsState->mModel->rowCount() > 0);
hgs
parents:
diff changeset
   184
        QVERIFY(allAppsState->mMenuView->view()->menu()->isEmpty());
hgs
parents:
diff changeset
   185
hgs
parents:
diff changeset
   186
        QVERIFY(allAppsState->mModel);
hgs
parents:
diff changeset
   187
        QCOMPARE(allAppsState->mSortAttribute,
hgs
parents:
diff changeset
   188
                 Hs::AscendingNameHsSortAttribute);
hgs
parents:
diff changeset
   189
hgs
parents:
diff changeset
   190
        allAppsState->setMenuOptions();
hgs
parents:
diff changeset
   191
        QVERIFY(allAppsState->mAscendingMenuAction != 0);
hgs
parents:
diff changeset
   192
        QVERIFY(allAppsState->mDescendingMenuAction != 0);
hgs
parents:
diff changeset
   193
        allAppsState->descendingMenuAction();
hgs
parents:
diff changeset
   194
        QCOMPARE(allAppsState->mSortAttribute,
hgs
parents:
diff changeset
   195
                 Hs::DescendingNameHsSortAttribute);
hgs
parents:
diff changeset
   196
hgs
parents:
diff changeset
   197
        allAppsState->ascendingMenuAction();
hgs
parents:
diff changeset
   198
        QCOMPARE(allAppsState->mSortAttribute,
hgs
parents:
diff changeset
   199
                 Hs::AscendingNameHsSortAttribute);
hgs
parents:
diff changeset
   200
    }
hgs
parents:
diff changeset
   201
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   202
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   203
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   204
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   205
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   206
}
hgs
parents:
diff changeset
   207
hgs
parents:
diff changeset
   208
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   209
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   210
//
hgs
parents:
diff changeset
   211
void MenuStatesTest::listItemActivated()
hgs
parents:
diff changeset
   212
{
hgs
parents:
diff changeset
   213
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   214
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   215
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   216
    __UHEAP_MARK;
hgs
parents:
diff changeset
   217
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   218
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   219
    {
hgs
parents:
diff changeset
   220
        QScopedPointer<QStateMachine> machine(new QStateMachine(0));
hgs
parents:
diff changeset
   221
        QState *parent = new QState(machine.data());
hgs
parents:
diff changeset
   222
hgs
parents:
diff changeset
   223
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   224
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   225
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   226
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   227
            builder, menuMode, mainWindow, parent));
hgs
parents:
diff changeset
   228
hgs
parents:
diff changeset
   229
        allAppsState->scrollToBeginning();
hgs
parents:
diff changeset
   230
hgs
parents:
diff changeset
   231
        QVERIFY(allAppsState->mModel != NULL);
hgs
parents:
diff changeset
   232
        QModelIndex applicationModelIndex = allAppsState->mModel->index(1, 0);
hgs
parents:
diff changeset
   233
        
hgs
parents:
diff changeset
   234
        allAppsState->launchItem(applicationModelIndex);
hgs
parents:
diff changeset
   235
hgs
parents:
diff changeset
   236
        QTest::qWait(1000);
hgs
parents:
diff changeset
   237
        QVariant launchedItem = allAppsState->mModel->data(applicationModelIndex,
hgs
parents:
diff changeset
   238
                                                           CaItemModel::IdRole);
hgs
parents:
diff changeset
   239
        //TODO: made some utils to closing application
hgs
parents:
diff changeset
   240
        //HsMenuService::executeAction(launchedItem.toInt(), QString("close"));
hgs
parents:
diff changeset
   241
    }
hgs
parents:
diff changeset
   242
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   243
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   244
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   245
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   246
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   247
}
hgs
parents:
diff changeset
   248
hgs
parents:
diff changeset
   249
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   250
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   251
//
hgs
parents:
diff changeset
   252
void MenuStatesTest::listItemLongPressed()
hgs
parents:
diff changeset
   253
{
hgs
parents:
diff changeset
   254
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   255
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   256
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   257
    __UHEAP_MARK;
hgs
parents:
diff changeset
   258
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   259
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   260
    {
hgs
parents:
diff changeset
   261
        QScopedPointer<QStateMachine> machine(new QStateMachine(0));
hgs
parents:
diff changeset
   262
        QState *parent = new QState(machine.data());
hgs
parents:
diff changeset
   263
hgs
parents:
diff changeset
   264
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   265
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   266
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   267
        
hgs
parents:
diff changeset
   268
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   269
            builder, menuMode, mainWindow, parent));
hgs
parents:
diff changeset
   270
hgs
parents:
diff changeset
   271
        allAppsState->scrollToBeginning();
hgs
parents:
diff changeset
   272
hgs
parents:
diff changeset
   273
        allAppsState->stateEntered();
hgs
parents:
diff changeset
   274
        QScopedPointer<HbAbstractViewItem> item(new HbListViewItem);
hgs
parents:
diff changeset
   275
hgs
parents:
diff changeset
   276
        QVERIFY(allAppsState->mModel != NULL);
hgs
parents:
diff changeset
   277
        QModelIndex itemModelIndex = allAppsState->mModel->index(0, 0);
hgs
parents:
diff changeset
   278
        item->setModelIndex(itemModelIndex);
hgs
parents:
diff changeset
   279
hgs
parents:
diff changeset
   280
        allAppsState->showContextMenu(item.data() , QPointF(50,50));
hgs
parents:
diff changeset
   281
hgs
parents:
diff changeset
   282
        QSharedPointer<const CaEntry> entry =
hgs
parents:
diff changeset
   283
                allAppsState->mModel->entry(item->modelIndex());
hgs
parents:
diff changeset
   284
hgs
parents:
diff changeset
   285
        if (!(entry->attribute(Hs::appSettingsPlugin).isEmpty())) {
hgs
parents:
diff changeset
   286
            QVERIFY(allAppsState->mContextMenu->actions().length() == 5);
hgs
parents:
diff changeset
   287
        } else {
hgs
parents:
diff changeset
   288
            QVERIFY(allAppsState->mContextMenu->actions().length() == 4);
hgs
parents:
diff changeset
   289
        }
hgs
parents:
diff changeset
   290
hgs
parents:
diff changeset
   291
        QVERIFY(allAppsState->mContextMenu->testAttribute(Qt::WA_DeleteOnClose));
hgs
parents:
diff changeset
   292
hgs
parents:
diff changeset
   293
hgs
parents:
diff changeset
   294
        allAppsState->stateExited();
hgs
parents:
diff changeset
   295
hgs
parents:
diff changeset
   296
        qApp->processEvents();
hgs
parents:
diff changeset
   297
    }
hgs
parents:
diff changeset
   298
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   299
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   300
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   301
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   302
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   303
}
hgs
parents:
diff changeset
   304
hgs
parents:
diff changeset
   305
hgs
parents:
diff changeset
   306
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   307
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   308
//
hgs
parents:
diff changeset
   309
void MenuStatesTest::contextMenuAction()
hgs
parents:
diff changeset
   310
{
hgs
parents:
diff changeset
   311
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   312
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   313
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   314
    __UHEAP_MARK;
hgs
parents:
diff changeset
   315
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   316
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   317
    {
hgs
parents:
diff changeset
   318
        QScopedPointer<QStateMachine> machine(new QStateMachine(0));
hgs
parents:
diff changeset
   319
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   320
        //QScopedPointer<HbMainWindow> window(new HbMainWindow);
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   321
        //HsScene::setInstance( new HsScene(window.data()) );
90
hgs
parents:
diff changeset
   322
hgs
parents:
diff changeset
   323
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   324
        HsMenuModeWrapper menuMode;
97
66b5fe3c07fd 201039_01
hgs
parents: 90
diff changeset
   325
        HsMainWindowMock mainWindow;
90
hgs
parents:
diff changeset
   326
hgs
parents:
diff changeset
   327
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   328
            builder, menuMode, mainWindow, machine.data()));
hgs
parents:
diff changeset
   329
hgs
parents:
diff changeset
   330
hgs
parents:
diff changeset
   331
        // we will start from all apps view
hgs
parents:
diff changeset
   332
        machine->setInitialState(allAppsState.data());
hgs
parents:
diff changeset
   333
hgs
parents:
diff changeset
   334
        // create a state which is to be reached when add-to-home-screen
hgs
parents:
diff changeset
   335
        // event is triggered
hgs
parents:
diff changeset
   336
        AddToHomeScreenMockState addToHomeScreenState(machine.data());
hgs
parents:
diff changeset
   337
hgs
parents:
diff changeset
   338
        // create a transition to the new child state which will be triggered by
hgs
parents:
diff changeset
   339
        // an event with specified operation type
hgs
parents:
diff changeset
   340
        HsMenuEventTransition addToHomeScreenTransition(
hgs
parents:
diff changeset
   341
            HsMenuEvent::AddToHomeScreen, allAppsState.data(), &addToHomeScreenState);
hgs
parents:
diff changeset
   342
hgs
parents:
diff changeset
   343
        // prepare the state graph
hgs
parents:
diff changeset
   344
        allAppsState->addTransition(&addToHomeScreenTransition);
hgs
parents:
diff changeset
   345
hgs
parents:
diff changeset
   346
        // MockModel object is to provide CaEntry representing widget
hgs
parents:
diff changeset
   347
        // the object will be deleted on destruction of allAppsState
hgs
parents:
diff changeset
   348
        MockModel *allAppsModel = new MockModel;
hgs
parents:
diff changeset
   349
        allAppsState->mModel = allAppsModel;
hgs
parents:
diff changeset
   350
        allAppsState->mMenuView->setModel(allAppsModel);
hgs
parents:
diff changeset
   351
hgs
parents:
diff changeset
   352
        machine->start();
hgs
parents:
diff changeset
   353
        qApp->sendPostedEvents();
hgs
parents:
diff changeset
   354
hgs
parents:
diff changeset
   355
        HbAction *action = new HbAction("test_addtohomescreen");
hgs
parents:
diff changeset
   356
        action->setData(Hs::AddToHomeScreenContextAction);
hgs
parents:
diff changeset
   357
        allAppsState->mContextModelIndex = allAppsModel->fixedIndex();
hgs
parents:
diff changeset
   358
hgs
parents:
diff changeset
   359
        allAppsState->contextMenuAction(action);
hgs
parents:
diff changeset
   360
hgs
parents:
diff changeset
   361
        qApp->sendPostedEvents();
hgs
parents:
diff changeset
   362
hgs
parents:
diff changeset
   363
        QVERIFY(addToHomeScreenState.enteredValue());
hgs
parents:
diff changeset
   364
hgs
parents:
diff changeset
   365
        machine->stop();
hgs
parents:
diff changeset
   366
        qApp->removePostedEvents(0);
hgs
parents:
diff changeset
   367
hgs
parents:
diff changeset
   368
        allAppsState->stateExited();
hgs
parents:
diff changeset
   369
hgs
parents:
diff changeset
   370
        qApp->processEvents();
hgs
parents:
diff changeset
   371
hgs
parents:
diff changeset
   372
        delete action;
hgs
parents:
diff changeset
   373
    }
hgs
parents:
diff changeset
   374
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   375
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   376
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   377
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   378
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   379
}
hgs
parents:
diff changeset
   380
hgs
parents:
diff changeset
   381
hgs
parents:
diff changeset
   382
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   383
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   384
//
hgs
parents:
diff changeset
   385
void MenuStatesTest::addModeAddActivated()
hgs
parents:
diff changeset
   386
{
hgs
parents:
diff changeset
   387
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   388
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   389
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   390
    __UHEAP_MARK;
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
        QScopedPointer<QStateMachine> machine(new QStateMachine(0));
hgs
parents:
diff changeset
   395
hgs
parents:
diff changeset
   396
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   397
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   398
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   399
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   400
            builder, menuMode, mainWindow, machine.data()));
hgs
parents:
diff changeset
   401
hgs
parents:
diff changeset
   402
        {
hgs
parents:
diff changeset
   403
            // we will start from all apps view
hgs
parents:
diff changeset
   404
            machine->setInitialState(allAppsState.data());
hgs
parents:
diff changeset
   405
hgs
parents:
diff changeset
   406
            // create a state which is to be reached when add-to-home-screen
hgs
parents:
diff changeset
   407
            // event is triggered
hgs
parents:
diff changeset
   408
            AddToHomeScreenMockState addToHomeScreenState(machine.data());
hgs
parents:
diff changeset
   409
hgs
parents:
diff changeset
   410
            // create a transition to the new child state which will be triggered by
hgs
parents:
diff changeset
   411
            // an event with specified operation type
hgs
parents:
diff changeset
   412
            HsMenuEventTransition addToHomeScreenTransition(
hgs
parents:
diff changeset
   413
                HsMenuEvent::AddToHomeScreen, allAppsState.data(),
hgs
parents:
diff changeset
   414
                &addToHomeScreenState);
hgs
parents:
diff changeset
   415
hgs
parents:
diff changeset
   416
            // prepare the state graph
hgs
parents:
diff changeset
   417
            allAppsState->addTransition(&addToHomeScreenTransition);
hgs
parents:
diff changeset
   418
hgs
parents:
diff changeset
   419
            // MockModel object is to provide CaEntry representing widget
hgs
parents:
diff changeset
   420
            // the object will be deleted on destruction of allAppsState
hgs
parents:
diff changeset
   421
            MockModel *allAppsModel = new MockModel;
hgs
parents:
diff changeset
   422
            allAppsState->mModel = allAppsModel;
hgs
parents:
diff changeset
   423
            allAppsState->mMenuView->setModel(allAppsModel);
hgs
parents:
diff changeset
   424
hgs
parents:
diff changeset
   425
            machine->start();
hgs
parents:
diff changeset
   426
            qApp->sendPostedEvents();
hgs
parents:
diff changeset
   427
hgs
parents:
diff changeset
   428
            allAppsState->addActivated(allAppsModel->fixedIndex());
hgs
parents:
diff changeset
   429
            qApp->sendPostedEvents();
hgs
parents:
diff changeset
   430
hgs
parents:
diff changeset
   431
            QVERIFY(addToHomeScreenState.enteredValue());
hgs
parents:
diff changeset
   432
            machine->stop();
hgs
parents:
diff changeset
   433
            qApp->removePostedEvents(0);
hgs
parents:
diff changeset
   434
        }
hgs
parents:
diff changeset
   435
    }
hgs
parents:
diff changeset
   436
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   437
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   438
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   439
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   440
#endif//Q_OS_SYMBIAN
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
//
hgs
parents:
diff changeset
   446
void MenuStatesTest::addModeShowContextMenu()
hgs
parents:
diff changeset
   447
{
hgs
parents:
diff changeset
   448
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   449
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   450
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   451
    __UHEAP_MARK;
hgs
parents:
diff changeset
   452
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   453
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   454
    {
hgs
parents:
diff changeset
   455
        QScopedPointer<QStateMachine> machine(new QStateMachine(0));
hgs
parents:
diff changeset
   456
hgs
parents:
diff changeset
   457
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   458
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   459
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   460
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   461
            builder, menuMode, mainWindow, machine.data()));
hgs
parents:
diff changeset
   462
hgs
parents:
diff changeset
   463
        {
hgs
parents:
diff changeset
   464
            MockModel *allAppsModel = new MockModel;
hgs
parents:
diff changeset
   465
            allAppsState->mModel = allAppsModel;
hgs
parents:
diff changeset
   466
            allAppsState->mMenuView->setModel(allAppsModel);
hgs
parents:
diff changeset
   467
hgs
parents:
diff changeset
   468
            QScopedPointer<HbAbstractViewItem> item(new HbListViewItem);
hgs
parents:
diff changeset
   469
            item.data()->setModelIndex(allAppsModel->fixedIndex());
hgs
parents:
diff changeset
   470
            allAppsState->addModeShowContextMenu(item.data() , QPointF(50,50));
hgs
parents:
diff changeset
   471
            QList<QAction*> actions = allAppsState->mContextMenu->actions();
hgs
parents:
diff changeset
   472
            QCOMPARE(actions.size(),1);
hgs
parents:
diff changeset
   473
            if(actions.size() > 0 ){
hgs
parents:
diff changeset
   474
                //first action is 'add to HS'
hgs
parents:
diff changeset
   475
                QCOMPARE(actions.at(0)->data().toInt(),
hgs
parents:
diff changeset
   476
                         (int)Hs::AddToHomeScreenContextAction);
hgs
parents:
diff changeset
   477
                allAppsState->contextMenuAction( qobject_cast<HbAction*>(actions.at(0)) );
hgs
parents:
diff changeset
   478
            }
hgs
parents:
diff changeset
   479
        }
hgs
parents:
diff changeset
   480
    }
hgs
parents:
diff changeset
   481
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   482
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   483
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   484
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   485
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   486
}
hgs
parents:
diff changeset
   487
hgs
parents:
diff changeset
   488
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   489
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   490
//
hgs
parents:
diff changeset
   491
void MenuStatesTest::addToCollection()
hgs
parents:
diff changeset
   492
{
hgs
parents:
diff changeset
   493
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   494
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   495
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   496
    __UHEAP_MARK;
hgs
parents:
diff changeset
   497
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   498
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   499
    {
hgs
parents:
diff changeset
   500
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   501
        QScopedPointer<QStateMachine> machine(new QStateMachine(0));
hgs
parents:
diff changeset
   502
        
hgs
parents:
diff changeset
   503
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   504
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   505
        HsAllAppsState* allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   506
            builder, menuMode, mainWindow, machine.data()));
hgs
parents:
diff changeset
   507
        
hgs
parents:
diff changeset
   508
        
hgs
parents:
diff changeset
   509
        // we will start from all apps view
hgs
parents:
diff changeset
   510
        machine->setInitialState(allAppsState);
hgs
parents:
diff changeset
   511
hgs
parents:
diff changeset
   512
        AddToHomeScreenMockState mockState(machine.data());
hgs
parents:
diff changeset
   513
        HsMenuEventTransition addToCollectionTransition(
hgs
parents:
diff changeset
   514
            HsMenuEvent::AddAppsToCollection, allAppsState, &mockState);
hgs
parents:
diff changeset
   515
hgs
parents:
diff changeset
   516
        // prepare the state graph
hgs
parents:
diff changeset
   517
        allAppsState->addTransition(&addToCollectionTransition);
hgs
parents:
diff changeset
   518
hgs
parents:
diff changeset
   519
        machine->start();
hgs
parents:
diff changeset
   520
        qApp->sendPostedEvents();
hgs
parents:
diff changeset
   521
hgs
parents:
diff changeset
   522
        allAppsState->addToCollection();
hgs
parents:
diff changeset
   523
hgs
parents:
diff changeset
   524
        qApp->sendPostedEvents();
hgs
parents:
diff changeset
   525
hgs
parents:
diff changeset
   526
        QVERIFY(mockState.enteredValue());
hgs
parents:
diff changeset
   527
        machine->stop();
hgs
parents:
diff changeset
   528
        qApp->removePostedEvents(0);
hgs
parents:
diff changeset
   529
    }
hgs
parents:
diff changeset
   530
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   531
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   532
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   533
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   534
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   535
}
hgs
parents:
diff changeset
   536
hgs
parents:
diff changeset
   537
hgs
parents:
diff changeset
   538
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   539
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   540
//
hgs
parents:
diff changeset
   541
void MenuStatesTest::addToHomeScreen()
hgs
parents:
diff changeset
   542
{
hgs
parents:
diff changeset
   543
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   544
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   545
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   546
    __UHEAP_MARK;
hgs
parents:
diff changeset
   547
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   548
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   549
    {
hgs
parents:
diff changeset
   550
        HsMenuViewBuilder builder;    
hgs
parents:
diff changeset
   551
        QScopedPointer<QStateMachine> machine(new QStateMachine(0));
hgs
parents:
diff changeset
   552
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   553
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   554
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   555
            builder, menuMode, mainWindow, machine.data()));
hgs
parents:
diff changeset
   556
hgs
parents:
diff changeset
   557
        {
hgs
parents:
diff changeset
   558
            // we will start from all apps view
hgs
parents:
diff changeset
   559
            machine->setInitialState(allAppsState.data());
hgs
parents:
diff changeset
   560
hgs
parents:
diff changeset
   561
            // create a state which is to be reached when add-to-home-screen
hgs
parents:
diff changeset
   562
            // event is triggered
hgs
parents:
diff changeset
   563
            AddToHomeScreenMockState addToHomeScreenState(machine.data());
hgs
parents:
diff changeset
   564
hgs
parents:
diff changeset
   565
            // create a transition to the new child state which will be triggered by
hgs
parents:
diff changeset
   566
            // an event with specified operation type
hgs
parents:
diff changeset
   567
            HsMenuEventTransition addToHomeScreenTransition(
hgs
parents:
diff changeset
   568
                HsMenuEvent::AddToHomeScreen, allAppsState.data(), &addToHomeScreenState);
hgs
parents:
diff changeset
   569
hgs
parents:
diff changeset
   570
            // prepare the state graph
hgs
parents:
diff changeset
   571
            allAppsState->addTransition(&addToHomeScreenTransition);
hgs
parents:
diff changeset
   572
hgs
parents:
diff changeset
   573
            // MockModel object is to provide CaEntry representing widget
hgs
parents:
diff changeset
   574
            // the object will be deleted on destruction of allAppsState
hgs
parents:
diff changeset
   575
            MockModel *allAppsModel = new MockModel;
hgs
parents:
diff changeset
   576
            allAppsState->mModel = allAppsModel;
hgs
parents:
diff changeset
   577
            allAppsState->mMenuView->setModel(allAppsModel);
hgs
parents:
diff changeset
   578
hgs
parents:
diff changeset
   579
            machine->start();
hgs
parents:
diff changeset
   580
            qApp->sendPostedEvents();
hgs
parents:
diff changeset
   581
hgs
parents:
diff changeset
   582
            allAppsState->addToHomeScreen(
hgs
parents:
diff changeset
   583
                    allAppsModel->fixedIndex().data(CaItemModel::IdRole).toInt());
hgs
parents:
diff changeset
   584
            qApp->sendPostedEvents();
hgs
parents:
diff changeset
   585
hgs
parents:
diff changeset
   586
            QVERIFY(addToHomeScreenState.enteredValue());
hgs
parents:
diff changeset
   587
            machine->stop();
hgs
parents:
diff changeset
   588
            qApp->removePostedEvents(0);
hgs
parents:
diff changeset
   589
            
hgs
parents:
diff changeset
   590
        }
hgs
parents:
diff changeset
   591
    }
hgs
parents:
diff changeset
   592
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   593
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   594
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   595
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   596
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   597
}
hgs
parents:
diff changeset
   598
hgs
parents:
diff changeset
   599
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   600
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   601
//
hgs
parents:
diff changeset
   602
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   603
void MenuStatesTest::openTaskSwitcher()
hgs
parents:
diff changeset
   604
{
hgs
parents:
diff changeset
   605
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   606
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   607
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   608
    __UHEAP_MARK;
hgs
parents:
diff changeset
   609
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   610
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   611
    {
hgs
parents:
diff changeset
   612
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   613
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   614
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   615
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   616
            builder, menuMode, mainWindow, 0));
hgs
parents:
diff changeset
   617
hgs
parents:
diff changeset
   618
        QVERIFY(allAppsState->openTaskSwitcher());
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
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   627
hgs
parents:
diff changeset
   628
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   629
// ---------------------------------------------------------------------------
hgs
parents:
diff changeset
   630
//
hgs
parents:
diff changeset
   631
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   632
void MenuStatesTest::checkSoftwareUpdates()
hgs
parents:
diff changeset
   633
{
hgs
parents:
diff changeset
   634
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   635
    User::ResetInactivityTime();//it should help for Viewserver11 panic
hgs
parents:
diff changeset
   636
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   637
    __UHEAP_MARK;
hgs
parents:
diff changeset
   638
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   639
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   640
    {
hgs
parents:
diff changeset
   641
        HsMenuViewBuilder builder;
hgs
parents:
diff changeset
   642
        HsMenuModeWrapper menuMode;
hgs
parents:
diff changeset
   643
        HsMainWindowMock mainWindow;
hgs
parents:
diff changeset
   644
        QScopedPointer<HsAllAppsState> allAppsState(new HsAllAppsState(
hgs
parents:
diff changeset
   645
            builder, menuMode, mainWindow, 0));
hgs
parents:
diff changeset
   646
hgs
parents:
diff changeset
   647
        QVERIFY(allAppsState->checkSoftwareUpdates()==0);
hgs
parents:
diff changeset
   648
        
hgs
parents:
diff changeset
   649
        // cleanup
hgs
parents:
diff changeset
   650
        QTest::qWait(5000);
hgs
parents:
diff changeset
   651
hgs
parents:
diff changeset
   652
        CaQuery query;
hgs
parents:
diff changeset
   653
        query.setEntryTypeNames(QStringList(Hs::applicationTypeName));
hgs
parents:
diff changeset
   654
        query.setAttribute(Hs::applicationUidEntryKey,
hgs
parents:
diff changeset
   655
                           QString::number(Hs::softwareUpdateApplicationUid));
hgs
parents:
diff changeset
   656
        
hgs
parents:
diff changeset
   657
        QList< QSharedPointer<CaEntry> > appEntries = CaService::instance()->getEntries(query);
hgs
parents:
diff changeset
   658
hgs
parents:
diff changeset
   659
        if (!appEntries.isEmpty()) {
hgs
parents:
diff changeset
   660
            QSharedPointer<CaEntry> entry = appEntries.first();
hgs
parents:
diff changeset
   661
            int entryId = entry->id();
hgs
parents:
diff changeset
   662
            HsMenuService::executeAction(entryId, QString("close"));            
hgs
parents:
diff changeset
   663
        }
hgs
parents:
diff changeset
   664
hgs
parents:
diff changeset
   665
    }
hgs
parents:
diff changeset
   666
#ifdef Q_OS_SYMBIAN
hgs
parents:
diff changeset
   667
#ifdef UT_MEMORY_CHECK
hgs
parents:
diff changeset
   668
    __UHEAP_MARKEND;
hgs
parents:
diff changeset
   669
#endif//UT_MEMORY_CHECK
hgs
parents:
diff changeset
   670
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   671
}
hgs
parents:
diff changeset
   672
#endif//Q_OS_SYMBIAN
hgs
parents:
diff changeset
   673
hgs
parents:
diff changeset
   674
hgs
parents:
diff changeset
   675
hgs
parents:
diff changeset
   676
hgs
parents:
diff changeset
   677
hgs
parents:
diff changeset
   678
QTEST_MAIN(MenuStatesTest)
hgs
parents:
diff changeset
   679