securitysettings/qtconfigutils/tsrc/src/testqtconfigutils.cpp
author hgs
Mon, 24 May 2010 20:32:47 +0300
changeset 26 9abfd4f00d37
permissions -rw-r--r--
201021
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
26
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
 * All rights reserved.
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
 *
hgs
parents:
diff changeset
     9
 * Initial Contributors:
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
 *
hgs
parents:
diff changeset
    12
 * Contributors:
hgs
parents:
diff changeset
    13
 *
hgs
parents:
diff changeset
    14
 * Description:
hgs
parents:
diff changeset
    15
 * This is the source file for testing EAP Configuration Interface.
hgs
parents:
diff changeset
    16
 */
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
/*
hgs
parents:
diff changeset
    19
 * %version: 8 %
hgs
parents:
diff changeset
    20
 */
hgs
parents:
diff changeset
    21
hgs
parents:
diff changeset
    22
#ifdef INCLUDE_UI_CASES
hgs
parents:
diff changeset
    23
#warning UI cases included, cases cannot be run in Emulator textshell.
hgs
parents:
diff changeset
    24
#endif
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
// System includes
hgs
parents:
diff changeset
    27
#include <QtCore>
hgs
parents:
diff changeset
    28
#include <QTest>
hgs
parents:
diff changeset
    29
#include <cmmanager_shim.h>
hgs
parents:
diff changeset
    30
#include <cmmanagerdefines_shim.h>
hgs
parents:
diff changeset
    31
#include <cmconnectionmethod_shim.h>
hgs
parents:
diff changeset
    32
#include <eapqtconfiginterface.h>
hgs
parents:
diff changeset
    33
#include <eapqtplugininfo.h>
hgs
parents:
diff changeset
    34
#include <eapqtvalidator.h>
hgs
parents:
diff changeset
    35
#include <eapqtpluginhandle.h>
hgs
parents:
diff changeset
    36
#include <eapqtexpandedeaptype.h>
hgs
parents:
diff changeset
    37
#include <eapqtcertificateinfo.h>
hgs
parents:
diff changeset
    38
hgs
parents:
diff changeset
    39
#ifdef INCLUDE_UI_CASES
hgs
parents:
diff changeset
    40
#include <cpbasesettingview.h>
hgs
parents:
diff changeset
    41
#endif
hgs
parents:
diff changeset
    42
hgs
parents:
diff changeset
    43
// User includes
hgs
parents:
diff changeset
    44
#include "testqtconfigutils.h"
hgs
parents:
diff changeset
    45
hgs
parents:
diff changeset
    46
// External function prototypes
hgs
parents:
diff changeset
    47
hgs
parents:
diff changeset
    48
// Local constants
hgs
parents:
diff changeset
    49
static const int global_pluginOrder = 10;
hgs
parents:
diff changeset
    50
static const char global_wpsType[] = { 0xfe, 0x00, 0x37, 0x2a, 0x00, 0x00, 0x00, 0x01 };
hgs
parents:
diff changeset
    51
static const int global_invalidIap = 9999;
hgs
parents:
diff changeset
    52
static int global_undefinedIap = EapQtConfigInterface::IapIdUndefined;
hgs
parents:
diff changeset
    53
static int global_wlanIap = -2;
hgs
parents:
diff changeset
    54
hgs
parents:
diff changeset
    55
// ======== LOCAL FUNCTIONS ========
hgs
parents:
diff changeset
    56
hgs
parents:
diff changeset
    57
// ======== MEMBER FUNCTIONS ========
hgs
parents:
diff changeset
    58
hgs
parents:
diff changeset
    59
// ---------------------------------------------------------
hgs
parents:
diff changeset
    60
// FRAMEWORK FUNCTIONS
hgs
parents:
diff changeset
    61
// ---------------------------------------------------------
hgs
parents:
diff changeset
    62
hgs
parents:
diff changeset
    63
/**
hgs
parents:
diff changeset
    64
 * This function will be called before the first test function is executed.
hgs
parents:
diff changeset
    65
 */
hgs
parents:
diff changeset
    66
void TestQtConfigUtils::initTestCase()
hgs
parents:
diff changeset
    67
{
hgs
parents:
diff changeset
    68
    mEapConfigIf = new EapQtConfigInterface(EapQtConfigInterface::EapBearerTypeWlan,
hgs
parents:
diff changeset
    69
        global_undefinedIap);
hgs
parents:
diff changeset
    70
hgs
parents:
diff changeset
    71
    mCmm = new CmManagerShim();
hgs
parents:
diff changeset
    72
    mCmmShim = mCmm->createConnectionMethod(CMManagerShim::BearerTypeWlan);
hgs
parents:
diff changeset
    73
    mCmmShim->setStringAttribute(CMManagerShim::CmName, QString("EAP unit test"));
hgs
parents:
diff changeset
    74
    mCmmShim->update();
hgs
parents:
diff changeset
    75
    global_wlanIap = mCmmShim->getIntAttribute(CMManagerShim::CmIapId);
hgs
parents:
diff changeset
    76
}
hgs
parents:
diff changeset
    77
hgs
parents:
diff changeset
    78
/**
hgs
parents:
diff changeset
    79
 * This function will be called after the last test function was executed.
hgs
parents:
diff changeset
    80
 */
hgs
parents:
diff changeset
    81
void TestQtConfigUtils::cleanupTestCase()
hgs
parents:
diff changeset
    82
{
hgs
parents:
diff changeset
    83
    qDebug("calling mEapConfigIf->setConfigurationReference(global_wlanIap)");
hgs
parents:
diff changeset
    84
    mEapConfigIf->setConfigurationReference(global_wlanIap);
hgs
parents:
diff changeset
    85
hgs
parents:
diff changeset
    86
    qDebug("calling mEapConfigIf->deleteConfiguration()");
hgs
parents:
diff changeset
    87
    mEapConfigIf->deleteConfiguration();
hgs
parents:
diff changeset
    88
hgs
parents:
diff changeset
    89
    qDebug("calling delete mEapConfigIf");
hgs
parents:
diff changeset
    90
    delete mEapConfigIf;
hgs
parents:
diff changeset
    91
hgs
parents:
diff changeset
    92
    qDebug("calling mCmmShim->deleteConnectionMethod()");
hgs
parents:
diff changeset
    93
hgs
parents:
diff changeset
    94
    int error;
hgs
parents:
diff changeset
    95
    try {
hgs
parents:
diff changeset
    96
        mCmmShim->deleteConnectionMethod();
hgs
parents:
diff changeset
    97
    } catch (const std::exception &ex) {
hgs
parents:
diff changeset
    98
        error = qt_symbian_exception2Error(ex);
hgs
parents:
diff changeset
    99
        qDebug("mCmmShim->deleteConnectionMethod() failed with error: %d", error);
hgs
parents:
diff changeset
   100
    }
hgs
parents:
diff changeset
   101
hgs
parents:
diff changeset
   102
    qDebug("calling delete mCmmShim");
hgs
parents:
diff changeset
   103
    try {
hgs
parents:
diff changeset
   104
        delete mCmmShim;
hgs
parents:
diff changeset
   105
    } catch (const std::exception &ex) {
hgs
parents:
diff changeset
   106
        error = qt_symbian_exception2Error(ex);
hgs
parents:
diff changeset
   107
        qDebug("delete mCmmShim failed with error: ", error);
hgs
parents:
diff changeset
   108
    }
hgs
parents:
diff changeset
   109
hgs
parents:
diff changeset
   110
    delete mCmm;
hgs
parents:
diff changeset
   111
}
hgs
parents:
diff changeset
   112
hgs
parents:
diff changeset
   113
/**
hgs
parents:
diff changeset
   114
 * This function will be called before each test function is executed.
hgs
parents:
diff changeset
   115
 */
hgs
parents:
diff changeset
   116
