diff -r 000000000000 -r af10295192d8 linklayercontrol/nullagt/TS_nullagt/src/Nullagentcommdbif.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/linklayercontrol/nullagt/TS_nullagt/src/Nullagentcommdbif.cpp Tue Jan 26 15:23:49 2010 +0200 @@ -0,0 +1,123 @@ +// Copyright (c) 2002-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: +// Contain the implementation of the class for this null agent test +// +// + +#include "NullAgentTestSteps.h" +#include "es_sock.h" +#include "in_sock.h" + +CTestStepNullAgtCommDbIf::CTestStepNullAgtCommDbIf(TPtrC aName) +{ + iTestStepName=aName; +} + +enum TVerdict CTestStepNullAgtCommDbIf::doTestStepL(void) +{ + __UHEAP_MARK; + + TInt r; // the result of various operations + TRequestStatus status; // status of asynchronous ops + + RSocketServ server; + RConnection connection; + + // as ever we need a socket server to create connections... + r = server.Connect(); + TESTEL(r == KErrNone, r); + CleanupClosePushL(server); + + // open the connection + // need a connection to get a null agent... the db reqs go to the agt + r = connection.Open(server, KAfInet); + TESTEL(r == KErrNone, r); + CleanupClosePushL(connection); + + // read an integer value back from commdb (IAP\Id chosen) + _LIT(KName1, "IAP\\id"); + TBufC<7> name1(KName1); + TUint32 intval; + r = connection.GetIntSetting(name1, intval); + TESTEL(KErrNotReady == r, r); + + // read a bool value back from commdb (DialOutISP\IfPromptForAuth chosen) + _LIT(KName2, "DialOutISP\\IfPromptForAuth"); + TBufC<27> name2(KName2); + TBool boolval; + r = connection.GetBoolSetting(name2, boolval); + TESTEL(KErrNotReady == r, r); + + // TODO: read the equivalent of DialOutISP\\IfName that works these days + + // read a descriptor back from commdb (DialOutISP\IfName chosen) + // this should fail as this field does not exist anymore + _LIT(KName3, "DialOutISP\\IfName"); + TBufC<18> name3(KName3); + TBuf<128> desval; + r = connection.GetDesSetting(name3, desval); + TESTEL(KErrNotReady == r, r); + + // read a long descriptor back from commdb (DialOutISP\LoginScript chosen) + _LIT(KName4, "DialOutISP\\LoginScript"); + TBufC<23> name4(KName4); + TBuf<128> longdesval; + r = connection.GetLongDesSetting(name4, longdesval); + TESTEL(KErrNotReady == r, r); + + // just use defaults, any connection will do for this test + connection.Start(status); + User::WaitForRequest(status); + TESTEL(status.Int() == KErrNone, status.Int()); + + // read an integer value back from commdb (IAP\Id chosen) + _LIT(KName5, "IAP\\id"); + TBufC<7> name5(KName5); + r = connection.GetIntSetting(name5, intval); + TESTEL(KErrNone == r, r); + + // read a bool value back from commdb (DialOutISP\IfPromptForAuth chosen) + _LIT(KName6, "DialOutISP\\IfPromptForAuth"); + TBufC<27> name6(KName6); + r = connection.GetBoolSetting(name6, boolval); + TESTEL(KErrNone == r, r); + + // TODO: read the equivalent of DialOutISP\\IfName that works these days + + // read a descriptor back from commdb (DialOutISP\IfName chosen) + // this should fail as this field does not exist anymore + _LIT(KName7, "DialOutISP\\IfName"); + TBufC<18> name7(KName7); + r = connection.GetDesSetting(name7, desval); + TESTEL(KErrNotFound == r, r); + + // read a long descriptor back from commdb (DialOutISP\LoginScript chosen) + _LIT(KName8, "DialOutISP\\LoginScript"); + TBufC<23> name8(KName8); + r = connection.GetLongDesSetting(name8, longdesval); + TESTEL(KErrNone == r, r); + + // destroy the connection + r = connection.Stop(); + TESTEL(r == KErrNone, r); + CleanupStack::Pop(); + + // close the socket server + server.Close(); + CleanupStack::Pop(); + + __UHEAP_MARKEND; + + return iTestStepResult; +}