securitysettings/qtconfigutils/tsrc/src/testqtconfigutils.cpp
changeset 32 9eefbbac105b
parent 28 0e43dd645395
--- a/securitysettings/qtconfigutils/tsrc/src/testqtconfigutils.cpp	Thu May 27 13:25:51 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,889 +0,0 @@
-/*
- * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
- * All rights reserved.
- * This component and the accompanying materials are made available
- * under the terms of "Eclipse Public License v1.0"
- * which accompanies this distribution, and is available
- * at the URL "http://www.eclipse.org/legal/epl-v10.html".
- *
- * Initial Contributors:
- * Nokia Corporation - initial contribution.
- *
- * Contributors:
- *
- * Description:
- * This is the source file for testing EAP Configuration Interface.
- */
-
-/*
- * %version: 8 %
- */
-
-#ifdef INCLUDE_UI_CASES
-#warning UI cases included, cases cannot be run in Emulator textshell.
-#endif
-
-// System includes
-#include <QtCore>
-#include <QTest>
-#include <cmmanager_shim.h>
-#include <cmmanagerdefines_shim.h>
-#include <cmconnectionmethod_shim.h>
-#include <eapqtconfiginterface.h>
-#include <eapqtplugininfo.h>
-#include <eapqtvalidator.h>
-#include <eapqtpluginhandle.h>
-#include <eapqtexpandedeaptype.h>
-#include <eapqtcertificateinfo.h>
-
-#ifdef INCLUDE_UI_CASES
-#include <cpbasesettingview.h>
-#endif
-
-// User includes
-#include "testqtconfigutils.h"
-
-// External function prototypes
-
-// Local constants
-static const int global_pluginOrder = 10;
-static const char global_wpsType[] = { 0xfe, 0x00, 0x37, 0x2a, 0x00, 0x00, 0x00, 0x01 };
-static const int global_invalidIap = 9999;
-static int global_undefinedIap = EapQtConfigInterface::IapIdUndefined;
-static int global_wlanIap = -2;
-
-// ======== LOCAL FUNCTIONS ========
-
-// ======== MEMBER FUNCTIONS ========
-
-// ---------------------------------------------------------
-// FRAMEWORK FUNCTIONS
-// ---------------------------------------------------------
-
-/**
- * This function will be called before the first test function is executed.
- */
-void TestQtConfigUtils::initTestCase()
-{
-    mEapConfigIf = new EapQtConfigInterface(EapQtConfigInterface::EapBearerTypeWlan,
-        global_undefinedIap);
-
-    mCmm = new CmManagerShim();
-    mCmmShim = mCmm->createConnectionMethod(CMManagerShim::BearerTypeWlan);
-    mCmmShim->setStringAttribute(CMManagerShim::CmName, QString("EAP unit test"));
-    mCmmShim->update();
-    global_wlanIap = mCmmShim->getIntAttribute(CMManagerShim::CmIapId);
-}
-
-/**
- * This function will be called after the last test function was executed.
- */
-void TestQtConfigUtils::cleanupTestCase()
-{
-    qDebug("calling mEapConfigIf->setConfigurationReference(global_wlanIap)");
-    mEapConfigIf->setConfigurationReference(global_wlanIap);
-
-    qDebug("calling mEapConfigIf->deleteConfiguration()");
-    mEapConfigIf->deleteConfiguration();
-
-    qDebug("calling delete mEapConfigIf");
-    delete mEapConfigIf;
-
-    qDebug("calling mCmmShim->deleteConnectionMethod()");
-
-    int error;
-    try {
-        mCmmShim->deleteConnectionMethod();
-    } catch (const std::exception &ex) {
-        error = qt_symbian_exception2Error(ex);
-        qDebug("mCmmShim->deleteConnectionMethod() failed with error: %d", error);
-    }
-
-    qDebug("calling delete mCmmShim");
-    try {
-        delete mCmmShim;
-    } catch (const std::exception &ex) {
-        error = qt_symbian_exception2Error(ex);
-        qDebug("delete mCmmShim failed with error: ", error);
-    }
-
-    delete mCmm;
-}
-
-/**
- * This function will be called before each test function is executed.
- */
-void TestQtConfigUtils::init()
-{
-
-}
-
-/**
- * This function will be called after each test function is executed.
- */
-void TestQtConfigUtils::cleanup()
-{
-
-}
-
-// ---------------------------------------------------------
-// TEST CASES
-// ---------------------------------------------------------
-
-// ---------------------------------------------------------
-// test EapQtPluginInfo
-// ---------------------------------------------------------
-#if 1
-void TestQtConfigUtils::testEapQtPluginInfoPluginUndefined()
-{
-    QString pluginName("PluginUndefined");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginUndefined, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginUndefined);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginEapAka()
-{
-    QString pluginName("PluginEapAka");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginEapAka, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapAka);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginEapFast()
-{
-    QString pluginName("PluginEapFast");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginEapFast, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapFast);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginEapGtc()
-{
-    QString pluginName("PluginEapGtc");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginEapGtc, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapGtc);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginLeap()
-{
-    QString pluginName("PluginLeap");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginLeap, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginLeap);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginEapMschapv2()
-{
-    QString pluginName("PluginEapMschapv2");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginEapMschapv2, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapMschapv2);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginPeap()
-{
-    QString pluginName("PluginPeap");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginPeap, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginPeap);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginEapSim()
-{
-    QString pluginName("PluginEapSim");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginEapSim, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapSim);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginEapTls()
-{
-    QString pluginName("PluginEapTls");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginEapTls, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapTls);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginEapTtls()
-{
-    QString pluginName("PluginEapTtls");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginEapTtls, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapTtls);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginPap()
-{
-    QString pluginName("PluginPap");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginPap, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginPap);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoPluginPlainMschapv2()
-{
-    QString pluginName("PluginPlainMschapv2");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginPlainMschapv2, pluginName, global_pluginOrder);
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginPlainMschapv2);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoAssignment()
-{
-    QString pluginName1("PluginPlainMschapv2");
-    QString pluginName2("PluginEapTtls");
-
-    EapQtPluginInfo info1(EapQtPluginHandle::PluginPlainMschapv2, pluginName1, global_pluginOrder);
-    EapQtPluginInfo info2(EapQtPluginHandle::PluginEapTtls, pluginName2, global_pluginOrder + 1);
-
-    info1 = info2;
-
-    QVERIFY(info1.pluginHandle() == info2.pluginHandle());
-    QVERIFY(info1.localizationId() == info2.localizationId());
-    QVERIFY(info1.orderNumber() == info2.orderNumber());
-}
-
-void TestQtConfigUtils::testEapQtPluginInfoSelfAssignment()
-{
-    QString pluginName("PluginEapSim");
-    EapQtPluginInfo info(EapQtPluginHandle::PluginEapSim, pluginName, global_pluginOrder);
-    info = info;
-
-    QVERIFY(info.pluginHandle() == EapQtPluginHandle::PluginEapSim);
-    QVERIFY(info.localizationId() == pluginName);
-    QVERIFY(info.orderNumber() == global_pluginOrder);
-}
-
-// ---------------------------------------------------------
-// test EapQtPluginHandle
-// ---------------------------------------------------------
-
-void TestQtConfigUtils::testEapQtPluginHandleDefaultConstructor()
-{
-    EapQtPluginHandle handle;
-    QVERIFY(handle == EapQtPluginHandle::PluginUndefined);
-}
-
-void TestQtConfigUtils::testEapQtPluginHandlePluginLastConstructor()
-{
-    EapQtPluginHandle handle(EapQtPluginHandle::PluginLast);
-    QVERIFY(handle.pluginId() == EapQtPluginHandle::PluginUndefined);
-}
-
-void TestQtConfigUtils::testEapQtPluginHandleEapTypeConstructor()
-{
-    EapQtPluginHandle handle(EapQtExpandedEapType::TypeEapAka);
-    QVERIFY(handle.pluginId() == EapQtPluginHandle::PluginEapAka);
-}
-
-void TestQtConfigUtils::testEapQtPluginHandleEapTypeUidConstructor()
-{
-    int uid(0x12345678);
-    EapQtPluginHandle handle(EapQtExpandedEapType::TypePeap, uid);
-    QVERIFY(handle.pluginId() == EapQtPluginHandle::PluginPeap);
-    QVERIFY(handle.protocolImplementationUid() == uid);
-}
-
-void TestQtConfigUtils::testEapQtPluginHandleSelfAssignment()
-{
-    EapQtPluginHandle handle(EapQtPluginHandle::PluginEapTls);
-    handle = handle;
-    QVERIFY(handle.pluginId() == EapQtPluginHandle::PluginEapTls);
-}
-
-// ---------------------------------------------------------
-// test EapQtExpandedEapType
-// ---------------------------------------------------------
-
-void TestQtConfigUtils::testEapQtExpandedEapTypeDefaultConstructor()
-{
-    EapQtExpandedEapType eapType;
-    QVERIFY(eapType.type() == EapQtExpandedEapType::TypeUndefined);
-    QVERIFY(eapType.eapExpandedData().count() == 0);
-}
-
-void TestQtConfigUtils::testEapQtExpandedEapTypeLastConstructor()
-{
-    EapQtExpandedEapType eapType(EapQtExpandedEapType::TypeLast);
-    QVERIFY(eapType.type() == EapQtExpandedEapType::TypeUndefined);
-}
-
-void TestQtConfigUtils::testEapQtExpandedEapTypeConstructorWpsType()
-{
-    EapQtExpandedEapType eapType(EapQtExpandedEapType::TypeProtectedSetup);
-    QVERIFY(eapType.type() == EapQtExpandedEapType::TypeProtectedSetup);
-    QVERIFY(eapType.eapExpandedData() == QByteArray(global_wpsType, sizeof(global_wpsType)));
-}
-
-void TestQtConfigUtils::testEapQtExpandedEapTypeConstructorWpsByteArray()
-{
-    QByteArray wpsArray(global_wpsType, sizeof(global_wpsType));
-    EapQtExpandedEapType eapType(wpsArray);
-
-    QVERIFY(eapType.type() == EapQtExpandedEapType::TypeProtectedSetup);
-    QVERIFY(eapType.eapExpandedData() == wpsArray);
-}
-
-void TestQtConfigUtils::testEapQtExpandedEapTypeAssignment()
-{
-    EapQtExpandedEapType eapType1;
-    EapQtExpandedEapType eapType2(EapQtExpandedEapType::TypePlainMschapv2);
-    eapType1 = eapType2;
-
-    QVERIFY(eapType1.type() == eapType2.type());
-    QVERIFY(eapType1.eapExpandedData() == eapType2.eapExpandedData());
-    QVERIFY(eapType1 == eapType2);
-}
-
-void TestQtConfigUtils::testEapQtExpandedEapTypeSelfAssignment()
-{
-    EapQtExpandedEapType eapType(EapQtExpandedEapType::TypeEapTtls);
-    eapType = eapType;
-
-    QVERIFY(eapType == EapQtExpandedEapType::TypeEapTtls);
-    // to test != operator as well
-    QVERIFY(eapType != EapQtExpandedEapType::TypeUndefined);
-}
-
-// ---------------------------------------------------------
-// test EapQtConfigInterface
-// ---------------------------------------------------------
-
-void TestQtConfigUtils::testDefaultConstructor()
-{
-    EapQtConfigInterface localEapConfigIf;
-
-    QScopedPointer<EapQtValidator> val(localEapConfigIf.validatorEap(
-        EapQtExpandedEapType::TypeEapAka, EapQtConfig::Username));
-
-    EapQtValidator::Status status = val->validate(QString("test"));
-    QVERIFY(status == EapQtValidator::StatusOk);
-
-    status = val->validate(QString());
-    QVERIFY(status == EapQtValidator::StatusOk);
-
-    status = val->validate(QByteArray());
-    QVERIFY(status == EapQtValidator::StatusInvalid);
-
-    status = val->validate(QString("pwd@realm"));
-    QVERIFY(status == EapQtValidator::StatusInvalidCharacters);
-
-    status = val->validate(QString("@"));
-    QVERIFY(status == EapQtValidator::StatusInvalidCharacters);
-
-    status = val->validate(QString("X"));
-    QVERIFY(status == EapQtValidator::StatusOk);
-
-    status = val->validate(QString("uSerNäme"));
-    QVERIFY(status == EapQtValidator::StatusOk);
-
-    status = val->validate(QString("as0d7fg9µ8a&&¤%GSB*^ü~||><:M;_-§][6{]{[]£"));
-    QVERIFY(status == EapQtValidator::StatusOk);
-
-    QString veryLong(254, QChar('Z'));
-
-    status = val->validate(veryLong);
-    QVERIFY(status == EapQtValidator::StatusOk);
-
-    veryLong.append("}");
-
-    status = val->validate(veryLong);
-    QVERIFY(status == EapQtValidator::StatusOk);
-
-    veryLong.append("K");
-
-    status = val->validate(veryLong);
-    QVERIFY(status == EapQtValidator::StatusTooLong);
-
-    // this one should throw since not supported for validator instance
-    bool pass(false);
-    try {
-        localEapConfigIf.setConfigurationReference(global_wlanIap);
-    } catch (const std::exception&) {
-        pass = true;
-    }
-    QVERIFY(pass == true);
-}
-
-void TestQtConfigUtils::testParallelInstances()
-{
-    EapQtConfigInterface localEapConfigIf(EapQtConfigInterface::EapBearerTypeWlan,
-        global_undefinedIap);
-    QVERIFY(localEapConfigIf.isSupportedOuterType(EapQtPluginHandle::PluginEapAka) == true);
-    QVERIFY(mEapConfigIf->isSupportedOuterType(EapQtPluginHandle::PluginPeap) == true);
-}
-
-void TestQtConfigUtils::testConstructorThrowing()
-{
-    // this one should throw since IAP id is invalid
-    bool pass(false);
-    try {
-        EapQtConfigInterface localEapConfigIf(EapQtConfigInterface::EapBearerTypeWlan,
-            global_invalidIap);
-    } catch (const std::exception&) {
-        pass = true;
-    }
-    QVERIFY(pass == true);
-}
-
-void TestQtConfigUtils::testSetConfigurationReferenceUndefinedAgain()
-{
-    // set the same again (global_undefinedIap)
-    QVERIFY(mEapConfigIf->setConfigurationReference(global_undefinedIap) == true);
-}
-
-void TestQtConfigUtils::testSetConfigurationReferenceFailure()
-{
-    // fails since referred IAP does not exist
-    QVERIFY(mEapConfigIf->setConfigurationReference(global_invalidIap) == false);
-    // change back to correct
-    QVERIFY(mEapConfigIf->setConfigurationReference(global_undefinedIap) == true);
-}
-
-void TestQtConfigUtils::testCertificateAuthorityCertificates()
-{
-    mCaCertInfo = mEapConfigIf->certificateAuthorityCertificates();
-    QVERIFY(mCaCertInfo.count() > 0);
-}
-
-void TestQtConfigUtils::testUserCertificates()
-{
-    mUserCertInfo = mEapConfigIf->userCertificates();
-    QEXPECT_FAIL("", "No user certificates installed?", Continue);
-    QVERIFY(mUserCertInfo.count() > 0);
-}
-
-void TestQtConfigUtils::testSupportedOuterTypes()
-{
-    QList<EapQtPluginInfo> plugins;
-    plugins = mEapConfigIf->supportedOuterTypes();
-
-    QVERIFY(plugins.count() > 0);
-
-    QList<EapQtPluginHandle> handles;
-    for (int i = 0; i < plugins.count(); i++) {
-        handles.append(plugins[i].pluginHandle());
-    }
-
-    // check that handles contain outer types
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapAka) == true);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginPeap) == true);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapSim) == true);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapTls) == true);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapTtls) == true);
-
-    // and no inner types
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapGtc) == false);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapMschapv2) == false);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginPap) == false);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginPlainMschapv2) == false);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginUndefined) == false);
-}
-
-void TestQtConfigUtils::testSupportedInnerTypesPeap()
-{
-    QList<EapQtPluginInfo> plugins;
-    plugins = mEapConfigIf->supportedInnerTypes(EapQtPluginHandle::PluginPeap);
-
-    QVERIFY(plugins.count() > 0);
-
-    QList<EapQtPluginHandle> handles;
-    for (int i = 0; i < plugins.count(); i++) {
-        handles.append(plugins[i].pluginHandle());
-    }
-
-    // check that handles contain correct types
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapAka) == true);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapGtc) == true);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapMschapv2) == true);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapSim) == true);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapTls) == true);
-
-    // and other types
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginUndefined) == false);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginPeap) == false);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginEapTtls) == false);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginPap) == false);
-    QVERIFY(handles.contains(EapQtPluginHandle::PluginPlainMschapv2) == false);
-}
-
-void TestQtConfigUtils::testIsSupportedOuterTypePeap()
-{
-    QVERIFY(mEapConfigIf->isSupportedOuterType(EapQtPluginHandle::PluginPeap) == true);
-}
-
-void TestQtConfigUtils::testIsSupportedInnerTypePeap()
-{
-    QVERIFY(mEapConfigIf->isSupportedInnerType(EapQtPluginHandle::PluginPeap,
-            EapQtPluginHandle::PluginPeap) == false);
-    QVERIFY(mEapConfigIf->isSupportedInnerType(EapQtPluginHandle::PluginPeap,
-            EapQtPluginHandle::PluginEapGtc) == true);
-}
-
-void TestQtConfigUtils::testSetConfigurationReferenceValidWlanIap()
-{
-    QVERIFY(mEapConfigIf->setConfigurationReference(global_wlanIap) == true);
-}
-
-void TestQtConfigUtils::testTestAgainForValidWlanIap()
-{
-    testCertificateAuthorityCertificates();
-    testUserCertificates();
-    testSupportedOuterTypes();
-    testSupportedInnerTypesPeap();
-    testIsSupportedOuterTypePeap();
-    testIsSupportedInnerTypePeap();
-}
-
-void TestQtConfigUtils::testSelectedOuterTypes()
-{
-    QList<EapQtPluginHandle> outers;
-    outers = mEapConfigIf->selectedOuterTypes();
-
-    QVERIFY(outers.count() == 0);
-
-    outers.clear();
-    outers.append(EapQtPluginHandle::PluginPeap);
-    outers.append(EapQtPluginHandle::PluginEapTls);
-    // this must not be set when reading again
-    outers.append(EapQtPluginHandle::PluginEapGtc);
-
-    QVERIFY(mEapConfigIf->setSelectedOuterTypes(outers) == true);
-
-    outers.clear();
-    outers = mEapConfigIf->selectedOuterTypes();
-
-    QVERIFY(outers.count() == 2);
-
-    QVERIFY(outers.contains(EapQtPluginHandle::PluginPeap) == true);
-    QVERIFY(outers.contains(EapQtPluginHandle::PluginEapTls) == true);
-    QVERIFY(outers.contains(EapQtPluginHandle::PluginEapGtc) == false);
-}
-
-void TestQtConfigUtils::testIsSupportedTypeNewInstance()
-{
-    EapQtConfigInterface localEapConfigIf1(EapQtConfigInterface::EapBearerTypeWlan, global_wlanIap);
-    QVERIFY(localEapConfigIf1.isSupportedOuterType(EapQtPluginHandle::PluginEapAka) == true);
-    QVERIFY(localEapConfigIf1.isSupportedInnerType(EapQtPluginHandle::PluginEapTtls, EapQtPluginHandle::PluginEapAka) == true);
-
-    EapQtConfigInterface localEapConfigIf2(EapQtConfigInterface::EapBearerTypeWlan, global_wlanIap);
-    QVERIFY(localEapConfigIf2.isSupportedInnerType(EapQtPluginHandle::PluginPeap, EapQtPluginHandle::PluginEapMschapv2) == true);
-    QVERIFY(localEapConfigIf2.isSupportedOuterType(EapQtPluginHandle::PluginEapMschapv2) == false);
-}
-
-void TestQtConfigUtils::testSaveConfigurationFull()
-{
-    int i = 0;
-
-    QString peap_user("testuser");
-    QString peap_pwd("testpwd");
-    QString peap_realm("testrealm.org");
-    QString peap_pacref("testpacgroupreference");
-    uint peap_validity_time(15);
-
-    QList<uint> peap_ciphers;
-    peap_ciphers.append(0x0004);
-    peap_ciphers.append(0x002F);
-    peap_ciphers.append(0x0033);
-    peap_ciphers.append(0x0034);
-
-    QString peap_subject("Test PEAP subject");
-    QString peap_issuer("Test PEAP subject");
-    QString peap_serialnum("Test PEAP subject");
-    QString peap_label("Test PEAP label");
-    QString peap_thumbprint("Test PEAP subject");
-    QByteArray peap_subjectkey =
-        mCaCertInfo[0].value(EapQtCertificateInfo::SubjectKeyId).toByteArray();
-
-    EapQtCertificateInfo peap_ca_cert;
-    peap_ca_cert.setValue(EapQtCertificateInfo::SubjectName, peap_subject);
-    peap_ca_cert.setValue(EapQtCertificateInfo::IssuerName, peap_issuer);
-    peap_ca_cert.setValue(EapQtCertificateInfo::SerialNumber, peap_serialnum);
-    peap_ca_cert.setValue(EapQtCertificateInfo::SubjectKeyId, peap_subjectkey);
-    peap_ca_cert.setValue(EapQtCertificateInfo::ThumbPrint, peap_thumbprint);
-    peap_ca_cert.setValue(EapQtCertificateInfo::CertificateLabel, peap_label);
-
-    QString peap_subject_user("Test PEAP user subject");
-    QString peap_issuer_user("Test PEAP user subject");
-    QString peap_serialnum_user("Test PEAP user subject");
-    QString peap_label_user("Test PEAP user label");
-    QString peap_thumbprint_user("Test PEAP user subject");
-    QByteArray peap_subjectkey_user =
-        mCaCertInfo[1].value(EapQtCertificateInfo::SubjectKeyId).toByteArray();
-
-    EapQtCertificateInfo peap_user_cert;
-    peap_user_cert.setValue(EapQtCertificateInfo::SubjectName, peap_subject_user);
-    peap_user_cert.setValue(EapQtCertificateInfo::IssuerName, peap_issuer_user);
-    peap_user_cert.setValue(EapQtCertificateInfo::SerialNumber, peap_serialnum_user);
-    peap_user_cert.setValue(EapQtCertificateInfo::SubjectKeyId, peap_subjectkey_user);
-    peap_user_cert.setValue(EapQtCertificateInfo::ThumbPrint, peap_thumbprint_user);
-    peap_user_cert.setValue(EapQtCertificateInfo::CertificateLabel, peap_label_user);
-
-    EapQtPluginHandle handle_peap(EapQtPluginHandle::PluginPeap);
-    EapQtPluginHandle handle_gtc(EapQtPluginHandle::PluginEapGtc);
-    EapQtPluginHandle handle_mschap(EapQtPluginHandle::PluginEapMschapv2);
-    EapQtPluginHandle handle_undef(EapQtPluginHandle::PluginUndefined);
-
-    // **** config outer type (PEAP)
-    EapQtConfig peap_config;
-    peap_config.setValue(EapQtConfig::UsernameAutomatic, true);
-    peap_config.setValue(EapQtConfig::Username, peap_user);
-    peap_config.setValue(EapQtConfig::PasswordPrompt, true);
-    peap_config.setValue(EapQtConfig::Password, peap_pwd);
-    peap_config.setValue(EapQtConfig::PasswordStored, false);
-    peap_config.setValue(EapQtConfig::RealmAutomatic, true);
-    peap_config.setValue(EapQtConfig::Realm, peap_realm);
-    peap_config.setValue(EapQtConfig::UsePseudonyms, true);
-    peap_config.setValue(EapQtConfig::VerifyServerRealm, true);
-    peap_config.setValue(EapQtConfig::SessionValidityTime, peap_validity_time);
-    peap_config.setValue(EapQtConfig::PeapVersion0Allowed, true);
-    peap_config.setValue(EapQtConfig::PeapVersion1Allowed, true);
-    peap_config.setValue(EapQtConfig::PeapVersion2Allowed, true);
-    peap_config.setValue(EapQtConfig::ProvisioningModeAuthenticated, true);
-    peap_config.setValue(EapQtConfig::ProvisioningModeUnauthenticated, true);
-    peap_config.setValue(EapQtConfig::PACGroupReference, peap_pacref);
-    peap_config.setValue(EapQtConfig::WarnADHPNoPAC, true);
-    peap_config.setValue(EapQtConfig::WarnADHPNoMatchingPAC, true);
-    peap_config.setValue(EapQtConfig::WarnNotDefaultServer, true);
-    peap_config.setValue(EapQtConfig::UseIdentityPrivacy, true);
-    peap_config.setValue(EapQtConfig::AuthorityCertificateAutomatic, true);
-    peap_config.setValue(EapQtConfig::ClientAuthenticationRequired, true);
-
-    QList<QVariant> varList;
-    for (i = 0; i < peap_ciphers.count(); i++) {
-        varList.append(peap_ciphers[i]);
-    }
-    peap_config.setValue(EapQtConfig::CipherSuites, varList);
-    varList.clear();
-
-    varList.append(qVariantFromValue(peap_ca_cert));
-    peap_config.setValue(EapQtConfig::AuthorityCertificate, varList);
-    varList.clear();
-
-    varList.append(qVariantFromValue(peap_user_cert));
-    peap_config.setValue(EapQtConfig::UserCertificate, varList);
-    varList.clear();
-
-    // activate inner types (EAP-GTC & EAP-MSCHAPv2)
-    varList.append(qVariantFromValue(handle_gtc));
-    varList.append(qVariantFromValue(handle_mschap));
-    peap_config.setValue(EapQtConfig::InnerType, varList);
-
-    // OuterType is unset, i.e. QVariant::Invalid
-
-    bool ok(false);
-    ok = mEapConfigIf->saveConfiguration(handle_peap, peap_config);
-    QVERIFY(ok);
-
-    // *** config gtc
-    QString gtc_user("testgtcuser");
-    QString gtc_pwd("testgtcpwd");
-
-    EapQtConfig gtc_config;
-
-    gtc_config.setValue(EapQtConfig::Username, gtc_user);
-    gtc_config.setValue(EapQtConfig::PasswordPrompt, true);
-    gtc_config.setValue(EapQtConfig::Password, gtc_pwd);
-    gtc_config.setValue(EapQtConfig::PasswordStored, false);
-    gtc_config.setValue(EapQtConfig::OuterType, qVariantFromValue(handle_peap));
-
-    // InnerType is unset, i.e. QVariant::Invalid
-
-    ok = mEapConfigIf->saveConfiguration(handle_gtc, gtc_config);
-    QVERIFY(ok);
-
-    // *** config mschapv2
-    QString mschap_user("testmschapuser");
-    QString mschap_pwd("testmschappwd");
-
-    EapQtConfig mschap_config;
-    mschap_config.setValue(EapQtConfig::Username, mschap_user);
-    mschap_config.setValue(EapQtConfig::PasswordPrompt, false);
-    mschap_config.setValue(EapQtConfig::Password, mschap_pwd);
-    mschap_config.setValue(EapQtConfig::PasswordStored, false);
-    mschap_config.setValue(EapQtConfig::OuterType, qVariantFromValue(handle_peap));
-
-    // InnerType is unset, i.e. QVariant::Invalid
-
-    ok = mEapConfigIf->saveConfiguration(handle_mschap, mschap_config);
-    QVERIFY(ok);
-
-    // *****************************************
-    // read back the values to check correctness
-    // *****************************************
-
-    // *** gtc
-    EapQtPluginHandle read_handle;
-    EapQtConfig read_config;
-    ok = mEapConfigIf->readConfiguration(handle_peap, handle_gtc, read_config);
-    QVERIFY(ok);
-
-    QVERIFY(false == read_config.value(EapQtConfig::UsernameAutomatic).toBool());
-    QVERIFY(gtc_config.value(EapQtConfig::Username) == read_config.value(EapQtConfig::Username));
-    QVERIFY(gtc_config.value(EapQtConfig::PasswordPrompt) == read_config.value(EapQtConfig::PasswordPrompt));
-    QVERIFY(true == read_config.value(EapQtConfig::PasswordStored).toBool());
-
-    QVariant tmp = read_config.value(EapQtConfig::OuterType);
-    read_handle = tmp.value<EapQtPluginHandle> ();
-    QVERIFY(handle_peap == read_handle);
-
-    // *** mschap
-    read_config.clear();
-
-    ok = mEapConfigIf->readConfiguration(handle_peap, handle_mschap, read_config);
-    QVERIFY(ok);
-
-    QVERIFY(false == read_config.value(EapQtConfig::UsernameAutomatic).toBool());
-    QVERIFY(mschap_config.value(EapQtConfig::Username) == read_config.value(EapQtConfig::Username));
-    QVERIFY(mschap_config.value(EapQtConfig::PasswordPrompt) == read_config.value(EapQtConfig::PasswordPrompt));
-    QVERIFY(true == read_config.value(EapQtConfig::PasswordStored).toBool());
-
-    tmp = read_config.value(EapQtConfig::OuterType);
-    read_handle = tmp.value<EapQtPluginHandle> ();
-    QVERIFY(handle_peap == read_handle);
-
-    // *** PEAP
-    read_config.clear();
-
-    ok = mEapConfigIf->readConfiguration(handle_undef, handle_peap, read_config);
-    QVERIFY(ok);
-
-    // check only the valid PEAP parameters
-    QVERIFY(peap_config.value(EapQtConfig::UsernameAutomatic) == read_config.value(EapQtConfig::UsernameAutomatic));
-    QVERIFY(peap_config.value(EapQtConfig::Username) == read_config.value(EapQtConfig::Username));
-    QVERIFY(peap_config.value(EapQtConfig::RealmAutomatic) == read_config.value(EapQtConfig::RealmAutomatic));
-    QVERIFY(peap_config.value(EapQtConfig::Realm) == read_config.value(EapQtConfig::Realm));
-    QVERIFY(peap_config.value(EapQtConfig::VerifyServerRealm) == read_config.value(EapQtConfig::VerifyServerRealm));
-    QVERIFY(peap_config.value(EapQtConfig::SessionValidityTime) == read_config.value(EapQtConfig::SessionValidityTime));
-    QVERIFY(peap_config.value(EapQtConfig::PeapVersion0Allowed) == read_config.value(EapQtConfig::PeapVersion0Allowed));
-    QVERIFY(peap_config.value(EapQtConfig::PeapVersion1Allowed) == read_config.value(EapQtConfig::PeapVersion1Allowed));
-    QVERIFY(peap_config.value(EapQtConfig::PeapVersion2Allowed) == read_config.value(EapQtConfig::PeapVersion2Allowed));
-    QVERIFY(peap_config.value(EapQtConfig::UseIdentityPrivacy) == read_config.value(EapQtConfig::UseIdentityPrivacy));
-    QVERIFY(peap_config.value(EapQtConfig::AuthorityCertificateAutomatic) == read_config.value(EapQtConfig::AuthorityCertificateAutomatic));
-    QVERIFY(peap_config.value(EapQtConfig::ClientAuthenticationRequired) == read_config.value(EapQtConfig::ClientAuthenticationRequired));
-    QVERIFY(peap_config.value(EapQtConfig::OuterType) == QVariant::Invalid);
-
-    // ciphers
-    QList<QVariant> varListWrite = peap_config.value(EapQtConfig::CipherSuites).toList();
-    QList<QVariant> varListRead = read_config.value(EapQtConfig::CipherSuites).toList();
-
-    QVERIFY(varListRead.count() == varListWrite.count());
-
-    for (i = 0; i < peap_ciphers.count(); i++) {
-        QVERIFY(varListRead.contains(varListWrite[i]) == true);
-    }
-
-    //  ca cert
-    varListWrite = peap_config.value(EapQtConfig::AuthorityCertificate).toList();
-    varListRead = read_config.value(EapQtConfig::AuthorityCertificate).toList();
-
-    QVERIFY(varListRead.count() == varListWrite.count() == 1);
-
-    QVERIFY(peap_ca_cert.value(EapQtCertificateInfo::SubjectName) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SubjectName));
-    QVERIFY(peap_ca_cert.value(EapQtCertificateInfo::SerialNumber) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SerialNumber));
-    QVERIFY(peap_ca_cert.value(EapQtCertificateInfo::SubjectKeyId) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SubjectKeyId));
-    QVERIFY(peap_ca_cert.value(EapQtCertificateInfo::ThumbPrint) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::ThumbPrint));
-    // label is not stored, hence invalid in read
-    QVERIFY(QVariant::Invalid == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::CertificateLabel));
-
-    //  user cert
-    varListWrite = peap_config.value(EapQtConfig::UserCertificate).toList();
-    varListRead = read_config.value(EapQtConfig::UserCertificate).toList();
-
-    QVERIFY(varListRead.count() == varListWrite.count() == 1);
-
-    QVERIFY(peap_user_cert.value(EapQtCertificateInfo::SubjectName) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SubjectName));
-    QVERIFY(peap_user_cert.value(EapQtCertificateInfo::SerialNumber) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SerialNumber));
-    QVERIFY(peap_user_cert.value(EapQtCertificateInfo::SubjectKeyId) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::SubjectKeyId));
-    QVERIFY(peap_user_cert.value(EapQtCertificateInfo::ThumbPrint) == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::ThumbPrint));
-    // label is not stored, hence invalid in read
-    QVERIFY(QVariant::Invalid == (varListRead[0].value<EapQtCertificateInfo>()).value(EapQtCertificateInfo::CertificateLabel));
-
-    // inner types
-    varListWrite = peap_config.value(EapQtConfig::InnerType).toList();
-    varListRead = read_config.value(EapQtConfig::InnerType).toList();
-    QVERIFY(varListRead.count() == varListWrite.count() == 2);
-
-    QList<EapQtPluginHandle> read_handle_list;
-    read_handle_list.append(varListRead[0].value<EapQtPluginHandle> ());
-    read_handle_list.append(varListRead[1].value<EapQtPluginHandle> ());
-
-    QVERIFY(read_handle_list.contains(handle_mschap) && read_handle_list.contains(handle_gtc));
-}
-
-void TestQtConfigUtils::testSaveConfigurationEapTtls()
-{
-    // EAP-TTLS/MSCHAPv2
-}
-#endif
-
-void TestQtConfigUtils::testUiInstance()
-{
-#ifdef INCLUDE_UI_CASES
-
-    QVERIFY(mEapConfigIf->setConfigurationReference(global_wlanIap) == true);
-
-    // make sure there is a stored state in mEapConfigIf (EAP IF plugins loaded)
-    mEapConfigIf->isSupportedInnerType(EapQtPluginHandle::PluginPeap,
-            EapQtPluginHandle::PluginPeap) == false;
-    mEapConfigIf->isSupportedInnerType(EapQtPluginHandle::PluginPeap,
-            EapQtPluginHandle::PluginEapGtc) == true;
-
-    QScopedPointer<CpBaseSettingView> ui(NULL);
-
-    qDebug("creating AKA UI");
-    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginUndefined, EapQtPluginHandle::PluginEapAka));
-    qDebug("AKA UI created");
-    QVERIFY(!ui.isNull());
-
-    qDebug("creating SIM UI");
-    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginUndefined, EapQtPluginHandle::PluginEapSim));
-    qDebug("SIM UI created");
-    QVERIFY(!ui.isNull());
-
-    qDebug("creating LEAP UI");
-    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginUndefined, EapQtPluginHandle::PluginLeap));
-    qDebug("LEAP UI created");
-    QVERIFY(!ui.isNull());
-
-    qDebug("creating 1");
-    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginUndefined, EapQtPluginHandle::PluginUndefined));
-    qDebug("created 1");
-    QVERIFY(ui.isNull());
-
-    qDebug("creating 2");
-    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginEapAka, EapQtPluginHandle::PluginEapSim));
-    qDebug("created 2");
-    QVERIFY(ui.isNull());
-
-    qDebug("creating 3");
-    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginEapSim, EapQtPluginHandle::PluginEapAka));
-    qDebug("created 3");
-    QVERIFY(ui.isNull());
-
-    qDebug("creating 4");
-    ui.reset(mEapConfigIf->uiInstance(EapQtPluginHandle::PluginEapAka, EapQtPluginHandle::PluginEapAka));
-    qDebug("created 4");
-    QVERIFY(ui.isNull());
-
-#else
-    QWARN("UI cases not included");
-#endif
-}
-
-// Create main function using QTest marco.
-QTEST_MAIN( TestQtConfigUtils)