void TestQtConfigUtils::init()
hgs
parents:
diff changeset
   117
{
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
 * This function will be called after each test function is executed.
hgs
parents:
diff changeset
   123
 */
hgs
parents:
diff changeset
   124
void TestQtConfigUtils::cleanup()
hgs
parents:
diff changeset
   125
{
hgs
parents:
diff changeset
   126
hgs
parents:
diff changeset
   127
}
hgs
parents:
diff changeset
   128
hgs
parents:
diff changeset
   129
// ---------------------------------------------------------
hgs
parents:
diff changeset
   130
// TEST CASES
hgs
parents:
diff changeset
   131
// ---------------------------------------------------------
hgs
parents:
diff changeset
   132
hgs
parents:
diff changeset
   133
// ---------------------------------------------------------
hgs
parents:
diff changeset
   134
// test EapQtPluginInfo
hgs
parents:
diff changeset
   135
// ---------------------------------------------------------
hgs
parents:
diff changeset
   136
#if 1
hgs
parents:
diff changeset
   137
void TestQtConfigUtils::testEapQtPluginInfoPluginUndefined()
hgs
parents:
diff changeset
   138
{
hgs
parents:
diff changeset
   139
    QString pluginName("PluginUndefined");
hgs
parents:
diff changeset
   140
    EapQtPluginInfo info(EapQtPluginHandle::PluginUndefined, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   141
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginUndefined);
hgs
parents:
diff changeset
   142
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   143
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   144
}
hgs
parents:
diff changeset
   145
hgs
parents:
diff changeset
   146
void TestQtConfigUtils::testEapQtPluginInfoPluginEapAka()
hgs
parents:
diff changeset
   147
{
hgs
parents:
diff changeset
   148
    QString pluginName("PluginEapAka");
hgs
parents:
diff changeset
   149
    EapQtPluginInfo info(EapQtPluginHandle::PluginEapAka, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   150
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapAka);
hgs
parents:
diff changeset
   151
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   152
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   153
}
hgs
parents:
diff changeset
   154
hgs
parents:
diff changeset
   155
void TestQtConfigUtils::testEapQtPluginInfoPluginEapFast()
hgs
parents:
diff changeset
   156
{
hgs
parents:
diff changeset
   157
    QString pluginName("PluginEapFast");
hgs
parents:
diff changeset
   158
    EapQtPluginInfo info(EapQtPluginHandle::PluginEapFast, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   159
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapFast);
hgs
parents:
diff changeset
   160
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   161
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   162
}
hgs
parents:
diff changeset
   163
hgs
parents:
diff changeset
   164
void TestQtConfigUtils::testEapQtPluginInfoPluginEapGtc()
hgs
parents:
diff changeset
   165
{
hgs
parents:
diff changeset
   166
    QString pluginName("PluginEapGtc");
hgs
parents:
diff changeset
   167
    EapQtPluginInfo info(EapQtPluginHandle::PluginEapGtc, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   168
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapGtc);
hgs
parents:
diff changeset
   169
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   170
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   171
}
hgs
parents:
diff changeset
   172
hgs
parents:
diff changeset
   173
void TestQtConfigUtils::testEapQtPluginInfoPluginLeap()
hgs
parents:
diff changeset
   174
{
hgs
parents:
diff changeset
   175
    QString pluginName("PluginLeap");
hgs
parents:
diff changeset
   176
    EapQtPluginInfo info(EapQtPluginHandle::PluginLeap, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   177
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginLeap);
hgs
parents:
diff changeset
   178
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   179
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   180
}
hgs
parents:
diff changeset
   181
hgs
parents:
diff changeset
   182
void TestQtConfigUtils::testEapQtPluginInfoPluginEapMschapv2()
hgs
parents:
diff changeset
   183
{
hgs
parents:
diff changeset
   184
    QString pluginName("PluginEapMschapv2");
hgs
parents:
diff changeset
   185
    EapQtPluginInfo info(EapQtPluginHandle::PluginEapMschapv2, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   186
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapMschapv2);
hgs
parents:
diff changeset
   187
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   188
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   189
}
hgs
parents:
diff changeset
   190
hgs
parents:
diff changeset
   191
void TestQtConfigUtils::testEapQtPluginInfoPluginPeap()
hgs
parents:
diff changeset
   192
{
hgs
parents:
diff changeset
   193
    QString pluginName("PluginPeap");
hgs
parents:
diff changeset
   194
    EapQtPluginInfo info(EapQtPluginHandle::PluginPeap, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   195
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginPeap);
hgs
parents:
diff changeset
   196
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   197
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   198
}
hgs
parents:
diff changeset
   199
hgs
parents:
diff changeset
   200
void TestQtConfigUtils::testEapQtPluginInfoPluginEapSim()
hgs
parents:
diff changeset
   201
{
hgs
parents:
diff changeset
   202
    QString pluginName("PluginEapSim");
hgs
parents:
diff changeset
   203
    EapQtPluginInfo info(EapQtPluginHandle::PluginEapSim, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   204
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapSim);
hgs
parents:
diff changeset
   205
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   206
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   207
}
hgs
parents:
diff changeset
   208
hgs
parents:
diff changeset
   209
void TestQtConfigUtils::testEapQtPluginInfoPluginEapTls()
hgs
parents:
diff changeset
   210
{
hgs
parents:
diff changeset
   211
    QString pluginName("PluginEapTls");
hgs
parents:
diff changeset
   212
    EapQtPluginInfo info(EapQtPluginHandle::PluginEapTls, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   213
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapTls);
hgs
parents:
diff changeset
   214
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   215
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   216
}
hgs
parents:
diff changeset
   217
hgs
parents:
diff changeset
   218
void TestQtConfigUtils::testEapQtPluginInfoPluginEapTtls()
hgs
parents:
diff changeset
   219
{
hgs
parents:
diff changeset
   220
    QString pluginName("PluginEapTtls");
hgs
parents:
diff changeset
   221
    EapQtPluginInfo info(EapQtPluginHandle::PluginEapTtls, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   222
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapTtls);
hgs
parents:
diff changeset
   223
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   224
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   225
}
hgs
parents:
diff changeset
   226
hgs
parents:
diff changeset
   227
void TestQtConfigUtils::testEapQtPluginInfoPluginPap()
hgs
parents:
diff changeset
   228
{
hgs
parents:
diff changeset
   229
    QString pluginName("PluginPap");
hgs
parents:
diff changeset
   230
    EapQtPluginInfo info(EapQtPluginHandle::PluginPap, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   231
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginPap);
hgs
parents:
diff changeset
   232
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   233
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   234
}
hgs
parents:
diff changeset
   235
hgs
parents:
diff changeset
   236
void TestQtConfigUtils::testEapQtPluginInfoPluginPlainMschapv2()
hgs
parents:
diff changeset
   237
{
hgs
parents:
diff changeset
   238
    QString pluginName("PluginPlainMschapv2");
hgs
parents:
diff changeset
   239
    EapQtPluginInfo info(EapQtPluginHandle::PluginPlainMschapv2, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   240
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginPlainMschapv2);
hgs
parents:
diff changeset
   241
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   242
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   243
}
hgs
parents:
diff changeset
   244
hgs
parents:
diff changeset
   245
void TestQtConfigUtils::testEapQtPluginInfoAssignment()
hgs
parents:
diff changeset
   246
{
hgs
parents:
diff changeset
   247
    QString pluginName1("PluginPlainMschapv2");
hgs
parents:
diff changeset
   248
    QString pluginName2("PluginEapTtls");
hgs
parents:
diff changeset
   249
hgs
parents:
diff changeset
   250
    EapQtPluginInfo info1(EapQtPluginHandle::PluginPlainMschapv2, pluginName1, global_pluginOrder);
hgs
parents:
diff changeset
   251
    EapQtPluginInfo info2(EapQtPluginHandle::PluginEapTtls, pluginName2, global_pluginOrder + 1);
hgs
parents:
diff changeset
   252
hgs
parents:
diff changeset
   253
    info1 = info2;
hgs
parents:
diff changeset
   254
hgs
parents:
diff changeset
   255
    QVERIFY(info1.pluginHandle() == info2.pluginHandle());
hgs
parents:
diff changeset
   256
    QVERIFY(info1.localizationId() == info2.localizationId());
hgs
parents:
diff changeset
   257
    QVERIFY(info1.orderNumber() == info2.orderNumber());
hgs
parents:
diff changeset
   258
}
hgs
parents:
diff changeset
   259
hgs
parents:
diff changeset
   260
void TestQtConfigUtils::testEapQtPluginInfoSelfAssignment()
hgs
parents:
diff changeset
   261
{
hgs
parents:
diff changeset
   262
    QString pluginName("PluginEapSim");
hgs
parents:
diff changeset
   263
    EapQtPluginInfo info(EapQtPluginHandle::PluginEapSim, pluginName, global_pluginOrder);
hgs
parents:
diff changeset
   264
    info = info;
hgs
parents:
diff changeset
   265
hgs
parents:
diff changeset
   266
    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapSim);
hgs
parents:
diff changeset
   267
    QVERIFY(info.localizationId() == pluginName);
hgs
parents:
diff changeset
   268
    QVERIFY(info.orderNumber() == global_pluginOrder);
hgs
parents:
diff changeset
   269
}
hgs
parents:
diff changeset
   270
hgs
parents:
diff changeset
   271
// ---------------------------------------------------------
hgs
parents:
diff changeset
   272
// test EapQtPluginHandle
hgs
parents:
diff changeset
   273
// ---------------------------------------------------------
hgs
parents:
diff changeset
   274
hgs
parents:
diff changeset
   275
void TestQtConfigUtils::testEapQtPluginHandleDefaultConstructor()
hgs
parents:
diff changeset
   276
{
hgs
parents:
diff changeset
   277
    EapQtPluginHandle handle;
hgs
parents:
diff changeset
   278
    QVERIFY(handle == EapQtPluginHandle::PluginUndefined);
hgs
parents:
diff changeset
   279
}
hgs
parents:
diff changeset
   280
hgs
parents:
diff changeset
   281
