phoneapp/phoneuiview2/tsrc/ut_phoneuiqtview/unit_tests.cpp
author hgs
Fri, 15 Oct 2010 12:58:46 +0300
changeset 78 baacf668fe89
parent 76 cfea66083b62
permissions -rw-r--r--
201041
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     1
/*!
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     3
* All rights reserved.
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     8
*
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
     9
* Initial Contributors:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    11
*
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    12
* Contributors:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    13
*
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    14
* Description:  Unit tests for PhoneUIQtView.
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    15
*
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    16
*/
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    17
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    18
#include <QtTest/QtTest>
78
hgs
parents: 76
diff changeset
    19
#include <mockservice.h>
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    20
#include <QtGui>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    21
#include <QVariant>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    22
#include <QKeyEvent>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    23
#include <QTimer>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    24
#include <QShortcutEvent>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    25
#include <QSignalSpy>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    26
#include <hbapplication.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    27
#include <hbmainwindow.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    28
#include <hbinstance.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    29
#include <hbmainwindow.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    30
#include <bubblemanagerif.h>
78
hgs
parents: 76
diff changeset
    31
#include "phoneuiqtview_p.h"
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    32
#include <hbtoolbar.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    33
#include <hbvolumesliderpopup.h>
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    34
#include <hbaction.h>
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
    35
#include <dialpad.h>
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
    36
#include <hblineedit.h>
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    37
#include "xqserviceutil.h"
78
hgs
parents: 76
diff changeset
    38
#define private public
hgs
parents: 76
diff changeset
    39
#include "phoneuiqtview.h"
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    40
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    41
//CONSTANTS
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    42
static const int KMAXVOLUME = 10;
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    43
static const int KMINVOLUME = 0;
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    44
static const int KVOLUMECOMMAND = 5;
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    45
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    46
#define PHONE_QT_VIEW_TEST_MAIN(TestObject) \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    47
int main(int argc, char *argv[]) \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    48
{ \
78
hgs
parents: 76
diff changeset
    49
    QCoreApplication app(argc, argv); \
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    50
    TestObject tc; \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    51
    QResource::registerResource("../hbcore.rcc"); \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    52
    int ret = QTest::qExec(&tc, argc, argv); \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    53
    /* Core dump if HbIconLoader instance is not destroyed before the application instance. */ \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    54
    /* HbIconLoader uses QCoreApplication::aboutToQuit() signal to destroy itself. */ \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    55
    /* app.exec() where the signal is normally emitted is not called here. */ \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    56
    /* So, invoking the signal explicitly. */ \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    57
    QMetaObject::invokeMethod(&app, "aboutToQuit", Qt::DirectConnection); \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    58
    return ret; \
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    59
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    60
78
hgs
parents: 76
diff changeset
    61
class TestPhoneUIQtView : public QObject, public MockService
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    62
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    63
    Q_OBJECT
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    64
    
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    65
public:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    66
    TestPhoneUIQtView ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    67
    ~TestPhoneUIQtView ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    68
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    69
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    70
public slots:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    71
    void initTestCase ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    72
    void cleanupTestCase (); 
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    73
    void init ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    74
    void cleanup ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    75
    
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    76
private slots:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    77
    void testAddBubbleCommand ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    78
    void testHideToolbar ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    79
    void testShowToolbar ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    80
    void testAddToolbarActions ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    81
    void testSetVolumeSliderValue ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    82
    void testRemoveVolumeSlider ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    83
    void testVolumeSliderValue ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    84
    void testVolumeSliderChanged ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    85
    void testParticipantListAction ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    86
    void testSetExpandAction ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    87
    void testSetOrientation ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    88
    void testBackButtonClicked();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    89
    void testShowDialpad();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    90
    void testDialpadText();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    91
    void testSetMenuActions();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    92
    void testLongEndKeyPressEventOutsideTelephony();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    93
    void testNetworkNameChanged();
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
    94
    void testCaptureKey();
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
    95
    void testRestrictedMode();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    96
76
hgs
parents: 46
diff changeset
    97
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    98
private:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
    99
    int createCallHeader();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   100
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   101
private:
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   102
    PhoneUIQtView *m_view; // class under test
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   103
    HbMainWindow *m_main_window;
78
hgs
parents: 76
diff changeset
   104
    HbLineEdit *m_lineEdit;
hgs
parents: 76
diff changeset
   105
    HbToolBar *m_toolBar;
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   106
};
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   107
78
hgs
parents: 76
diff changeset
   108
