// Copyright (c) 2001-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 contains CommDb Unit Test Cases 036.XX
//
//
// EPOC includes
#include <e32base.h>
#include <commdb.h>
#include <d32comm.h>
#include <cdbtemp.h>
#include <etelmm.h>
// Test system includes
#include <networking/log.h>
#include <networking/teststep.h>
#include "Teststepcommdb.h"
#include "TestSuiteCommdb.h"
#include "Step_036_xx.h"
CCommDbTest036_01::CCommDbTest036_01()
{
// store the name of this test case
iTestStepName = _L("step_036_01");
}
CCommDbTest036_01::~CCommDbTest036_01()
{}
TVerdict CCommDbTest036_01::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_01::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_01::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(MODEM_BEARER));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TBufC8<KCommsDbSvrMaxFieldLength> inputString = _L8("string");
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("DummyName"));
templateRecord->WriteTextL(TPtrC(MODEM_FAX_INIT_STRING), inputString);
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a new template record and check the value is the same as the one entered.
CCommsDbTemplateRecord* checkRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(MODEM_BEARER));
CleanupStack::PushL(checkRecord);
TBuf8<KCommsDbSvrMaxFieldLength> checkString;
checkRecord->ReadTextL(TPtrC(MODEM_FAX_INIT_STRING), checkString);
CleanupStack::PopAndDestroy(checkRecord);
if(checkString!=inputString)
return KErrGeneral;
return KErrNone;
}
TVerdict CCommDbTest036_01::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_02::CCommDbTest036_02()
{
// store the name of this test case
iTestStepName = _L("step_036_02");
}
CCommDbTest036_02::~CCommDbTest036_02()
{}
TVerdict CCommDbTest036_02::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_02::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_02::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(MODEM_BEARER));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TBufC8<KCommsDbSvrMaxFieldLength> firstInputString = _L8("string");
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("DummyName"));
templateRecord->WriteTextL(TPtrC(MODEM_FAX_INIT_STRING), firstInputString);
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the modem table, over write the template value previosly set and check it sticks
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(MODEM_BEARER));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("NewModem"));
//Do overwrite of setting
TBufC8<KCommsDbSvrMaxFieldLength> overwriteString = _L8("different string");
tableView->WriteTextL(TPtrC(MODEM_FAX_INIT_STRING), overwriteString);
User::LeaveIfError(tableView->PutRecordChanges());
TBuf8<KCommsDbSvrMaxFieldLength> retrievedString;
tableView->ReadTextL(TPtrC(MODEM_FAX_INIT_STRING), retrievedString);
CleanupStack::PopAndDestroy(tableView);
if(retrievedString!=overwriteString)
return KErrGeneral;
return KErrNone;
}
TVerdict CCommDbTest036_02::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_03::CCommDbTest036_03()
{
// store the name of this test case
iTestStepName = _L("step_036_03");
}
CCommDbTest036_03::~CCommDbTest036_03()
{}
TVerdict CCommDbTest036_03::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_03::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_03::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(MODEM_BEARER));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TBufC<KCommsDbSvrMaxFieldLength> inputString = _L("string");
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("DummyName"));
templateRecord->WriteTextL(TPtrC(MODEM_PORT_NAME), inputString);
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the modem table, make a new record and check the value is the one set for the template
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(MODEM_BEARER));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("NewModem"));
User::LeaveIfError(tableView->PutRecordChanges());
//Retrieve the string we set for the template
TBuf<KCommsDbSvrMaxFieldLength> retrievedString;
tableView->ReadTextL(TPtrC(MODEM_PORT_NAME), retrievedString);
CleanupStack::PopAndDestroy(tableView);
if(retrievedString!=inputString)
return KErrGeneral;
return KErrNone;
}
TVerdict CCommDbTest036_03::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_04::CCommDbTest036_04()
{
// store the name of this test case
iTestStepName = _L("step_036_04");
}
CCommDbTest036_04::~CCommDbTest036_04()
{}
TVerdict CCommDbTest036_04::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_04::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_04::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(MODEM_BEARER));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TBufC<KCommsDbSvrMaxFieldLength> inputString = _L("string");
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("DummyName"));
templateRecord->WriteTextL(TPtrC(MODEM_PORT_NAME), inputString);
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the modem table, make a new record and overwrite the value set in the template
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(MODEM_BEARER));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("NewModem"));
//Do overwrite of setting
TBufC<KCommsDbSvrMaxFieldLength> overwriteString = _L("different string");
tableView->WriteTextL(TPtrC(MODEM_PORT_NAME), overwriteString);
User::LeaveIfError(tableView->PutRecordChanges());
//Retrieve the string we just set
TBuf<KCommsDbSvrMaxFieldLength> retrievedString;
tableView->ReadTextL(TPtrC(MODEM_PORT_NAME), retrievedString);
CleanupStack::PopAndDestroy(tableView);
if(retrievedString!=overwriteString)
return KErrGeneral;
return KErrNone;
}
TVerdict CCommDbTest036_04::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_05::CCommDbTest036_05()
{
// store the name of this test case
iTestStepName = _L("step_036_05");
}
CCommDbTest036_05::~CCommDbTest036_05()
{}
TVerdict CCommDbTest036_05::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_05::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_05::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TBufC<KCommsDbSvrMaxFieldLength> inputString = _L("test string");
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("Name"));
// templateRecord->WriteTextL(TPtrC(ISP_IF_NAME), _L("SLIP"));
templateRecord->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteLongTextL(TPtrC(ISP_LOGIN_SCRIPT), inputString);
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the DialInISP table, make a new record and check the value is the one set for the template
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(DIAL_IN_ISP));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("Test ISP"));
// tableView->WriteTextL(TPtrC(ISP_IF_NAME), _L("Test If"));
tableView->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), EFalse);
User::LeaveIfError(tableView->PutRecordChanges());
//Retrieve the string we set for the template
HBufC* retrievedString = tableView->ReadLongTextLC(TPtrC(ISP_LOGIN_SCRIPT));
TInt ret(KErrNone);
if(*retrievedString!=inputString)
ret= KErrGeneral;
CleanupStack::PopAndDestroy(); //retrievedString
CleanupStack::PopAndDestroy(tableView);
return ret;
}
TVerdict CCommDbTest036_05::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_06::CCommDbTest036_06()
{
// store the name of this test case
iTestStepName = _L("step_036_06");
}
CCommDbTest036_06::~CCommDbTest036_06()
{}
TVerdict CCommDbTest036_06::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_06::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_06::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TBufC<KCommsDbSvrMaxFieldLength> inputString = _L("test string");
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("Name"));
// templateRecord->WriteTextL(TPtrC(ISP_IF_NAME), _L("SLIP"));
templateRecord->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteLongTextL(TPtrC(ISP_LOGIN_SCRIPT), inputString);
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the DialInISP table, make a new record and change the value we set int he template
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(DIAL_IN_ISP));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("Test ISP"));
// tableView->WriteTextL(TPtrC(ISP_IF_NAME), _L("Test If"));
tableView->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), EFalse);
//Overwrite value set above in template
TBufC<KCommsDbSvrMaxFieldLength> overwriteString = _L("new string");
tableView->WriteLongTextL(TPtrC(ISP_LOGIN_SCRIPT), overwriteString);
User::LeaveIfError(tableView->PutRecordChanges());
//Retrieve the string we just set
HBufC* retrievedString = tableView->ReadLongTextLC(TPtrC(ISP_LOGIN_SCRIPT));
TInt ret(KErrNone);
if(*retrievedString!=overwriteString)
ret= KErrGeneral;
CleanupStack::PopAndDestroy(); //retrievedString
CleanupStack::PopAndDestroy(tableView);
return ret;
}
TVerdict CCommDbTest036_06::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_07::CCommDbTest036_07()
{
// store the name of this test case
iTestStepName = _L("step_036_07");
}
CCommDbTest036_07::~CCommDbTest036_07()
{}
TVerdict CCommDbTest036_07::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_07::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_07::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TBool inputBool = ETrue;
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("Name"));
// templateRecord->WriteTextL(TPtrC(ISP_IF_NAME), _L("SLIP"));
templateRecord->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_USE_LOGIN_SCRIPT), inputBool); //Set to ETrue, since EFalse is default
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the DialInISP table, make a new record and check the value is the one set for the template
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(DIAL_IN_ISP));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("Test ISP"));
// tableView->WriteTextL(TPtrC(ISP_IF_NAME), _L("Test If"));
tableView->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), EFalse);
User::LeaveIfError(tableView->PutRecordChanges());
//Retrieve the bool we set for the template
TBool retrievedBool;
tableView->ReadBoolL(TPtrC(ISP_USE_LOGIN_SCRIPT), retrievedBool);
CleanupStack::PopAndDestroy(tableView);
if(retrievedBool!=inputBool)
return KErrGeneral;
return KErrNone;
}
TVerdict CCommDbTest036_07::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_08::CCommDbTest036_08()
{
// store the name of this test case
iTestStepName = _L("step_036_08");
}
CCommDbTest036_08::~CCommDbTest036_08()
{}
TVerdict CCommDbTest036_08::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_08::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_08::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TBool inputBool = ETrue;
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("Name"));
// templateRecord->WriteTextL(TPtrC(ISP_IF_NAME), _L("SLIP"));
templateRecord->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_USE_LOGIN_SCRIPT), inputBool); //Set to ETrue, since EFalse is default
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the DialInISP table, make a new record and change the value we set in the template
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(DIAL_IN_ISP));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("Test ISP"));
// tableView->WriteTextL(TPtrC(ISP_IF_NAME), _L("Test If"));
tableView->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), EFalse);
//Overwrite the value set in the template
TBool overwriteBool = EFalse;
tableView->WriteBoolL(TPtrC(ISP_USE_LOGIN_SCRIPT), overwriteBool);
User::LeaveIfError(tableView->PutRecordChanges());
//Retrieve the bool we just set for the record
TBool retrievedBool;
tableView->ReadBoolL(TPtrC(ISP_USE_LOGIN_SCRIPT), retrievedBool);
CleanupStack::PopAndDestroy(tableView);
if(retrievedBool!=overwriteBool)
return KErrGeneral;
return KErrNone;
}
TVerdict CCommDbTest036_08::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_09::CCommDbTest036_09()
{
// store the name of this test case
iTestStepName = _L("step_036_09");
}
CCommDbTest036_09::~CCommDbTest036_09()
{}
TVerdict CCommDbTest036_09::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_09::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_09::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TUint32 inputInt = RMobileCall::KCapsSpeed32000;
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("Name"));
templateRecord->WriteTextL(TPtrC(ISP_IP_NAME_SERVER1),_L("MyDnsServer"));
templateRecord->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteUintL(TPtrC(ISP_BEARER_SPEED), inputInt);
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the DialInISP table, make a new record and check the value is the one set for the template
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(DIAL_IN_ISP));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("Test ISP"));
tableView->WriteTextL(TPtrC(ISP_IP_NAME_SERVER1),_L("NotMyDnsServer"));
tableView->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), EFalse);
User::LeaveIfError(tableView->PutRecordChanges());
//Retrieve the TUint32 we set for the template
TUint32 retrievedInt;
tableView->ReadUintL(TPtrC(ISP_BEARER_SPEED), retrievedInt);
// And now check that we retrieve the text from the template
TBuf16<KCommsDbSvrMaxFieldLength> ifAuthName(_L16("Invalid"));
tableView->ReadTextL(TPtrC(ISP_IP_NAME_SERVER1), ifAuthName);
if(ifAuthName.Compare(_L16("NotMyDnsServer")))
{
User::Leave(KErrGeneral);
}
CleanupStack::PopAndDestroy(tableView);
if(retrievedInt!=inputInt)
return KErrGeneral;
return KErrNone;
}
TVerdict CCommDbTest036_09::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_10::CCommDbTest036_10()
{
// store the name of this test case
iTestStepName = _L("step_036_10");
}
CCommDbTest036_10::~CCommDbTest036_10()
{}
TVerdict CCommDbTest036_10::doTestStepL( void )
{
if(executeStepL()!=KErrNone)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_10::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_10::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TUint32 inputInt = RMobileCall::KCapsSpeed32000;
templateRecord->WriteTextL(TPtrC(COMMDB_NAME), _L("Name"));
templateRecord->WriteTextL(TPtrC(ISP_IP_NAME_SERVER1),_L("MyDnsServer"));
templateRecord->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), ETrue);
templateRecord->WriteUintL(TPtrC(ISP_BEARER_SPEED), inputInt);
User::LeaveIfError(templateRecord->StoreModifications());
CleanupStack::PopAndDestroy(templateRecord);
//Create a view on the DialInISP table, make a new record and change the value we set in the template
CCommsDbTableView* tableView = iTheDb->OpenTableLC(TPtrC(DIAL_IN_ISP));
TUint32 dummyId;
//Create a new record, so we can be sure it is the same as the templated one
User::LeaveIfError(tableView->InsertRecord(dummyId));
tableView->WriteTextL(TPtrC(COMMDB_NAME), _L("Test ISP"));
tableView->WriteBoolL(TPtrC(ISP_IP_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP_DNS_ADDR_FROM_SERVER), EFalse);
tableView->WriteBoolL(TPtrC(ISP_IP6_DNS_ADDR_FROM_SERVER), EFalse);
//Overwrite value we set in the template
TUint32 overwriteInt = RMobileCall::KCapsSpeed64000;
tableView->WriteUintL(TPtrC(ISP_BEARER_SPEED), overwriteInt);
User::LeaveIfError(tableView->PutRecordChanges());
//Retrieve the TUint32 we just set
TUint32 retrievedInt;
tableView->ReadUintL(TPtrC(ISP_BEARER_SPEED), retrievedInt);
TBuf16<KCommsDbSvrMaxFieldLength> ifAuthName(_L16("Invalid"));
tableView->ReadTextL(TPtrC(ISP_IP_NAME_SERVER1), ifAuthName);
if(ifAuthName.Compare(_L16("MyDnsServer")))
{
User::Leave(KErrGeneral);
}
CleanupStack::PopAndDestroy(tableView);
if(retrievedInt!=overwriteInt)
return KErrGeneral;
return KErrNone;
}
TVerdict CCommDbTest036_10::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_11::CCommDbTest036_11()
{
// store the name of this test case
iTestStepName = _L("step_036_11");
}
CCommDbTest036_11::~CCommDbTest036_11()
{}
TVerdict CCommDbTest036_11::doTestStepL( void )
{
executeStepL();
return EFail; //Test is supposed to panic, so if we get here we've failed
}
TVerdict CCommDbTest036_11::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_11::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
templateRecord->StoreModifications();
CleanupStack::PopAndDestroy(templateRecord);
return KErrGeneral;
}
TVerdict CCommDbTest036_11::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_12::CCommDbTest036_12()
{
// store the name of this test case
iTestStepName = _L("step_036_12");
}
CCommDbTest036_12::~CCommDbTest036_12()
{}
TVerdict CCommDbTest036_12::doTestStepL( void )
{
executeStepL();
return EFail; //Test should panic, so if we get here something's wrong
}
TVerdict CCommDbTest036_12::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_12::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
templateRecord->WriteBoolL(TPtrC(ISP_USE_LOGIN_SCRIPT), ETrue);
CleanupStack::PopAndDestroy(templateRecord);
return KErrGeneral;
}
TVerdict CCommDbTest036_12::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_13::CCommDbTest036_13()
{
// store the name of this test case
iTestStepName = _L("step_036_13");
}
CCommDbTest036_13::~CCommDbTest036_13()
{}
TVerdict CCommDbTest036_13::doTestStepL( void )
{
if (executeStepL()!=KErrNotFound)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_13::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_13::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TRAPD(err, templateRecord->WriteBoolL(_L("Invalid"), ETrue));
CleanupStack::PopAndDestroy(templateRecord);
return err;
}
TVerdict CCommDbTest036_13::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_14::CCommDbTest036_14()
{
// store the name of this test case
iTestStepName = _L("step_036_14");
}
CCommDbTest036_14::~CCommDbTest036_14()
{}
TVerdict CCommDbTest036_14::doTestStepL( void )
{
if (executeStepL()!=KErrNotFound)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_14::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_14::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
User::LeaveIfError(templateRecord->Modify());
TRAPD(err, templateRecord->WriteBoolL(_L(""), ETrue));
CleanupStack::PopAndDestroy(templateRecord);
return err;
}
TVerdict CCommDbTest036_14::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_15::CCommDbTest036_15()
{
// store the name of this test case
iTestStepName = _L("step_036_15");
}
CCommDbTest036_15::~CCommDbTest036_15()
{}
TVerdict CCommDbTest036_15::doTestStepL( void )
{
if (executeStepL()!=KErrNotFound)
return EFail;
return EPass;
}
TVerdict CCommDbTest036_15::doTestStepPreambleL()
{
iTheDb=CCommsDatabase::NewL();
return EPass;
}
TInt CCommDbTest036_15::executeStepL()
{
CCommsDbTemplateRecord* templateRecord = CCommsDbTemplateRecord::NewL(iTheDb, TPtrC(DIAL_IN_ISP));
CleanupStack::PushL(templateRecord);
TBool dummyBool;
TRAPD(err, templateRecord->ReadBoolL(_L("Invalid"), dummyBool));
CleanupStack::PopAndDestroy(templateRecord);
return err;
}
TVerdict CCommDbTest036_15::doTestStepPostambleL()
{
delete iTheDb;
iTheDb=NULL;
return EPass;
}
//
CCommDbTest036_16::CCommDbTest036_16()
{
// store the name of this test case
iTestStepName = _L("step_036_16");
}
CCommDbTest036_16::~CCommDbTest036_16()
{}
TVerdict CCommDbTest036_16::doTestStepL( void )
{
Log(_L("Step 036.16 called "));
iTestStepResult = EPass;
CCommDbTest036_01* step036_01 = new(ELeave) CCommDbTest036_01;
CleanupStack::PushL(step036_01);
step036_01->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_01, KErrNone);
CleanupStack::PopAndDestroy(step036_01);
CCommDbTest036_02* step036_02 = new(ELeave) CCommDbTest036_02;
CleanupStack::PushL(step036_02);
step036_02->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_02, KErrNone);
CleanupStack::PopAndDestroy(step036_02);
CCommDbTest036_03* step036_03 = new(ELeave) CCommDbTest036_03;
CleanupStack::PushL(step036_03);
step036_03->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_03, KErrNone);
CleanupStack::PopAndDestroy(step036_03);
CCommDbTest036_04* step036_04 = new(ELeave) CCommDbTest036_04;
CleanupStack::PushL(step036_04);
step036_04->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_04, KErrNone);
CleanupStack::PopAndDestroy(step036_04);
CCommDbTest036_05* step036_05 = new(ELeave) CCommDbTest036_05;
CleanupStack::PushL(step036_05);
step036_05->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_05, KErrNone);
CleanupStack::PopAndDestroy(step036_05);
CCommDbTest036_06* step036_06 = new(ELeave) CCommDbTest036_06;
CleanupStack::PushL(step036_06);
step036_06->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_06, KErrNone);
CleanupStack::PopAndDestroy(step036_06);
CCommDbTest036_07* step036_07 = new(ELeave) CCommDbTest036_07;
CleanupStack::PushL(step036_07);
step036_07->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_07, KErrNone);
CleanupStack::PopAndDestroy(step036_07);
CCommDbTest036_08* step036_08 = new(ELeave) CCommDbTest036_08;
CleanupStack::PushL(step036_08);
step036_08->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_08, KErrNone);
CleanupStack::PopAndDestroy(step036_08);
CCommDbTest036_09* step036_09 = new(ELeave) CCommDbTest036_09;
CleanupStack::PushL(step036_09);
step036_09->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_09, KErrNone);
CleanupStack::PopAndDestroy(step036_09);
CCommDbTest036_10* step036_10 = new(ELeave) CCommDbTest036_10;
CleanupStack::PushL(step036_10);
step036_10->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_10, KErrNone);
CleanupStack::PopAndDestroy(step036_10);
CCommDbTest036_13* step036_13 = new(ELeave) CCommDbTest036_13;
CleanupStack::PushL(step036_13);
step036_13->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_13, KErrNotFound);
CleanupStack::PopAndDestroy(step036_13);
CCommDbTest036_14* step036_14 = new(ELeave) CCommDbTest036_14;
CleanupStack::PushL(step036_14);
step036_14->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_14, KErrNotFound);
CleanupStack::PopAndDestroy(step036_14);
CCommDbTest036_15* step036_15 = new(ELeave) CCommDbTest036_15;
CleanupStack::PushL(step036_15);
step036_15->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_15, KErrNotFound);
CleanupStack::PopAndDestroy(step036_15);
return iTestStepResult;
}
//
CCommDbTest036_17::CCommDbTest036_17()
{
// store the name of this test case
iTestStepName = _L("step_036_17");
}
CCommDbTest036_17::~CCommDbTest036_17()
{}
TVerdict CCommDbTest036_17::doTestStepL( void )
{
iTestStepResult = EPass;
CCommDbTest036_11* step036_11 = new(ELeave) CCommDbTest036_11;
CleanupStack::PushL(step036_11);
step036_11->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_11, KErrNone);
CleanupStack::PopAndDestroy(step036_11);
return iTestStepResult;
}
//
CCommDbTest036_18::CCommDbTest036_18()
{
// store the name of this test case
iTestStepName = _L("step_036_18");
}
CCommDbTest036_18::~CCommDbTest036_18()
{}
TVerdict CCommDbTest036_18::doTestStepL( void )
{
iTestStepResult = EPass;
CCommDbTest036_12* step036_12 = new(ELeave) CCommDbTest036_12;
CleanupStack::PushL(step036_12);
step036_12->iSuite = iSuite;
doTestStepWithHeapFailureL( *step036_12, KErrNone);
CleanupStack::PopAndDestroy(step036_12);
return iTestStepResult;
}