void TestQtConfigUtils::testEapQtPluginHandlePluginLastConstructor()
hgs
parents:
diff changeset
   282
{
hgs
parents:
diff changeset
   283
    EapQtPluginHandle handle(EapQtPluginHandle::PluginLast);
hgs
parents:
diff changeset
   284
    QVERIFY(handle.pluginId() == EapQtPluginHandle::PluginUndefined);
hgs
parents:
diff changeset
   285
}
hgs
parents:
diff changeset
   286
hgs
parents:
diff changeset
   287
void TestQtConfigUtils::testEapQtPluginHandleEapTypeConstructor()
hgs
parents:
diff changeset
   288
{
hgs
parents:
diff changeset
   289
    EapQtPluginHandle handle(EapQtExpandedEapType::TypeEapAka);
hgs
parents:
diff changeset
   290
    QVERIFY(handle.pluginId() == EapQtPluginHandle::PluginEapAka);
hgs
parents:
diff changeset
   291
}
hgs
parents:
diff changeset
   292
hgs
parents:
diff changeset
   293
void TestQtConfigUtils::testEapQtPluginHandleEapTypeUidConstructor()
hgs
parents:
diff changeset
   294
{
hgs
parents:
diff changeset
   295
    int uid(0x12345678);
hgs
parents:
diff changeset
   296
    EapQtPluginHandle handle(EapQtExpandedEapType::TypePeap, uid);
hgs
parents:
diff changeset
   297
    QVERIFY(handle.pluginId() == EapQtPluginHandle::PluginPeap);
hgs
parents:
diff changeset
   298
    QVERIFY(handle.protocolImplementationUid() == uid);
hgs
parents:
diff changeset
   299
}
hgs
parents:
diff changeset
   300
hgs
parents:
diff changeset
   301
void TestQtConfigUtils::testEapQtPluginHandleSelfAssignment()
hgs
parents:
diff changeset
   302
{
hgs
parents:
diff changeset
   303
    EapQtPluginHandle handle(EapQtPluginHandle::PluginEapTls);
hgs
parents:
diff changeset
   304
    handle = handle;
hgs
parents:
diff changeset
   305
    QVERIFY(handle.pluginId() == EapQtPluginHandle::PluginEapTls);
hgs
parents:
diff changeset
   306
}
hgs
parents:
diff changeset
   307
hgs
parents:
diff changeset
   308
// ---------------------------------------------------------
hgs
parents:
diff changeset
   309
// test EapQtExpandedEapType
hgs
parents:
diff changeset
   310
// ---------------------------------------------------------
hgs
parents:
diff changeset
   311
hgs
parents:
diff changeset
   312
void TestQtConfigUtils::testEapQtExpandedEapTypeDefaultConstructor()
hgs
parents:
diff changeset
   313
{
hgs
parents:
diff changeset
   314
    EapQtExpandedEapType eapType;
hgs
parents:
diff changeset
   315
    QVERIFY(eapType.type() == EapQtExpandedEapType::TypeUndefined);
hgs
parents:
diff changeset
   316
    QVERIFY(eapType.eapExpandedData().count() == 0);
hgs
parents:
diff changeset
   317
}
hgs
parents:
diff changeset
   318
hgs
parents:
diff changeset
   319
void TestQtConfigUtils::testEapQtExpandedEapTypeLastConstructor()
hgs
parents:
diff changeset
   320
{
hgs
parents:
diff changeset
   321
    EapQtExpandedEapType eapType(EapQtExpandedEapType::TypeLast);
hgs
parents:
diff changeset
   322
    QVERIFY(eapType.type() == EapQtExpandedEapType::TypeUndefined);
hgs
parents:
diff changeset
   323
}
hgs
parents:
diff changeset
   324
hgs
parents:
diff changeset
   325
void TestQtConfigUtils::testEapQtExpandedEapTypeConstructorWpsType()
hgs
parents:
diff changeset
   326
{
hgs
parents:
diff changeset
   327
    EapQtExpandedEapType eapType(EapQtExpandedEapType::TypeProtectedSetup);
hgs
parents:
diff changeset
   328
    QVERIFY(eapType.type() == EapQtExpandedEapType::TypeProtectedSetup);
hgs
parents:
diff changeset
   329
    QVERIFY(eapType.eapExpandedData() == QByteArray(global_wpsType, sizeof(global_wpsType)));
hgs
parents:
diff changeset
   330
}
hgs
parents:
diff changeset
   331
hgs
parents:
diff changeset
   332
void TestQtConfigUtils::testEapQtExpandedEapTypeConstructorWpsByteArray()
hgs
parents:
diff changeset
   333
{
hgs
parents:
diff changeset
   334
    QByteArray wpsArray(global_wpsType, sizeof(global_wpsType));
hgs
parents:
diff changeset
   335
    EapQtExpandedEapType eapType(wpsArray);
hgs
parents:
diff changeset
   336
hgs
parents:
diff changeset
   337
    QVERIFY(eapType.type() == EapQtExpandedEapType::TypeProtectedSetup);
hgs
parents:
diff changeset
   338
    QVERIFY(eapType.eapExpandedData() == wpsArray);
hgs
parents:
diff changeset
   339
}
hgs
parents:
diff changeset
   340
hgs
parents:
diff changeset
   341
void TestQtConfigUtils::testEapQtExpandedEapTypeAssignment()
hgs
parents:
diff changeset
   342
{
hgs
parents:
diff changeset
   343
    EapQtExpandedEapType eapType1;
hgs
parents:
diff changeset
   344
    EapQtExpandedEapType eapType2(EapQtExpandedEapType::TypePlainMschapv2);
hgs
parents:
diff changeset
   345
    eapType1 = eapType2;
hgs
parents:
diff changeset
   346
hgs
parents:
diff changeset
   347
    QVERIFY(eapType1.type() == eapType2.type());
hgs
parents:
diff changeset
   348
    QVERIFY(eapType1.eapExpandedData() == eapType2.eapExpandedData());
hgs
parents:
diff changeset
   349
    QVERIFY(eapType1 == eapType2);
hgs
parents:
diff changeset
   350
}
hgs
parents:
diff changeset
   351
hgs
parents:
diff changeset
   352
void TestQtConfigUtils::testEapQtExpandedEapTypeSelfAssignment()
hgs
parents:
diff changeset
   353
{
hgs
parents:
diff changeset
   354
    EapQtExpandedEapType eapType(EapQtExpandedEapType::TypeEapTtls);
hgs
parents:
diff changeset
   355
    eapType = eapType;
hgs
parents:
diff changeset
   356
hgs
parents:
diff changeset
   357
    QVERIFY(eapType == EapQtExpandedEapType::TypeEapTtls);
hgs
parents:
diff changeset
   358
    // to test != operator as well
hgs
parents:
diff changeset
   359
    QVERIFY(eapType != EapQtExpandedEapType::TypeUndefined);
hgs
parents:
diff changeset
   360
}
hgs
parents:
diff changeset
   361
hgs
parents:
diff changeset
   362
// ---------------------------------------------------------
hgs
parents:
diff changeset
   363
// test EapQtConfigInterface
hgs
parents:
diff changeset
   364
// ---------------------------------------------------------
hgs
parents:
diff changeset
   365
hgs
parents:
diff changeset
   366