TestPhoneUIQtView::TestPhoneUIQtView ()
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   109
{
78
hgs
parents: 76
diff changeset
   110
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   111
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   112
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   113
TestPhoneUIQtView::~TestPhoneUIQtView ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   114
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   115
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   116
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   117
void TestPhoneUIQtView::initTestCase ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   118
{	
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   119
    m_main_window = new HbMainWindow();
78
hgs
parents: 76
diff changeset
   120
    m_lineEdit = new HbLineEdit();
hgs
parents: 76
diff changeset
   121
    m_toolBar = new HbToolBar();
hgs
parents: 76
diff changeset
   122
    SmcDefaultValue<QPointF>::SetL(QPointF(0, 0));
hgs
parents: 76
diff changeset
   123
    SmcDefaultValue<QRectF>::SetL(QRectF(0, 0, 0, 0));
hgs
parents: 76
diff changeset
   124
    SmcDefaultValue<QVariant>::SetL(QVariant(0));
hgs
parents: 76
diff changeset
   125
    SmcDefaultValue<Qt::Orientation>::SetL(Qt::Horizontal);
hgs
parents: 76
diff changeset
   126
    SmcDefaultValue<HbLineEdit *>::SetL(m_lineEdit);
hgs
parents: 76
diff changeset
   127
    SmcDefaultValue<HbLineEdit &>::SetL(*m_lineEdit);
hgs
parents: 76
diff changeset
   128
    
hgs
parents: 76
diff changeset
   129
    EXPECT(HbView, setTitle).with(QString("Unit test network"));
hgs
parents: 76
diff changeset
   130
    EXPECT(QtMobility::QSystemNetworkInfo, networkName).returns(QString("Unit test network"));
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   131
    m_view = new PhoneUIQtView(*m_main_window);
78
hgs
parents: 76
diff changeset
   132
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   133
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   134
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   135
void TestPhoneUIQtView::cleanupTestCase ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   136
{
78
hgs
parents: 76
diff changeset
   137
    SmcDefaultValue<QPointF>::Reset();
hgs
parents: 76
diff changeset
   138
    SmcDefaultValue<QRectF>::Reset();
hgs
parents: 76
diff changeset
   139
    SmcDefaultValue<QVariant>::Reset();
hgs
parents: 76
diff changeset
   140
    SmcDefaultValue<Qt::Orientation>::Reset();
hgs
parents: 76
diff changeset
   141
    SmcDefaultValue<HbLineEdit *>::Reset();
hgs
parents: 76
diff changeset
   142
    SmcDefaultValue<HbLineEdit &>::Reset();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   143
    delete m_view;
78
hgs
parents: 76
diff changeset
   144
    delete m_lineEdit;
hgs
parents: 76
diff changeset
   145
    delete m_toolBar;
hgs
parents: 76
diff changeset
   146
    delete m_main_window;
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   147
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   148
78
hgs
parents: 76
diff changeset
   149
void TestPhoneUIQtView::init()
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   150
{
78
hgs
parents: 76
diff changeset
   151
    initialize();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   152
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   153
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   154
void TestPhoneUIQtView::cleanup ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   155
{
78
hgs
parents: 76
diff changeset
   156
    reset();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   157
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   158
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   159
void TestPhoneUIQtView::testAddBubbleCommand ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   160
{
78
hgs
parents: 76
diff changeset
   161
    m_view->bubbleManager().startChanges();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   162
    int bubbleId = createCallHeader();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   163
    int bubbleId2 = createCallHeader();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   164
    
78
hgs
parents: 76
diff changeset
   165
    HbAction *action1 = new HbAction;
hgs
parents: 76
diff changeset
   166
    action1->setText("Command 1");
hgs
parents: 76
diff changeset
   167
    action1->setProperty("command", 1);
hgs
parents: 76
diff changeset
   168
    action1->setSoftKeyRole(QAction::NoSoftKey);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   169
    
78
hgs
parents: 76
diff changeset
   170
    HbAction *action2 = new HbAction;
hgs
parents: 76
diff changeset
   171
    action2->setText("Command 2");
hgs
parents: 76
diff changeset
   172
    action2->setProperty("command", 2);
hgs
parents: 76
diff changeset
   173
    action2->setSoftKeyRole(QAction::PositiveSoftKey);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   174
    
78
hgs
parents: 76
diff changeset
   175
    HbAction *action3 = new HbAction;
hgs
parents: 76
diff changeset
   176
    action3->setText("Command 3");
hgs
parents: 76
diff changeset
   177
    action3->setProperty("command", 3);
hgs
parents: 76
diff changeset
   178
    action3->setSoftKeyRole(QAction::NegativeSoftKey);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   179
    
78
hgs
parents: 76
diff changeset
   180
    m_view->addBubbleCommand(bubbleId, action1);
hgs
parents: 76
diff changeset
   181
    m_view->addBubbleCommand(bubbleId, action2);
hgs
parents: 76
diff changeset
   182
    m_view->addBubbleCommand(bubbleId2, action3);
hgs
parents: 76
diff changeset
   183
    m_view->bubbleManager().endChanges();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   184
    
78
hgs
parents: 76
diff changeset
   185
    m_view->bubbleManager().startChanges();
hgs
parents: 76
diff changeset
   186
    m_view->clearBubbleCommands(bubbleId);
hgs
parents: 76
diff changeset
   187
    m_view->clearBubbleCommands(bubbleId2);
hgs
parents: 76
diff changeset
   188
    m_view->clearBubbleCommands(bubbleId2);
hgs
parents: 76
diff changeset
   189
    m_view->bubbleManager().endChanges();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   190
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   191
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   192
void TestPhoneUIQtView::testHideToolbar ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   193
{
78
hgs
parents: 76
diff changeset
   194
    EXPECT(HbView, toolBar).returns(m_toolBar);
hgs
parents: 76
diff changeset
   195
    m_view->hideToolbar();
hgs
parents: 76
diff changeset
   196
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   197
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   198
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   199
void TestPhoneUIQtView::testShowToolbar ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   200
{
78
hgs
parents: 76
diff changeset
   201
    EXPECT(HbView, toolBar).returns(m_toolBar);
hgs
parents: 76
diff changeset
   202
    m_view->showToolbar();
hgs
parents: 76
diff changeset
   203
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   204
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   205
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   206
void TestPhoneUIQtView::testAddToolbarActions ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   207
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   208
    HbIcon icon ("foo.jpg");
78
hgs
parents: 76
diff changeset
   209
    HbAction *testAction = new HbAction ();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   210
    testAction->setIcon(icon);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   211
    testAction->setText("foo");
78
hgs
parents: 76
diff changeset
   212
    testAction->setProperty("command", 20);
hgs
parents: 76
diff changeset
   213
    QList<HbAction*> actions;
hgs
parents: 76
diff changeset
   214
    QList<QAction *> retActions;
hgs
parents: 76
diff changeset
   215
    EXPECT(QGraphicsWidget, actions).returns(retActions);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   216
    actions.append(testAction);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   217
    
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   218
    m_view->setToolbarActions(actions);
78
hgs
parents: 76
diff changeset
   219
    //QCOMPARE (m_action->icon(), icon);
hgs
parents: 76
diff changeset
   220
    //QCOMPARE(true, m_toolBarUpdateCalled);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   221
    
78
hgs
parents: 76
diff changeset
   222
    actions[0] = new HbAction();
hgs
parents: 76
diff changeset
   223
    EXPECT(QGraphicsWidget, actions).returns(retActions);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   224
    m_view->setToolbarActions(actions);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   225
    
78
hgs
parents: 76
diff changeset
   226
    EXPECT(QGraphicsItem, update);
hgs
parents: 76
diff changeset
   227
    HbAction *testAction2 = new HbAction ();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   228
    testAction2->setIcon(icon);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   229
    testAction2->setText("foo2");
78
hgs
parents: 76
diff changeset
   230
    testAction2->setProperty("command", 21);
hgs
parents: 76
diff changeset
   231
    actions[0] = new HbAction();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   232
    actions.append(testAction2);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   233
    
78
hgs
parents: 76
diff changeset
   234
    EXPECT(QGraphicsWidget, actions).returns(retActions);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   235
    m_view->setToolbarActions(actions);
78
hgs
parents: 76
diff changeset
   236
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   237
    actions.removeOne(testAction2);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   238
    
78
hgs
parents: 76
diff changeset
   239
    EXPECT(QGraphicsItem, update);
hgs
parents: 76
diff changeset
   240
    actions[0] = new HbAction();
hgs
parents: 76
diff changeset
   241
    EXPECT(QGraphicsWidget, actions).returns(retActions);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   242
    m_view->setToolbarActions(actions);
78
hgs
parents: 76
diff changeset
   243
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   244
    
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   245
    actions.clear();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   246
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   247
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   248
void TestPhoneUIQtView::testSetVolumeSliderValue ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   249
{
78
hgs
parents: 76
diff changeset
   250
    EXPECT(HbPopup, setDismissPolicy).with(HbDialog::TapOutside);
hgs
parents: 76
diff changeset
   251
    EXPECT(HbPopup, setTimeout).with(10000);
hgs
parents: 76
diff changeset
   252
    EXPECT(HbSliderPopup, minimum).returns(0);
hgs
parents: 76
diff changeset
   253
    EXPECT(HbSliderPopup, maximum).returns(100);
hgs
parents: 76
diff changeset
   254
    EXPECT(HbSliderPopup, setRange).with(KMINVOLUME, KMAXVOLUME);
hgs
parents: 76
diff changeset
   255
    EXPECT(HbSliderPopup, setValue).with(1);
hgs
parents: 76
diff changeset
   256
    EXPECT(QGraphicsItem, isVisible).returns(false);
hgs
parents: 76
diff changeset
   257
    //EXPECT(QGraphicsItem, show);
hgs
parents: 76
diff changeset
   258
    m_view->setVolumeSliderValue(1, KVOLUMECOMMAND, KMAXVOLUME, KMINVOLUME);
hgs
parents: 76
diff changeset
   259
hgs
parents: 76
diff changeset
   260
    QVERIFY(verify());
hgs
parents: 76
diff changeset
   261
    reset();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   262
    
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   263
    // The second call shouldn't create a new instance
78
hgs
parents: 76
diff changeset
   264
    EXPECT(HbPopup, setDismissPolicy).with(HbDialog::TapOutside).times(0);
hgs
parents: 76
diff changeset
   265
    EXPECT(HbPopup, setTimeout).with(10000).times(0);
hgs
parents: 76
diff changeset
   266
    EXPECT(HbSliderPopup, minimum).returns(0);
hgs
parents: 76
diff changeset
   267
    EXPECT(HbSliderPopup, maximum).returns(100);
hgs
parents: 76
diff changeset
   268
    EXPECT(HbSliderPopup, setRange).with(KMINVOLUME, KMAXVOLUME);
hgs
parents: 76
diff changeset
   269
    EXPECT(HbSliderPopup, setValue).with(2);
hgs
parents: 76
diff changeset
   270
    EXPECT(QGraphicsItem, isVisible).returns(true);
hgs
parents: 76
diff changeset
   271
    //EXPECT(QGraphicsItem, show).times(0);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   272
    m_view->setVolumeSliderValue (2, KVOLUMECOMMAND, KMAXVOLUME, KMINVOLUME);
78
hgs
parents: 76
diff changeset
   273
    
hgs
parents: 76
diff changeset
   274
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   275
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   276
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   277
void TestPhoneUIQtView::testRemoveVolumeSlider ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   278
{
78
hgs
parents: 76
diff changeset
   279
    //EXPECT(QGraphicsItem, hide);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   280
    m_view->setVolumeSliderValue (1, KVOLUMECOMMAND, KMAXVOLUME, KMINVOLUME);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   281
    m_view->removeVolumeSlider ();
78
hgs
parents: 76
diff changeset
   282
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   283
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   284
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   285
void TestPhoneUIQtView::testVolumeSliderValue ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   286
{
78
hgs
parents: 76
diff changeset
   287
    EXPECT(HbSliderPopup, value).returns(4);
hgs
parents: 76
diff changeset
   288
    int value = m_view->volumeSliderValue();
hgs
parents: 76
diff changeset
   289
    QCOMPARE (value, -1);
hgs
parents: 76
diff changeset
   290
    
hgs
parents: 76
diff changeset
   291
    // Create slider
hgs
parents: 76
diff changeset
   292
    m_view->setVolumeSliderValue (1, KVOLUMECOMMAND, KMAXVOLUME, KMINVOLUME);
hgs
parents: 76
diff changeset
   293
    
hgs
parents: 76
diff changeset
   294
    EXPECT(HbSliderPopup, value).returns(7);
hgs
parents: 76
diff changeset
   295
    value = m_view->volumeSliderValue();
hgs
parents: 76
diff changeset
   296
    QCOMPARE (value, 7);
hgs
parents: 76
diff changeset
   297
    
hgs
parents: 76
diff changeset
   298
    EXPECT(HbSliderPopup, value).returns(3);
hgs
parents: 76
diff changeset
   299
    value = m_view->volumeSliderValue();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   300
    QCOMPARE (value, 3);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   301
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   302
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   303
void TestPhoneUIQtView::testVolumeSliderChanged ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   304
{
78
hgs
parents: 76
diff changeset
   305
    m_view->setVolumeSliderValue(3, KVOLUMECOMMAND, KMAXVOLUME, KMINVOLUME);
hgs
parents: 76
diff changeset
   306
    QSignalSpy spy(m_view, SIGNAL(command(int)));
hgs
parents: 76
diff changeset
   307
    m_view->m_priv->volumeSliderChanged(1);
hgs
parents: 76
diff changeset
   308
    QCOMPARE(spy.count(), 1);
hgs
parents: 76
diff changeset
   309
    int command = qvariant_cast<int>(spy.at(0).at(0));
hgs
parents: 76
diff changeset
   310
    QCOMPARE(command, (int)KVOLUMECOMMAND);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   311
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   312
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   313
void TestPhoneUIQtView::testParticipantListAction ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   314
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   315
    m_view->bubbleManager ().startChanges ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   316
    m_view->addParticipantListAction (1,"Command 1", HbIcon ());
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   317
    m_view->addParticipantListAction (2,"Command 2", HbIcon ());
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   318
    m_view->bubbleManager ().endChanges ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   319
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   320
    m_view->bubbleManager ().startChanges ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   321
    m_view->clearParticipantListActions ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   322
    m_view->clearParticipantListActions ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   323
    m_view->bubbleManager ().endChanges ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   324
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   325
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   326
void TestPhoneUIQtView::testSetExpandAction ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   327
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   328
    m_view->bubbleManager ().startChanges ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   329
    int bubbleId = createCallHeader();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   330
    int bubbleId2 = createCallHeader();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   331
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   332
    m_view->setExpandAction(bubbleId, 1);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   333
    m_view->setExpandAction(bubbleId2, 2);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   334
    m_view->bubbleManager ().endChanges ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   335
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   336
    m_view->bubbleManager ().startChanges ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   337
    m_view->removeExpandAction(bubbleId);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   338
    m_view->removeExpandAction(bubbleId2);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   339
    m_view->bubbleManager().removeCallHeader(bubbleId);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   340
    m_view->bubbleManager().removeCallHeader(bubbleId2);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   341
    m_view->bubbleManager ().endChanges ();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   342
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   343
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   344
void TestPhoneUIQtView::testSetOrientation ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   345
{
78
hgs
parents: 76
diff changeset
   346
    EXPECT(HbToolBar, setOrientation).times(0);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   347
    m_view->handleOrientationChange(Qt::Vertical);
78
hgs
parents: 76
diff changeset
   348
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   349
    
78
hgs
parents: 76
diff changeset
   350
    reset(); // Reset mock framework
hgs
parents: 76
diff changeset
   351
    EXPECT(HbToolBar, setOrientation).times(1);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   352
    m_view->handleOrientationChange(Qt::Horizontal);
78
hgs
parents: 76
diff changeset
   353
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   354
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   355
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   356
void TestPhoneUIQtView::testBackButtonClicked()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   357
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   358
    // not possible to mock xqservice because it is in \epoc32\include
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   359
    // calling backButtonClicked would send this test background.
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   360
    // m_view->backButtonClicked();
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   361
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   362
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   363
void TestPhoneUIQtView::testShowDialpad()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   364
{
78
hgs
parents: 76
diff changeset
   365
    EXPECT(QGraphicsItem, isVisible).returns(true);
hgs
parents: 76
diff changeset
   366
    EXPECT(Dialpad, closeDialpad);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   367
    m_view->hideDialpad();
78
hgs
parents: 76
diff changeset
   368
    QVERIFY(verify());
hgs
parents: 76
diff changeset
   369
hgs
parents: 76
diff changeset
   370
    EXPECT(QGraphicsItem, isVisible).returns(false);
hgs
parents: 76
diff changeset
   371
    EXPECT(Dialpad, openDialpad);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   372
    m_view->showDialpad();
78
hgs
parents: 76
diff changeset
   373
    QVERIFY(verify());
hgs
parents: 76
diff changeset
   374
    
hgs
parents: 76
diff changeset
   375
    reset();
hgs
parents: 76
diff changeset
   376
    EXPECT(QGraphicsItem, isVisible).returns(true);
hgs
parents: 76
diff changeset
   377
    EXPECT(Dialpad, openDialpad).times(0);
hgs
parents: 76
diff changeset
   378
    m_view->showDialpad();
hgs
parents: 76
diff changeset
   379
    QVERIFY(verify());
hgs
parents: 76
diff changeset
   380
    
hgs
parents: 76
diff changeset
   381
    EXPECT(Dialpad, closeDialpad);
hgs
parents: 76
diff changeset
   382
    EXPECT(QGraphicsItem, isVisible).returns(true);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   383
    m_view->hideDialpad();
78
hgs
parents: 76
diff changeset
   384
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   385
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   386
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   387
void TestPhoneUIQtView::testDialpadText()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   388
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   389
    m_view->showDialpad();
45
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
   390
    m_view->clearDialpad();
78
hgs
parents: 76
diff changeset
   391
    EXPECT(HbLineEdit, text).returns(QString("12345"));
hgs
parents: 76
diff changeset
   392
    QCOMPARE(m_view->dialpadText(), QString("12345"));
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   393
    m_view->clearAndHideDialpad();
78
hgs
parents: 76
diff changeset
   394
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   395
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   396
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   397
void TestPhoneUIQtView::testSetMenuActions()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   398
{
78
hgs
parents: 76
diff changeset
   399
    EXPECT(HbView, takeMenu);
hgs
parents: 76
diff changeset
   400
    QList<HbAction *> actions;
hgs
parents: 76
diff changeset
   401
    QList<QAction *> retActions;
hgs
parents: 76
diff changeset
   402
    EXPECT(QGraphicsWidget, actions).returns(retActions).times(1);
hgs
parents: 76
diff changeset
   403
    m_view->setMenuActions(actions);
hgs
parents: 76
diff changeset
   404
    QVERIFY(verify());
hgs
parents: 76
diff changeset
   405
    reset();
hgs
parents: 76
diff changeset
   406
    
hgs
parents: 76
diff changeset
   407
    HbAction* action = new HbAction; 
hgs
parents: 76
diff changeset
   408
    action->setText(QString("test"));
hgs
parents: 76
diff changeset
   409
    action->setProperty("command", 1);
hgs
parents: 76
diff changeset
   410
    actions.append(action);
hgs
parents: 76
diff changeset
   411
    
hgs
parents: 76
diff changeset
   412
    retActions.append(new HbAction);
hgs
parents: 76
diff changeset
   413
    EXPECT(HbView, takeMenu).times(0);
hgs
parents: 76
diff changeset
   414
    EXPECT(QGraphicsWidget, actions).returns(retActions).times(1);
hgs
parents: 76
diff changeset
   415
    m_view->setMenuActions(actions);
hgs
parents: 76
diff changeset
   416
    actions.clear();
hgs
parents: 76
diff changeset
   417
    retActions.clear();
hgs
parents: 76
diff changeset
   418
    QVERIFY(verify());
hgs
parents: 76
diff changeset
   419
    reset();
hgs
parents: 76
diff changeset
   420
    
hgs
parents: 76
diff changeset
   421
    EXPECT(HbView, takeMenu);
hgs
parents: 76
diff changeset
   422
    EXPECT(QGraphicsWidget, actions).returns(retActions).times(1);
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   423
    m_view->setMenuActions(actions);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   424
    
78
hgs
parents: 76
diff changeset
   425
    QVERIFY(verify());
hgs
parents: 76
diff changeset
   426
    reset();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   427
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   428
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   429
//Private methods
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   430
int TestPhoneUIQtView::createCallHeader ()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   431
{
78
hgs
parents: 76
diff changeset
   432
    int bubble = m_view->bubbleManager().createCallHeader();
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   433
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   434
    return bubble;
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   435
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   436
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   437
void TestPhoneUIQtView::testLongEndKeyPressEventOutsideTelephony()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   438
{
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   439
    /*QSignalSpy spy(m_view, SIGNAL(endKeyLongPress()));
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   440
    QKeyEvent* event = new QKeyEvent(QEvent::ShortcutOverride, Qt::Key_No, Qt::NoModifier);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   441
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   442
    bool returnValue = m_view->eventFilter(new QObject(), event);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   443
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   444
    QVERIFY(returnValue == true);
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   445
    QCOMPARE(spy.count(), 1);*/
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   446
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   447
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   448
void TestPhoneUIQtView::testNetworkNameChanged()
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   449
{
45
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
   450
    // Title is changed for GmsMode
78
hgs
parents: 76
diff changeset
   451
    EXPECT(HbView, setTitle).with(QString("test"));
hgs
parents: 76
diff changeset
   452
    m_view->m_priv->networkNameChanged(QSystemNetworkInfo::GsmMode, QString("test"));
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   453
45
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
   454
    // Title is changed for WcdmaMode
78
hgs
parents: 76
diff changeset
   455
    EXPECT(HbView, setTitle).with(QString("test2"));
hgs
parents: 76
diff changeset
   456
    m_view->m_priv->networkNameChanged(QSystemNetworkInfo::WcdmaMode, QString("test2"));
45
6b911d05207e Revision: 201023
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 37
diff changeset
   457
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   458
    // Other modes shouldn't affect the title
78
hgs
parents: 76
diff changeset
   459
    EXPECT(HbView, setTitle).times(0);
hgs
parents: 76
diff changeset
   460
    m_view->m_priv->networkNameChanged(QSystemNetworkInfo::CdmaMode, QString("another operator"));
hgs
parents: 76
diff changeset
   461
    QVERIFY(verify());
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   462
}
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   463
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   464
void TestPhoneUIQtView::testCaptureKey()
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   465
{
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   466
    m_view->captureKey( Qt::Key_No, true );
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   467
    m_view->captureKey( Qt::Key_No, true );	
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   468
    m_view->captureKey( Qt::Key_Yes, false );
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   469
    m_view->captureKey( Qt::Key_No, false );
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   470
    m_view->captureKey( Qt::Key_No, false );		
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   471
}
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   472
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   473
void TestPhoneUIQtView::testRestrictedMode()
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   474
{
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   475
    qRegisterMetaType<QKeyEvent*>("QKeyEvent*");
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   476
    QKeyEvent yesDown(QEvent::KeyPress, Qt::Key_Yes, Qt::NoModifier);
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   477
    QKeyEvent yesUp(QEvent::KeyRelease, Qt::Key_Yes, Qt::NoModifier);
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   478
    QKeyEvent oneDown(QEvent::KeyPress, Qt::Key_1, Qt::NoModifier);
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   479
    QKeyEvent oneUp(QEvent::KeyRelease, Qt::Key_1, Qt::NoModifier);
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   480
    QSignalSpy downSpy(m_view, SIGNAL(keyPressed(QKeyEvent*)));
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   481
    QSignalSpy upSpy(m_view, SIGNAL(keyReleased(QKeyEvent*)));
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   482
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   483
    m_view->setRestrictedMode(true);
78
hgs
parents: 76
diff changeset
   484
    
hgs
parents: 76
diff changeset
   485
    EXPECT(HbLineEdit, text).returns(QString("1")).times(4);
hgs
parents: 76
diff changeset
   486
    EXPECT(Dialpad, setCallButtonEnabled).times(0);
hgs
parents: 76
diff changeset
   487
    EXPECT(Dialpad, isCallButtonEnabled).returns(false);
hgs
parents: 76
diff changeset
   488
    /*m_view->m_priv->onEditorContentChanged(); // Simulate signal
hgs
parents: 76
diff changeset
   489
    */
hgs
parents: 76
diff changeset
   490
    m_view->m_priv->eventFilter(0, &oneDown);
hgs
parents: 76
diff changeset
   491
    m_view->m_priv->eventFilter(0, &oneUp);
hgs
parents: 76
diff changeset
   492
    m_view->m_priv->eventFilter(0, &yesDown);
hgs
parents: 76
diff changeset
   493
    m_view->m_priv->eventFilter(0, &yesUp);
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   494
    QCOMPARE(downSpy.count(), 1); // Only Key_1 is passed
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   495
    QCOMPARE(upSpy.count(), 1); // Only Key_1 is passed
78
hgs
parents: 76
diff changeset
   496
    QCOMPARE(m_view->m_priv->m_backAction->isEnabled(), false);
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   497
    
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   498
    // Test backbutton
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   499
    m_view->setBackButtonVisible(true);
78
hgs
parents: 76
diff changeset
   500
    QCOMPARE(m_view->m_priv->m_backAction->isEnabled(), false);
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   501
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   502
    // Test return to normal mode
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   503
    downSpy.clear();
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   504
    upSpy.clear();
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   505
    m_view->setRestrictedMode(false);
78
hgs
parents: 76
diff changeset
   506
    EXPECT(HbLineEdit, text).returns(QString("1")).times(5);
hgs
parents: 76
diff changeset
   507
    EXPECT(Dialpad, setCallButtonEnabled).with(true);
hgs
parents: 76
diff changeset
   508
    EXPECT(Dialpad, isCallButtonEnabled).returns(true).times(4);
hgs
parents: 76
diff changeset
   509
    m_view->m_priv->onEditorContentChanged(); // Simulate signal
hgs
parents: 76
diff changeset
   510
    m_view->m_priv->eventFilter(0, &oneDown);
hgs
parents: 76
diff changeset
   511
    m_view->m_priv->eventFilter(0, &oneUp);
hgs
parents: 76
diff changeset
   512
    m_view->m_priv->eventFilter(0, &yesDown);
hgs
parents: 76
diff changeset
   513
    m_view->m_priv->eventFilter(0, &yesUp);
46
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   514
    QCOMPARE(downSpy.count(), 2);
bc5a64e5bc3c Revision: 201025
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents: 45
diff changeset
   515
    QCOMPARE(upSpy.count(), 2);
78
hgs
parents: 76
diff changeset
   516
    QCOMPARE(m_view->m_priv->m_backAction->isEnabled(), true);
76
hgs
parents: 46
diff changeset
   517
}
hgs
parents: 46
diff changeset
   518
37
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   519
PHONE_QT_VIEW_TEST_MAIN(TestPhoneUIQtView)
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   520
Q_DECLARE_METATYPE(QKeyEvent *)
ba76fc04e6c2 Revert last code drop.
Pat Downey <patd@symbian.org>
parents:
diff changeset
   521
#include "unit_tests.moc"