void TestQtConfigUtils::testDefaultConstructor()
hgs
parents:
diff changeset
   367
{
hgs
parents:
diff changeset
   368
    EapQtConfigInterface localEapConfigIf;
hgs
parents:
diff changeset
   369
hgs
parents:
diff changeset
   370
    QScopedPointer<EapQtValidator> val(localEapConfigIf.validatorEap(
hgs
parents:
diff changeset
   371
        EapQtExpandedEapType::TypeEapAka, EapQtConfig::Username));
hgs
parents:
diff changeset
   372
hgs
parents:
diff changeset
   373
    EapQtValidator::Status status = val->validate(QString("test"));
hgs
parents:
diff changeset
   374
    QVERIFY(status == EapQtValidator::StatusOk);
hgs
parents:
diff changeset
   375
hgs
parents:
diff changeset
   376
    status = val->validate(QString());
hgs
parents:
diff changeset
   377
    QVERIFY(status == EapQtValidator::StatusOk);
hgs
parents:
diff changeset
   378
hgs
parents:
diff changeset
   379
    status = val->validate(QByteArray());
hgs
parents:
diff changeset
   380
    QVERIFY(status == EapQtValidator::StatusInvalid);
hgs
parents:
diff changeset
   381
hgs
parents:
diff changeset
   382
    status = val->validate(QString("pwd@realm"));
hgs
parents:
diff changeset
   383
    QVERIFY(status == EapQtValidator::StatusInvalidCharacters);
hgs
parents:
diff changeset
   384
hgs
parents:
diff changeset
   385
    status = val->validate(QString("@"));
hgs
parents:
diff changeset
   386
    QVERIFY(status == EapQtValidator::StatusInvalidCharacters);
hgs
parents:
diff changeset
   387
hgs
parents:
diff changeset
   388
    status = val->validate(QString("X"));
hgs
parents:
diff changeset
   389
    QVERIFY(status == EapQtValidator::StatusOk);
hgs
parents:
diff changeset
   390
hgs
parents:
diff changeset
   391
    status = val->validate(QString("uSerNäme"));
hgs
parents:
diff changeset
   392
    QVERIFY(status == EapQtValidator::StatusOk);
hgs
parents:
diff changeset
   393
hgs
parents:
diff changeset
   394
    status = val->validate(QString("as0d7fg9µ8a&&¤%GSB*^ü~||><:M;_-§][6{]{[]£"));
hgs
parents:
diff changeset
   395
    QVERIFY(status == EapQtValidator::StatusOk);
hgs
parents:
diff changeset
   396
hgs
parents:
diff changeset
   397
    QString veryLong(254, QChar('Z'));
hgs
parents:
diff changeset
   398
hgs
parents:
diff changeset
   399
    status = val->validate(veryLong);
hgs
parents:
diff changeset
   400
    QVERIFY(status == EapQtValidator::StatusOk);
hgs
parents:
diff changeset
   401
hgs
parents:
diff changeset
   402
    veryLong.append("}");
hgs
parents:
diff changeset
   403
hgs
parents:
diff changeset
   404
    status = val->validate(veryLong);
hgs
parents:
diff changeset
   405
    QVERIFY(status == EapQtValidator::StatusOk);
hgs
parents:
diff changeset
   406
hgs
parents:
diff changeset
   407
    veryLong.append("K");
hgs
parents:
diff changeset
   408
hgs
parents:
diff changeset
   409
    status = val->validate(veryLong);
hgs
parents:
diff changeset
   410
    QVERIFY(status == EapQtValidator::StatusTooLong);
hgs
parents:
diff changeset
   411
hgs
parents:
diff changeset
   412
    // this one should throw since not supported for validator instance
hgs
parents:
diff changeset
   413
    bool pass(false);
hgs
parents:
diff changeset
   414
    try {
hgs
parents:
diff changeset
   415
        localEapConfigIf.setConfigurationReference(global_wlanIap);
hgs
parents:
diff changeset
   416
    } catch (const std::exception&) {
hgs
parents:
diff changeset
   417
        pass = true;
hgs
parents:
diff changeset
   418
    }
hgs
parents:
diff changeset
   419
    QVERIFY(pass == true);
hgs
parents:
diff changeset
   420
}
hgs
parents:
diff changeset
   421
hgs
parents:
diff changeset
   422
void TestQtConfigUtils::testParallelInstances()
hgs
parents:
diff changeset
   423
{
hgs
parents:
diff changeset
   424
    EapQtConfigInterface localEapConfigIf(EapQtConfigInterface::EapBearerTypeWlan,
hgs
parents:
diff changeset
   425
        global_undefinedIap);
hgs
parents:
diff changeset
   426
    QVERIFY(localEapConfigIf.isSupportedOuterType(EapQtPluginHandle::PluginEapAka) == true);
hgs
parents:
diff changeset
   427
    QVERIFY(mEapConfigIf->isSupportedOuterType(EapQtPluginHandle::PluginPeap) == true);
hgs
parents:
diff changeset
   428
}
hgs
parents:
diff changeset
   429
hgs
parents:
diff changeset
   430
void TestQtConfigUtils::testConstructorThrowing()
hgs
parents:
diff changeset
   431
{
hgs
parents:
diff changeset
   432
    // this one should throw since IAP id is invalid
hgs
parents:
diff changeset
   433
    bool pass(false);
hgs
parents:
diff changeset
   434
    try {
hgs
parents:
diff changeset
   435
        EapQtConfigInterface localEapConfigIf(EapQtConfigInterface::EapBearerTypeWlan,
hgs
parents:
diff changeset
   436
            global_invalidIap);
hgs
parents:
diff changeset
   437
    } catch (const std::exception&) {
hgs
parents:
diff changeset
   438
        pass = true;
hgs
parents:
diff changeset
   439
    }
hgs
parents:
diff changeset
   440
    QVERIFY(pass == true);
hgs
parents:
diff changeset
   441
}
hgs
parents:
diff changeset
   442
hgs
parents:
diff changeset
   443
void TestQtConfigUtils::testSetConfigurationReferenceUndefinedAgain()
hgs
parents:
diff changeset
   444
{
hgs
parents:
diff changeset
   445
    // set the same again (global_undefinedIap)
hgs
parents:
diff changeset
   446
    QVERIFY(mEapConfigIf->setConfigurationReference(global_undefinedIap) == true);
hgs
parents:
diff changeset
   447
}
hgs
parents:
diff changeset
   448
hgs
parents:
diff changeset
   449
void TestQtConfigUtils::testSetConfigurationReferenceFailure()
hgs
parents:
diff changeset
   450
{
hgs
parents:
diff changeset
   451
    // fails since referred IAP does not exist
hgs
parents:
diff changeset
   452
    QVERIFY(mEapConfigIf->setConfigurationReference(global_invalidIap) == false);
hgs
parents:
diff changeset
   453
    // change back to correct
hgs
parents:
diff changeset
   454
    QVERIFY(mEapConfigIf->setConfigurationReference(global_undefinedIap) == true);
hgs
parents:
diff changeset
   455
}
hgs
parents:
diff changeset
   456
hgs
parents:
diff changeset
   457
void TestQtConfigUtils::testCertificateAuthorityCertificates()
hgs
parents:
diff changeset
   458
{
hgs
parents:
diff changeset
   459
    mCaCertInfo = mEapConfigIf->certificateAuthorityCertificates();
hgs
parents:
diff changeset
   460
    QVERIFY(mCaCertInfo.count() > 0);
hgs
parents:
diff changeset
   461
}
hgs
parents:
diff changeset
   462
hgs
parents:
diff changeset
   463
void TestQtConfigUtils::testUserCertificates()
hgs
parents:
diff changeset
   464
{
hgs
parents:
diff changeset
   465
    mUserCertInfo = mEapConfigIf->userCertificates();
hgs
parents:
diff changeset
   466
    QEXPECT_FAIL("", "No user certificates installed?", Continue);
hgs
parents:
diff changeset
   467
    QVERIFY(mUserCertInfo.count() > 0);
hgs
parents:
diff changeset
   468
}
hgs
parents:
diff changeset
   469
hgs
parents:
diff changeset
   470
void TestQtConfigUtils::testSupportedOuterTypes()
hgs
parents:
diff changeset
   471
{
hgs
parents:
diff changeset
   472
    QList<EapQtPluginInfo> plugins;
hgs
parents:
diff changeset
   473
    plugins = mEapConfigIf->supportedOuterTypes();
hgs
parents:
diff changeset
   474
hgs
parents:
diff changeset
   475
    QVERIFY(plugins.count() > 0);
hgs
parents:
diff changeset
   476
hgs
parents:
diff changeset
   477
    QList<EapQtPluginHandle> handles;
hgs
parents:
diff changeset
   478
    for (int i = 0; i < plugins.count(); i++) {
hgs
parents:
diff changeset
   479
        handles.append(plugins[i].pluginHandle());
hgs
parents:
diff changeset
   480
    }
hgs
parents:
diff changeset
   481
hgs
parents:
diff changeset
   482
    // check that handles contain outer types
hgs
parents:
diff changeset
   483
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapAka) == true);
hgs
parents:
diff changeset
   484
    QVERIFY(handles.contains(EapQtPluginHandle::PluginPeap) == true);
hgs
parents:
diff changeset
   485
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapSim) == true);
hgs
parents:
diff changeset
   486
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapTls) == true);
hgs
parents:
diff changeset
   487
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapTtls) == true);
hgs
parents:
diff changeset
   488
hgs
parents:
diff changeset
   489
    // and no inner types
hgs
parents:
diff changeset
   490
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapGtc) == false);
hgs
parents:
diff changeset
   491
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapMschapv2) == false);
hgs
parents:
diff changeset
   492
    QVERIFY(handles.contains(EapQtPluginHandle::PluginPap) == false);
hgs
parents:
diff changeset
   493
    QVERIFY(handles.contains(EapQtPluginHandle::PluginPlainMschapv2) == false);
hgs
parents:
diff changeset
   494
    QVERIFY(handles.contains(EapQtPluginHandle::PluginUndefined) == false);
hgs
parents:
diff changeset
   495
}
hgs
parents:
diff changeset
   496
hgs
parents:
diff changeset
   497
void TestQtConfigUtils::testSupportedInnerTypesPeap()
hgs
parents:
diff changeset
   498
{
hgs
parents:
diff changeset
   499
    QList<EapQtPluginInfo> plugins;
hgs
parents:
diff changeset
   500
    plugins = mEapConfigIf->supportedInnerTypes(EapQtPluginHandle::PluginPeap);
hgs
parents:
diff changeset
   501
hgs
parents:
diff changeset
   502
    QVERIFY(plugins.count() > 0);
hgs
parents:
diff changeset
   503
hgs
parents:
diff changeset
   504
    QList<EapQtPluginHandle> handles;
hgs
parents:
diff changeset
   505
    for (int i = 0; i < plugins.count(); i++) {
hgs
parents:
diff changeset
   506
        handles.append(plugins[i].pluginHandle());
hgs
parents:
diff changeset
   507
    }
hgs
parents:
diff changeset
   508
hgs
parents:
diff changeset
   509
    // check that handles contain correct types
hgs
parents:
diff changeset
   510
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapAka) == true);
hgs
parents:
diff changeset
   511
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapGtc) == true);
hgs
parents:
diff changeset
   512
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapMschapv2) == true);
hgs
parents:
diff changeset
   513
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapSim) == true);
hgs
parents:
diff changeset
   514
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapTls) == true);
hgs
parents:
diff changeset
   515
hgs
parents:
diff changeset
   516
    // and other types
hgs
parents:
diff changeset
   517
    QVERIFY(handles.contains(EapQtPluginHandle::PluginUndefined) == false);
hgs
parents:
diff changeset
   518
    QVERIFY(handles.contains(EapQtPluginHandle::PluginPeap) == false);
hgs
parents:
diff changeset
   519
    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapTtls) == false);
hgs
parents:
diff changeset
   520
    QVERIFY(handles.contains(EapQtPluginHandle::PluginPap) == false);
hgs
parents:
diff changeset
   521
    QVERIFY(handles.contains(EapQtPluginHandle::PluginPlainMschapv2) == false);
hgs
parents:
diff changeset
   522
}
hgs
parents:
diff changeset
   523
hgs
parents:
diff changeset
   524
void TestQtConfigUtils::testIsSupportedOuterTypePeap()
hgs
parents:
diff changeset
   525
{
hgs
parents:
diff changeset
   526
    QVERIFY(mEapConfigIf->isSupportedOuterType(EapQtPluginHandle::PluginPeap) == true);
hgs
parents:
diff changeset
   527
}
hgs
parents:
diff changeset
   528
hgs
parents:
diff changeset
   529
void TestQtConfigUtils::testIsSupportedInnerTypePeap()
hgs
parents:
diff changeset
   530
{
hgs
parents:
diff changeset
   531
    QVERIFY(mEapConfigIf->isSupportedInnerType(EapQtPluginHandle::PluginPeap,
hgs
parents:
diff changeset
   532
            EapQtPluginHandle::PluginPeap) == false);
hgs
parents:
diff changeset
   533
    QVERIFY(mEapConfigIf->isSupportedInnerType(EapQtPluginHandle::PluginPeap,
hgs
parents:
diff changeset
   534
            EapQtPluginHandle::PluginEapGtc) == true);
hgs
parents:
diff changeset
   535
}
hgs
parents:
diff changeset
   536
hgs
parents:
diff changeset
   537
void TestQtConfigUtils::testSetConfigurationReferenceValidWlanIap()
hgs
parents:
diff changeset
   538
{
hgs
parents:
diff changeset
   539
    QVERIFY(mEapConfigIf->setConfigurationReference(global_wlanIap) == true);
hgs
parents:
diff changeset
   540
}
hgs
parents:
diff changeset
   541
hgs
parents:
diff changeset
   542
void TestQtConfigUtils::testTestAgainForValidWlanIap()
hgs
parents:
diff changeset
   543
{
hgs
parents:
diff changeset
   544
    testCertificateAuthorityCertificates();
hgs
parents:
diff changeset
   545
    testUserCertificates();
hgs
parents:
diff changeset
   546
    testSupportedOuterTypes();
hgs
parents:
diff changeset
   547
    testSupportedInnerTypesPeap();
hgs
parents:
diff changeset
   548
    testIsSupportedOuterTypePeap();
hgs
parents:
diff changeset
   549
    testIsSupportedInnerTypePeap();
hgs
parents:
diff changeset
   550
}
hgs
parents:
diff changeset
   551
hgs
parents:
diff changeset
   552
void TestQtConfigUtils::testSelectedOuterTypes()
hgs
parents:
diff changeset
   553
{
hgs
parents:
diff changeset
   554
    QList<EapQtPluginHandle> outers;
hgs
parents:
diff changeset
   555
    outers = mEapConfigIf->selectedOuterTypes();
hgs
parents:
diff changeset
   556
hgs
parents:
diff changeset
   557
    QVERIFY(outers.count() == 0);
hgs
parents:
diff changeset
   558
hgs
parents:
diff changeset
   559
    outers.clear();
hgs
parents:
diff changeset
   560
    outers.append(EapQtPluginHandle::PluginPeap);
hgs
parents:
diff changeset
   561
    outers.append(EapQtPluginHandle::PluginEapTls);
hgs
parents:
diff changeset
   562
    // this must not be set when reading again
hgs
parents:
diff changeset
   563
    outers.append(EapQtPluginHandle::PluginEapGtc);
hgs
parents:
diff changeset
   564
hgs
parents:
diff changeset
   565
    QVERIFY(mEapConfigIf->setSelectedOuterTypes(outers) == true);
hgs
parents:
diff changeset
   566
hgs
parents:
diff changeset
   567
    outers.clear();
hgs
parents:
diff changeset
   568
    outers = mEapConfigIf->selectedOuterTypes();
hgs
parents:
diff changeset
   569
hgs
parents:
diff changeset
   570
    QVERIFY(outers.count() == 2);
hgs
parents:
diff changeset
   571
hgs
parents:
diff changeset
   572
    QVERIFY(outers.contains(EapQtPluginHandle::PluginPeap) == true);
hgs
parents:
diff changeset
   573
    QVERIFY(outers.contains(EapQtPluginHandle::PluginEapTls) == true);
hgs
parents:
diff changeset
   574
    QVERIFY(outers.contains(EapQtPluginHandle::PluginEapGtc) == false);
hgs
parents:
diff changeset
   575
}
hgs
parents:
diff changeset
   576
hgs
parents:
diff changeset
   577
void TestQtConfigUtils::testIsSupportedTypeNewInstance()
hgs
parents:
diff changeset
   578
{
hgs
parents:
diff changeset
   579
    EapQtConfigInterface localEapConfigIf1(EapQtConfigInterface::EapBearerTypeWlan, global_wlanIap);
hgs
parents:
diff changeset
   580
    QVERIFY(localEapConfigIf1.isSupportedOuterType(EapQtPluginHandle::PluginEapAka) == true);
hgs
parents:
diff changeset
   581
    QVERIFY(localEapConfigIf1.isSupportedInnerType(EapQtPluginHandle::PluginEapTtls, EapQtPluginHandle::PluginEapAka) == true);
hgs
parents:
diff changeset
   582
hgs
parents:
diff changeset
   583
    EapQtConfigInterface localEapConfigIf2(EapQtConfigInterface::EapBearerTypeWlan, global_wlanIap);
hgs
parents:
diff changeset
   584
    QVERIFY(localEapConfigIf2.isSupportedInnerType(EapQtPluginHandle::PluginPeap, EapQtPluginHandle::PluginEapMschapv2) == true);
hgs
parents:
diff changeset
   585
    QVERIFY(localEapConfigIf2.isSupportedOuterType(EapQtPluginHandle::PluginEapMschapv2) == false);
hgs
parents:
diff changeset
   586
}
hgs
parents:
diff changeset
   587
hgs
parents:
diff changeset
   588
void TestQtConfigUtils::testSaveConfigurationFull()
hgs
parents:
diff changeset
   589
{
hgs
parents:
diff changeset
   590
    int i = 0;
hgs
parents:
diff changeset
   591
hgs
parents:
diff changeset
   592
    QString peap_user("testuser");
hgs
parents:
diff changeset
   593
    QString peap_pwd("testpwd");
hgs
parents:
diff changeset
   594
    QString peap_realm("testrealm.org");
hgs
parents:
diff changeset
   595
    QString peap_pacref("testpacgroupreference");
hgs
parents:
diff changeset
   596
    uint peap_validity_time(15);
hgs
parents:
diff changeset
   597
hgs
parents:
diff changeset
   598
    QList<uint> peap_ciphers;
hgs
parents:
diff changeset
   599
    peap_ciphers.append(0x0004);
hgs
parents:
diff changeset
   600
    peap_ciphers.append(0x002F);
hgs
parents:
diff changeset
   601
    peap_ciphers.append(0x0033);
hgs
parents:
diff changeset
   602
    peap_ciphers.append(0x0034);
hgs
parents:
diff changeset
   603
hgs
parents:
diff changeset
   604
    QString peap_subject("Test PEAP subject");
hgs
parents:
diff changeset
   605
    QString peap_issuer("Test PEAP subject");
hgs
parents:
diff changeset
   606
    QString peap_serialnum("Test PEAP subject");
hgs
parents:
diff changeset
   607
    QString peap_label("Test PEAP label");
hgs
parents:
diff changeset
   608
    QString peap_thumbprint("Test PEAP subject");
hgs
parents:
diff changeset
   609
    QByteArray peap_subjectkey =
hgs
parents:
diff changeset
   610
        mCaCertInfo[0].value(EapQtCertificateInfo::SubjectKeyId).toByteArray();
hgs
parents:
diff changeset
   611
hgs
parents:
diff changeset
   612
    EapQtCertificateInfo peap_ca_cert;
hgs
parents:
diff changeset
   613
    peap_ca_cert.setValue(EapQtCertificateInfo::SubjectName, peap_subject);
hgs
parents:
diff changeset
   614
    peap_ca_cert.setValue(EapQtCertificateInfo::IssuerName, peap_issuer);
hgs
parents:
diff changeset
   615
    peap_ca_cert.setValue(EapQtCertificateInfo::SerialNumber, peap_serialnum);
hgs
parents:
diff changeset
   616
    peap_ca_cert.setValue(EapQtCertificateInfo::SubjectKeyId, peap_subjectkey);
hgs
parents:
diff changeset
   617
    peap_ca_cert.setValue(EapQtCertificateInfo::ThumbPrint, peap_thumbprint);
hgs
parents:
diff changeset
   618
    peap_ca_cert.setValue(EapQtCertificateInfo::CertificateLabel, peap_label);
hgs
parents:
diff changeset
   619
hgs
parents:
diff changeset
   620
    QString peap_subject_user("Test PEAP user subject");
hgs
parents:
diff changeset
   621
    QString peap_issuer_user("Test PEAP user subject");
hgs
parents:
diff changeset
   622
    QString peap_serialnum_user("Test PEAP user subject");
hgs
parents:
diff changeset
   623
    QString peap_label_user("Test PEAP user label");
hgs
parents:
diff changeset
   624
    QString peap_thumbprint_user("Test PEAP user subject");
hgs
parents:
diff changeset
   625
    QByteArray peap_subjectkey_user =
hgs
parents:
diff changeset
   626
        mCaCertInfo[1].value(EapQtCertificateInfo::SubjectKeyId).toByteArray();
hgs
parents:
diff changeset
   627
hgs
parents:
diff changeset
   628
    EapQtCertificateInfo peap_user_cert;
hgs
parents:
diff changeset
   629
    peap_user_cert.setValue(EapQtCertificateInfo::SubjectName, peap_subject_user);
hgs
parents:
diff changeset
   630
    peap_user_cert.setValue(EapQtCertificateInfo::IssuerName, peap_issuer_user);
hgs
parents:
diff changeset
   631
    peap_user_cert.setValue(EapQtCertificateInfo::SerialNumber, peap_serialnum_user);
hgs
parents:
diff changeset
   632
    peap_user_cert.setValue(EapQtCertificateInfo::SubjectKeyId, peap_subjectkey_user);
hgs
parents:
diff changeset
   633
    peap_user_cert.setValue(EapQtCertificateInfo::ThumbPrint, peap_thumbprint_user);
hgs
parents:
diff changeset
   634
    peap_user_cert.setValue(EapQtCertificateInfo::CertificateLabel, peap_label_user);
hgs
parents:
diff changeset
   635
hgs
parents:
diff changeset
   636
    EapQtPluginHandle handle_peap(EapQtPluginHandle::PluginPeap);
hgs
parents:
diff changeset
   637
    EapQtPluginHandle handle_gtc(EapQtPluginHandle::PluginEapGtc);
hgs
parents:
diff changeset
   638
    EapQtPluginHandle handle_mschap(EapQtPluginHandle::PluginEapMschapv2);
hgs
parents:
diff changeset
   639
    EapQtPluginHandle handle_undef(EapQtPluginHandle::PluginUndefined);
hgs
parents:
diff changeset
   640
hgs
parents:
diff changeset
   641
    // **** config outer type (PEAP)
hgs
parents:
diff changeset
   642
    EapQtConfig peap_config;
hgs
parents:
diff changeset
   643
    peap_config.setValue(EapQtConfig::UsernameAutomatic, true);
hgs
parents:
diff changeset
   644
    peap_config.setValue(EapQtConfig::Username, peap_user);
hgs
parents:
diff changeset
   645
    peap_config.setValue(EapQtConfig::PasswordPrompt, true);
hgs
parents:
diff changeset
   646
    peap_config.setValue(EapQtConfig::Password, peap_pwd);
hgs
parents:
diff changeset
   647
    peap_config.setValue(EapQtConfig::PasswordStored, false);
hgs
parents:
diff changeset
   648
    peap_config.setValue(EapQtConfig::RealmAutomatic, true);
hgs
parents:
diff changeset
   649
    peap_config.setValue(EapQtConfig::Realm, peap_realm);
hgs
parents:
diff changeset
   650
    peap_config.setValue(EapQtConfig::UsePseudonyms, true);
hgs
parents:
diff changeset
   651
    peap_config.setValue(EapQtConfig::VerifyServerRealm, true);
hgs
parents:
diff changeset
   652
    peap_config.setValue(EapQtConfig::SessionValidityTime, peap_validity_time);
hgs
parents:
diff changeset
   653
    peap_config.setValue(EapQtConfig::PeapVersion0Allowed, true);
hgs
parents:
diff changeset
   654
    peap_config.setValue(EapQtConfig::PeapVersion1Allowed, true);
hgs
parents:
diff changeset
   655
    peap_config.setValue(EapQtConfig::PeapVersion2Allowed, true);
hgs
parents:
diff changeset
   656
    peap_config.setValue(EapQtConfig::ProvisioningModeAuthenticated, true);
hgs
parents:
diff changeset
   657
    peap_config.setValue(EapQtConfig::ProvisioningModeUnauthenticated, true);
hgs
parents:
diff changeset
   658
    peap_config.setValue(EapQtConfig::PACGroupReference, peap_pacref);
hgs
parents:
diff changeset
   659
    peap_config.setValue(EapQtConfig::WarnADHPNoPAC, true);
hgs
parents:
diff changeset
   660
    peap_config.setValue(EapQtConfig::WarnADHPNoMatchingPAC, true);
hgs
parents:
diff changeset
   661
    peap_config.setValue(EapQtConfig::WarnNotDefaultServer, true);
hgs
parents:
diff changeset
   662
    peap_config.setValue(EapQtConfig::UseIdentityPrivacy, true);
hgs
parents:
diff changeset
   663
    peap_config.setValue(EapQtConfig::AuthorityCertificateAutomatic, true);
hgs
parents:
diff changeset
   664
    peap_config.setValue(EapQtConfig::ClientAuthenticationRequired, true);
hgs
parents:
diff changeset
   665
hgs
parents:
diff changeset
   666
    QList<QVariant> varList;
hgs
parents:
diff changeset
   667
    for (i = 0; i < peap_ciphers.count(); i++) {
hgs
parents:
diff changeset
   668
        varList.append(peap_ciphers[i]);
hgs
parents:
diff changeset
   669
    }
hgs
parents:
diff changeset
   670
    peap_config.setValue(EapQtConfig::CipherSuites, varList);
hgs
parents:
diff changeset
   671
    varList.clear();
hgs
parents:
diff changeset
   672
hgs
parents:
diff changeset
   673
    varList.append(qVariantFromValue(peap_ca_cert));
hgs
parents:
diff changeset
   674
    peap_config.setValue(EapQtConfig::AuthorityCertificate, varList);
hgs
parents:
diff changeset
   675
    varList.clear();
hgs
parents:
diff changeset
   676
hgs
parents:
diff changeset
   677
    varList.append(qVariantFromValue(peap_user_cert));
hgs
parents:
diff changeset
   678
    peap_config.setValue(EapQtConfig::UserCertificate, varList);
hgs
parents:
diff changeset
   679
    varList.clear();
hgs
parents:
diff changeset
   680
hgs
parents:
diff changeset
   681
    // activate inner types (EAP-GTC & EAP-MSCHAPv2)
hgs
parents:
diff changeset
   682
    varList.append(qVariantFromValue(handle_gtc));
hgs
parents:
diff changeset
   683
    varList.append(qVariantFromValue(handle_mschap));
hgs
parents:
diff changeset
   684
    peap_config.setValue(EapQtConfig::InnerType, varList);
hgs
parents:
diff changeset
   685
hgs
parents:
diff changeset
   686
    // OuterType is unset, i.e. QVariant::Invalid
hgs
parents:
diff changeset
   687
hgs
parents:
diff changeset
   688
    bool ok(false);
hgs
parents:
diff changeset
   689
    ok = mEapConfigIf->saveConfiguration(handle_peap, peap_config);
hgs
parents:
diff changeset
   690
    QVERIFY(ok);
hgs
parents:
diff changeset
   691
hgs
parents:
diff changeset
   692
    // *** config gtc
hgs
parents:
diff changeset
   693
    QString gtc_user("testgtcuser");
hgs
parents:
diff changeset
   694
    QString gtc_pwd("testgtcpwd");
hgs
parents:
diff changeset
   695
hgs
parents:
diff changeset
   696
    EapQtConfig gtc_config;
hgs
parents:
diff changeset
   697
hgs
parents:
diff changeset
   698
    gtc_config.setValue(EapQtConfig::Username, gtc_user);
hgs
parents:
diff changeset
   699
    gtc_config.setValue(EapQtConfig::PasswordPrompt, true);
hgs
parents:
diff changeset
   700
    gtc_config.setValue(EapQtConfig::Password, gtc_pwd);
hgs
parents:
diff changeset
   701
    gtc_config.setValue(EapQtConfig::PasswordStored, false);
hgs
parents:
diff changeset
   702
    gtc_config.setValue(EapQtConfig::OuterType, qVariantFromValue(handle_peap));
hgs
parents:
diff changeset
   703
hgs
parents:
diff changeset
   704
    // InnerType is unset, i.e. QVariant::Invalid
hgs
parents:
diff changeset
   705
hgs
parents:
diff changeset
   706
    ok = mEapConfigIf->saveConfiguration(handle_gtc, gtc_config);
hgs
parents:
diff changeset
   707
    QVERIFY(ok);
hgs
parents:
diff changeset
   708
hgs
parents:
diff changeset
   709
    // *** config mschapv2
hgs
parents:
diff changeset
   710
    QString mschap_user("testmschapuser");
hgs
parents:
diff changeset
   711
    QString mschap_pwd("testmschappwd");
hgs
parents:
diff changeset
   712
hgs
parents:
diff changeset
   713
    EapQtConfig mschap_config;
hgs
parents:
diff changeset
   714
    mschap_config.setValue(EapQtConfig::Username, mschap_user);
hgs
parents:
diff changeset
   715
    mschap_config.setValue(EapQtConfig::PasswordPrompt, false);
hgs
parents:
diff changeset
   716
    mschap_config.setValue(EapQtConfig::Password, mschap_pwd);
hgs
parents:
diff changeset
   717
    mschap_config.setValue(EapQtConfig::PasswordStored, false);
hgs
parents:
diff changeset
   718
    mschap_config.setValue(EapQtConfig::OuterType, qVariantFromValue(handle_peap));
hgs
parents:
diff changeset
   719
hgs
parents:
diff changeset
   720
    // InnerType is unset, i.e. QVariant::Invalid
hgs
parents:
diff changeset
   721
hgs
parents:
diff changeset
   722
    ok = mEapConfigIf->saveConfiguration(handle_mschap, mschap_config);
hgs
parents:
diff changeset
   723
    QVERIFY(ok);
hgs
parents:
diff changeset
   724
hgs
parents:
diff changeset
   725
    // *****************************************
hgs
parents:
diff changeset
   726
    // read back the values to check correctness
hgs
parents:
diff changeset
   727
    // *****************************************
hgs
parents:
diff changeset
   728
hgs
parents:
diff changeset
   729
    // *** gtc
hgs
parents:
diff changeset
   730
    EapQtPluginHandle read_handle;
hgs
parents:
diff changeset
   731
    EapQtConfig read_config;
hgs
parents:
diff changeset
   732
    ok = mEapConfigIf->readConfiguration(handle_peap, handle_gtc, read_config);
hgs
parents:
diff changeset
   733
    QVERIFY(ok);
hgs
parents:
diff changeset
   734
hgs
parents:
diff changeset
   735
    QVERIFY(false == read_config.value(EapQtConfig::UsernameAutomatic).toBool());
hgs
parents:
diff changeset
   736
    QVERIFY(gtc_config.value(EapQtConfig::Username) == read_config.value(EapQtConfig::Username));
hgs
parents:
diff changeset
   737
    QVERIFY(gtc_config.value(EapQtConfig::PasswordPrompt) == read_config.value(EapQtConfig::PasswordPrompt));
hgs
parents:
diff changeset
   738
    QVERIFY(true == read_config.value(EapQtConfig::PasswordStored).toBool());
hgs
parents:
diff changeset
   739
hgs
parents:
diff changeset
   740
    QVariant tmp = read_config.value(EapQtConfig::OuterType);
hgs
parents:
diff changeset
   741
    read_handle = tmp.value<EapQtPluginHandle> ();
hgs
parents:
diff changeset
   742
    QVERIFY(handle_peap == read_handle);
hgs
parents:
diff changeset
   743
hgs
parents:
diff changeset
   744
    // *** mschap
hgs
parents:
diff changeset
   745
    read_config.clear();
hgs
parents:
diff changeset
   746
hgs
parents:
diff changeset
   747
    ok = mEapConfigIf->readConfiguration(handle_peap, handle_mschap, read_config);
hgs
parents:
diff changeset
   748
    QVERIFY(ok);
hgs
parents:
diff changeset
   749
hgs
parents:
diff changeset
   750
    QVERIFY(false == read_config.value(EapQtConfig::UsernameAutomatic).toBool());
hgs
parents:
diff changeset
   751
    QVERIFY(mschap_config.value(EapQtConfig::Username) == read_config.value(EapQtConfig::Username));
hgs
parents:
diff changeset
   752
    QVERIFY(mschap_config.value(EapQtConfig::PasswordPrompt) == read_config.value(EapQtConfig::PasswordPrompt));
hgs
parents:
diff changeset
   753
    QVERIFY(true == read_config.value(EapQtConfig::PasswordStored).toBool());
hgs
parents:
diff changeset
   754
hgs
parents:
diff changeset
   755
    tmp = read_config.value(EapQtConfig::OuterType);
hgs
parents:
diff changeset
   756
    read_handle = tmp.value<EapQtPluginHandle> ();
hgs
parents:
diff changeset
   757
    QVERIFY(handle_peap == read_handle);
hgs
parents:
diff changeset
   758
hgs
parents:
diff changeset
   759
    // *** PEAP
hgs
parents:
diff changeset
   760
    read_config.clear();
hgs
parents:
diff changeset
   761
hgs
parents:
diff changeset
   762
    ok = mEapConfigIf->readConfiguration(handle_undef, handle_peap, read_config);
hgs
parents:
diff changeset
   763
    QVERIFY(ok);
hgs
parents:
diff changeset
   764
hgs
parents:
diff changeset
   765
    // check only the valid PEAP parameters
hgs
parents:
diff changeset
   766
    QVERIFY(peap_config.value(EapQtConfig::UsernameAutomatic) == read_config.value(EapQtConfig::UsernameAutomatic));
hgs
parents:
diff changeset
   767
    QVERIFY(peap_config.value(EapQtConfig::Username) == read_config.value(EapQtConfig::Username));
hgs
parents:
diff changeset
   768
    QVERIFY(peap_config.value(EapQtConfig::RealmAutomatic) == read_config.value(EapQtConfig::RealmAutomatic));
hgs
parents:
diff changeset
   769
    QVERIFY(peap_config.value(EapQtConfig::Realm) == read_config.value(EapQtConfig::Realm));
hgs
parents:
diff changeset
   770
    QVERIFY(peap_config.value(EapQtConfig::VerifyServerRealm) == read_config.value(EapQtConfig::VerifyServerRealm));
hgs
parents:
diff changeset
   771
    QVERIFY(peap_config.value(EapQtConfig::SessionValidityTime) == read_config.value(EapQtConfig::SessionValidityTime));
hgs
parents:
diff changeset
   772
    QVERIFY(peap_config.value(EapQtConfig::PeapVersion0Allowed) == read_config.value(EapQtConfig::PeapVersion0Allowed));
hgs
parents:
diff changeset
   773
    QVERIFY(peap_config.value(EapQtConfig::PeapVersion1Allowed) == read_config.value(EapQtConfig::PeapVersion1Allowed));
hgs
parents:
diff changeset
   774
    QVERIFY(peap_config.value(EapQtConfig::PeapVersion2Allowed) == read_config.value(EapQtConfig::PeapVersion2Allowed));
hgs
parents:
diff changeset
   775
    QVERIFY(peap_config.value(EapQtConfig::UseIdentityPrivacy) == read_config.value(EapQtConfig::UseIdentityPrivacy));
hgs
parents:
diff changeset
   776
    QVERIFY(peap_config.value(EapQtConfig::AuthorityCertificateAutomatic) == read_config.value(EapQtConfig::AuthorityCertificateAutomatic));
hgs
parents:
diff changeset
   777
    QVERIFY(peap_config.value(EapQtConfig::ClientAuthenticationRequired) == read_config.value(EapQtConfig::ClientAuthenticationRequired));
hgs
parents:
diff changeset
   778
    QVERIFY(peap_config.value(EapQtConfig::OuterType) == QVariant::Invalid);
hgs
parents:
diff changeset
   779
hgs
parents:
diff changeset
   780
    // ciphers
hgs
parents:
diff changeset
   781
    QList<QVariant> varListWrite = peap_config.value(EapQtConfig::CipherSuites).toList();
hgs
parents:
diff changeset
   782
    QList<QVariant> varListRead = read_config.value(EapQtConfig::CipherSuites).toList();
hgs
parents:
diff changeset
   783
hgs
parents:
diff changeset
   784
    QVERIFY(varListRead.count() == varListWrite.count());
hgs
parents:
diff changeset
   785
hgs
parents:
diff changeset
   786
    for (i = 0; i < peap_ciphers.count(); i++) {
hgs
parents:
diff changeset
   787
        QVERIFY(varListRead.contains(varListWrite[i]) == true);
hgs
parents:
diff changeset
   788
    }
hgs
parents:
diff changeset
   789
hgs
parents:
diff changeset
   790
    //  ca cert
hgs
parents:
diff changeset
   791
    varListWrite = peap_config.value(EapQtConfig::AuthorityCertificate).toList();
hgs
parents:
diff changeset
   792
    varListRead = read_config.value(EapQtConfig::AuthorityCertificate).toList();
hgs
parents:
diff changeset
   793
hgs
parents:
diff changeset
   794
    QVERIFY(varListRead.count() == varListWrite.count() == 1);
hgs
parents:
diff changeset
   795
hgs
parents:
diff changeset
   796
    QVERIFY(peap_ca_cert.value(EapQtCertificateInfo::SubjectName) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SubjectName));
hgs
parents:
diff changeset
   797
    QVERIFY(peap_ca_cert.value(EapQtCertificateInfo::SerialNumber) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SerialNumber));
hgs
parents:
diff changeset
   798
    QVERIFY(peap_ca_cert.value(EapQtCertificateInfo::SubjectKeyId) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SubjectKeyId));
hgs
parents:
diff changeset
   799
    QVERIFY(peap_ca_cert.value(EapQtCertificateInfo::ThumbPrint) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::ThumbPrint));
hgs
parents:
diff changeset
   800
    // label is not stored, hence invalid in read
hgs
parents:
diff changeset
   801
    QVERIFY(QVariant::Invalid == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::CertificateLabel));
hgs
parents:
diff changeset
   802
hgs
parents:
diff changeset
   803
    //  user cert
hgs
parents:
diff changeset
   804
    varListWrite = peap_config.value(EapQtConfig::UserCertificate).toList();
hgs
parents:
diff changeset
   805
    varListRead = read_config.value(EapQtConfig::UserCertificate).toList();
hgs
parents:
diff changeset
   806
hgs
parents:
diff changeset
   807
    QVERIFY(varListRead.count() == varListWrite.count() == 1);
hgs
parents:
diff changeset
   808
hgs
parents:
diff changeset
   809
    QVERIFY(peap_user_cert.value(EapQtCertificateInfo::SubjectName) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SubjectName));
hgs
parents:
diff changeset
   810
    QVERIFY(peap_user_cert.value(EapQtCertificateInfo::SerialNumber) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SerialNumber));
hgs
parents:
diff changeset
   811
    QVERIFY(peap_user_cert.value(EapQtCertificateInfo::SubjectKeyId) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SubjectKeyId));
hgs
parents:
diff changeset
   812
    QVERIFY(peap_user_cert.value(EapQtCertificateInfo::ThumbPrint) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::ThumbPrint));
hgs
parents:
diff changeset
   813
    // label is not stored, hence invalid in read
hgs
parents:
diff changeset
   814
    QVERIFY(QVariant::Invalid == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::CertificateLabel));
hgs
parents:
diff changeset
   815
hgs
parents:
diff changeset
   816
    // inner types
hgs
parents:
diff changeset
   817
    varListWrite = peap_config.value(EapQtConfig::InnerType).toList();
hgs
parents:
diff changeset
   818
    varListRead = read_config.value(EapQtConfig::InnerType).toList();
hgs
parents:
diff changeset
   819
    QVERIFY(varListRead.count() == varListWrite.count() == 2);
hgs
parents:
diff changeset
   820
hgs
parents:
diff changeset
   821
    QList<EapQtPluginHandle> read_handle_list;
hgs
parents:
diff changeset
   822
    read_handle_list.append(varListRead[0].value<EapQtPluginHandle> ());
hgs
parents:
diff changeset
   823
    read_handle_list.append(varListRead[1].value<EapQtPluginHandle> ());
hgs
parents:
diff changeset
   824
hgs
parents:
diff changeset
   825
    QVERIFY(read_handle_list.contains(handle_mschap) && read_handle_list.contains(handle_gtc));
hgs
parents:
diff changeset
   826
}
hgs
parents:
diff changeset
   827
hgs
parents:
diff changeset
   828
void TestQtConfigUtils::testSaveConfigurationEapTtls()
hgs
parents:
diff changeset
   829
{
hgs
parents:
diff changeset
   830
    // EAP-TTLS/MSCHAPv2
hgs
parents:
diff changeset
   831
}
hgs
parents:
diff changeset
   832
#endif
hgs
parents:
diff changeset
   833
hgs
parents:
diff changeset
   834
void TestQtConfigUtils::testUiInstance()
hgs
parents:
diff changeset
   835
{
hgs
parents:
diff changeset
   836
#ifdef INCLUDE_UI_CASES
hgs
parents:
diff changeset
   837
hgs
parents:
diff changeset
   838
    QVERIFY(mEapConfigIf->setConfigurationReference(global_wlanIap) == true);
hgs
parents:
diff changeset
   839
hgs
parents:
diff changeset
   840
    // make sure there is a stored state in mEapConfigIf (EAP IF plugins loaded)
hgs
parents:
diff changeset
   841
    mEapConfigIf->isSupportedInnerType(EapQtPluginHandle::PluginPeap,
hgs
parents:
diff changeset
   842
            EapQtPluginHandle::PluginPeap) == false;
hgs
parents:
diff changeset
   843
    mEapConfigIf->isSupportedInnerType(EapQtPluginHandle::PluginPeap,
hgs
parents:
diff changeset
   844
            EapQtPluginHandle::PluginEapGtc) == true;
hgs
parents:
diff changeset
   845
hgs
parents:
diff changeset
   846
    QScopedPointer<CpBaseSettingView> ui(NULL);
hgs
parents:
diff changeset
   847
hgs
parents:
diff changeset
   848
    qDebug("creating AKA UI");
hgs
parents:
diff changeset
   849
    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginUndefined, EapQtPluginHandle::PluginEapAka));
hgs
parents:
diff changeset
   850
    qDebug("AKA UI created");
hgs
parents:
diff changeset
   851
    QVERIFY(!ui.isNull());
hgs
parents:
diff changeset
   852
hgs
parents:
diff changeset
   853
    qDebug("creating SIM UI");
hgs
parents:
diff changeset
   854
    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginUndefined, EapQtPluginHandle::PluginEapSim));
hgs
parents:
diff changeset
   855
    qDebug("SIM UI created");
hgs
parents:
diff changeset
   856
    QVERIFY(!ui.isNull());
hgs
parents:
diff changeset
   857
hgs
parents:
diff changeset
   858
    qDebug("creating LEAP UI");
hgs
parents:
diff changeset
   859
    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginUndefined, EapQtPluginHandle::PluginLeap));
hgs
parents:
diff changeset
   860
    qDebug("LEAP UI created");
hgs
parents:
diff changeset
   861
    QVERIFY(!ui.isNull());
hgs
parents:
diff changeset
   862
hgs
parents:
diff changeset
   863
    qDebug("creating 1");
hgs
parents:
diff changeset
   864
    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginUndefined, EapQtPluginHandle::PluginUndefined));
hgs
parents:
diff changeset
   865
    qDebug("created 1");
hgs
parents:
diff changeset
   866
    QVERIFY(ui.isNull());
hgs
parents:
diff changeset
   867
hgs
parents:
diff changeset
   868
    qDebug("creating 2");
hgs
parents:
diff changeset
   869
    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginEapAka, EapQtPluginHandle::PluginEapSim));
hgs
parents:
diff changeset
   870
    qDebug("created 2");
hgs
parents:
diff changeset
   871
    QVERIFY(ui.isNull());
hgs
parents:
diff changeset
   872
hgs
parents:
diff changeset
   873
    qDebug("creating 3");
hgs
parents:
diff changeset
   874
    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginEapSim, EapQtPluginHandle::PluginEapAka));
hgs
parents:
diff changeset
   875
    qDebug("created 3");
hgs
parents:
diff changeset
   876
    QVERIFY(ui.isNull());
hgs
parents:
diff changeset
   877
hgs
parents:
diff changeset
   878
    qDebug("creating 4");
hgs
parents:
diff changeset
   879
    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginEapAka, EapQtPluginHandle::PluginEapAka));
hgs
parents:
diff changeset
   880
    qDebug("created 4");
hgs
parents:
diff changeset
   881
    QVERIFY(ui.isNull());
hgs
parents:
diff changeset
   882
hgs
parents:
diff changeset
   883
#else
hgs
parents:
diff changeset
   884
    QWARN("UI cases not included");
hgs
parents:
diff changeset
   885
#endif
hgs
parents:
diff changeset
   886
}
hgs
parents:
diff changeset
   887
hgs
parents:
diff changeset
   888
// Create main function using QTest marco.
hgs
parents:
diff changeset
   889
QTEST_MAIN( TestQtConfigUtils)