diff -r 6b1d113cdff3 -r 6638e7f4bd8f telephonyserverplugins/simtsy/test/Te_Sim/Te_SimPacketGPRSQOSTest.cpp --- a/telephonyserverplugins/simtsy/test/Te_Sim/Te_SimPacketGPRSQOSTest.cpp Mon May 03 13:37:20 2010 +0300 +++ b/telephonyserverplugins/simtsy/test/Te_Sim/Te_SimPacketGPRSQOSTest.cpp Thu May 06 15:10:38 2010 +0100 @@ -1,175 +1,175 @@ -// Copyright (c) 2005-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: -// - -#include "Te_SimPacketGPRSQOSTest.h" - -CSimPacketGPRSQOSTest::CSimPacketGPRSQOSTest() - { - SetTestStepName(_L("GPRSQOSTest")); - } - -TVerdict CSimPacketGPRSQOSTest::doTestStepL() - { - INFO_PRINTF1(_L("BeginPacketGPRSQOSTest")); - - CreateConfigFileL(_L("c:\\config3.txt")); - SetTestNumberL(6); - - TInt ret = iPhone.Open(iTelServer,KPhoneName); - INFO_PRINTF2(_L("Result: %d"),ret); - TESTL(ret == KErrNone); - INFO_PRINTF1(_L("Opened phone object")); - TESTL(iPacketService.Open(iPhone)==KErrNone); - INFO_PRINTF1(_L("Opened Packet object")); - TName contextName; - TName contextNameCompare; - TESTL(iFirstPrimaryPacketContext.OpenNewContext(iPacketService, contextName)==KErrNone); - contextNameCompare.Append(KSimPrimaryPacketContextName); - contextNameCompare.AppendNum(1); - TESTL(contextName.Compare(contextNameCompare)==KErrNone); - INFO_PRINTF1(_L("Opened Context object")); - - TRequestStatus reqStatus; - TRequestStatus notifyStatus; - TName gprsQosName; - TESTL(iGPRSPacketqos.OpenNewQoS(iFirstPrimaryPacketContext, gprsQosName)==KErrNone); - TName gprsQosNameCompare; - gprsQosNameCompare.Append(KSimPacketQosName); - gprsQosNameCompare.AppendNum(1); - TESTL(gprsQosName.Compare(gprsQosNameCompare)==KErrNone); - INFO_PRINTF1(_L("Opened GPRS QoS object")); - - TName qosname; - iFirstPrimaryPacketContext.GetProfileName(qosname); - INFO_PRINTF1(_L("Retrieved GPRS QoS object reference name")); - - // Set QoS Profile Params - RPacketQoS::TQoSGPRSRequested aGPRSQoSReqConfig; - TPckg aGPRSQoSReqPckg(aGPRSQoSReqConfig); - - // post a notification - RPacketQoS::TQoSGPRSNegotiated aGPRSNotifyQoS; - TPckg aGPRSNotifyQoSPckg(aGPRSNotifyQoS); - - //Profile data - aGPRSQoSReqConfig.iMinDelay = RPacketQoS::EDelayClass1; - aGPRSQoSReqConfig.iMinMeanThroughput = RPacketQoS::EMeanThroughput200; - aGPRSQoSReqConfig.iMinPeakThroughput = RPacketQoS::EPeakThroughput16000; - aGPRSQoSReqConfig.iMinPrecedence = RPacketQoS::EPriorityLowPrecedence; - aGPRSQoSReqConfig.iMinReliability = RPacketQoS::EReliabilityClass1; - aGPRSQoSReqConfig.iReqDelay = RPacketQoS::EDelayClass2; - aGPRSQoSReqConfig.iReqMeanThroughput = RPacketQoS::EMeanThroughput2000; - aGPRSQoSReqConfig.iReqPeakThroughput = RPacketQoS::EPeakThroughput64000; - aGPRSQoSReqConfig.iReqPrecedence = RPacketQoS::EPriorityMediumPrecedence; - aGPRSQoSReqConfig.iReqReliability = RPacketQoS::EReliabilityClass2; - - //post the notification - iGPRSPacketqos.NotifyProfileChanged(notifyStatus, aGPRSNotifyQoSPckg); - //Set the config - iGPRSPacketqos.SetProfileParameters(reqStatus, aGPRSQoSReqPckg); - - User::WaitForRequest(notifyStatus); - User::WaitForRequest(reqStatus); - - TESTL(aGPRSNotifyQoS.ExtensionId()==TPacketDataConfigBase::KConfigGPRS); - TESTL(aGPRSNotifyQoS.iDelay == RPacketQoS::EDelayClass2); - TESTL(aGPRSNotifyQoS.iDelay == RPacketQoS::EDelayClass2); - TESTL(aGPRSNotifyQoS.iMeanThroughput == RPacketQoS::EMeanThroughput2000); - TESTL(aGPRSNotifyQoS.iPeakThroughput == RPacketQoS::EPeakThroughput64000); - TESTL(aGPRSNotifyQoS.iPrecedence == RPacketQoS::EPriorityMediumPrecedence); - TESTL(aGPRSNotifyQoS.iReliability == RPacketQoS::EReliabilityClass2); - - // post a notification - TRequestStatus cancelStatus; - iGPRSPacketqos.NotifyProfileChanged(cancelStatus, aGPRSNotifyQoSPckg); - iGPRSPacketqos.CancelAsyncRequest(EPacketQoSNotifyProfileChanged); - User::WaitForRequest(cancelStatus); - - TESTL(cancelStatus.Int()==KErrCancel); - INFO_PRINTF1(_L("Set Profile Test passed")); - - // need to call Notify first to set pending to true after - // cancel event which sets it to false - iGPRSPacketqos.NotifyProfileChanged(notifyStatus, aGPRSNotifyQoSPckg); - iGPRSPacketqos.SetProfileParameters(reqStatus, aGPRSQoSReqPckg); - User::WaitForRequest(notifyStatus); - TESTL(notifyStatus.Int()==KErrNone); - User::WaitForRequest(reqStatus); - TESTL(reqStatus.Int()==KErrNone); - - // test RPacketContext::Activate - before calling ModifyActiveContext - StartNTRasSimulation(); - iFirstPrimaryPacketContext.Activate(reqStatus); - User::WaitForRequest(reqStatus); - TESTL(reqStatus.Int()==KErrNone); - INFO_PRINTF1(_L("Activate test passed")); - - // test RPacketContext::ModifyActiveContext - it shouldn't work unless - // a profile/tft has changed since activation - TRequestStatus modifyStatus; - iFirstPrimaryPacketContext.ModifyActiveContext(modifyStatus); - User::WaitForRequest(modifyStatus); - TESTL(modifyStatus.Int()==KErrNotReady); - iGPRSPacketqos.SetProfileParameters(reqStatus, aGPRSQoSReqPckg); - User::WaitForRequest(reqStatus); - TESTL(reqStatus.Int()==KErrNone); - iFirstPrimaryPacketContext.ModifyActiveContext(modifyStatus); - User::WaitForRequest(modifyStatus); - TESTL(modifyStatus.Int()==KErrNone); - INFO_PRINTF1(_L("ModifyActiveContext Test Passed")); - INFO_PRINTF1(_L("Notify GPRS QoS Profile Test passed")); - - // Get QoS GPRS Capabilities - RPacketQoS::TQoSCapsGPRS aQoSCaps; - TPckg aQoSCapsPckg(aQoSCaps); - - iGPRSPacketqos.GetProfileCapabilities(reqStatus, aQoSCapsPckg); - User::WaitForRequest(reqStatus); - TESTL(reqStatus.Int()==KErrNone); - TESTL(aQoSCaps.ExtensionId()==TPacketDataConfigBase::KConfigGPRS); - TESTL(aQoSCaps.iDelay == RPacketQoS::EDelayClass2); - TESTL(aQoSCaps.iMean == RPacketQoS::EMeanThroughput100); - TESTL(aQoSCaps.iPeak == RPacketQoS::EPeakThroughput64000); - TESTL(aQoSCaps.iPrecedence == RPacketQoS::EPriorityMediumPrecedence); - TESTL(aQoSCaps.iReliability == RPacketQoS::EReliabilityClass2); - INFO_PRINTF1(_L("Get QoS Profile Capabilities Test passed")); - - //Get QoS Profile Params - RPacketQoS::TQoSGPRSNegotiated aGPRSQoSNegConfig; - TPckg aGPRSQoSNegPckg(aGPRSQoSNegConfig); - - iGPRSPacketqos.GetProfileParameters(cancelStatus, aGPRSQoSNegPckg); - iGPRSPacketqos.CancelAsyncRequest(EPacketQoSGetProfileParams);//no implementation-does nothing - User::WaitForRequest(cancelStatus); - TESTL(cancelStatus.Int()==KErrNone); - - TESTL(aGPRSQoSNegConfig.ExtensionId()==TPacketDataConfigBase::KConfigGPRS); - TESTL(aGPRSQoSNegConfig.iDelay==RPacketQoS::EDelayClass2); - TESTL(aGPRSQoSNegConfig.iMeanThroughput==RPacketQoS::EMeanThroughput100); - TESTL(aGPRSQoSNegConfig.iPeakThroughput==RPacketQoS::EPeakThroughput64000); - TESTL(aGPRSQoSNegConfig.iPrecedence==RPacketQoS::EPriorityMediumPrecedence); - TESTL(aGPRSQoSNegConfig.iReliability==RPacketQoS::EReliabilityClass2); - INFO_PRINTF1(_L("Get QoS Profile Test passed")); - - // End of RPacketQos tests - iGPRSPacketqos.Close(); - iFirstPrimaryPacketContext.Close(); - iPacketService.Close(); - iPhone.Close(); - ASSERT(RThread().RequestCount()==0); - - return TestStepResult(); - } - +// Copyright (c) 2005-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: +// + +#include "Te_SimPacketGPRSQOSTest.h" + +CSimPacketGPRSQOSTest::CSimPacketGPRSQOSTest() + { + SetTestStepName(_L("GPRSQOSTest")); + } + +TVerdict CSimPacketGPRSQOSTest::doTestStepL() + { + INFO_PRINTF1(_L("BeginPacketGPRSQOSTest")); + + CreateConfigFileL(_L("c:\\config3.txt")); + SetTestNumberL(6); + + TInt ret = iPhone.Open(iTelServer,KPhoneName); + INFO_PRINTF2(_L("Result: %d"),ret); + TESTL(ret == KErrNone); + INFO_PRINTF1(_L("Opened phone object")); + TESTL(iPacketService.Open(iPhone)==KErrNone); + INFO_PRINTF1(_L("Opened Packet object")); + TName contextName; + TName contextNameCompare; + TESTL(iFirstPrimaryPacketContext.OpenNewContext(iPacketService, contextName)==KErrNone); + contextNameCompare.Append(KSimPrimaryPacketContextName); + contextNameCompare.AppendNum(1); + TESTL(contextName.Compare(contextNameCompare)==KErrNone); + INFO_PRINTF1(_L("Opened Context object")); + + TRequestStatus reqStatus; + TRequestStatus notifyStatus; + TName gprsQosName; + TESTL(iGPRSPacketqos.OpenNewQoS(iFirstPrimaryPacketContext, gprsQosName)==KErrNone); + TName gprsQosNameCompare; + gprsQosNameCompare.Append(KSimPacketQosName); + gprsQosNameCompare.AppendNum(1); + TESTL(gprsQosName.Compare(gprsQosNameCompare)==KErrNone); + INFO_PRINTF1(_L("Opened GPRS QoS object")); + + TName qosname; + iFirstPrimaryPacketContext.GetProfileName(qosname); + INFO_PRINTF1(_L("Retrieved GPRS QoS object reference name")); + + // Set QoS Profile Params + RPacketQoS::TQoSGPRSRequested aGPRSQoSReqConfig; + TPckg aGPRSQoSReqPckg(aGPRSQoSReqConfig); + + // post a notification + RPacketQoS::TQoSGPRSNegotiated aGPRSNotifyQoS; + TPckg aGPRSNotifyQoSPckg(aGPRSNotifyQoS); + + //Profile data + aGPRSQoSReqConfig.iMinDelay = RPacketQoS::EDelayClass1; + aGPRSQoSReqConfig.iMinMeanThroughput = RPacketQoS::EMeanThroughput200; + aGPRSQoSReqConfig.iMinPeakThroughput = RPacketQoS::EPeakThroughput16000; + aGPRSQoSReqConfig.iMinPrecedence = RPacketQoS::EPriorityLowPrecedence; + aGPRSQoSReqConfig.iMinReliability = RPacketQoS::EReliabilityClass1; + aGPRSQoSReqConfig.iReqDelay = RPacketQoS::EDelayClass2; + aGPRSQoSReqConfig.iReqMeanThroughput = RPacketQoS::EMeanThroughput2000; + aGPRSQoSReqConfig.iReqPeakThroughput = RPacketQoS::EPeakThroughput64000; + aGPRSQoSReqConfig.iReqPrecedence = RPacketQoS::EPriorityMediumPrecedence; + aGPRSQoSReqConfig.iReqReliability = RPacketQoS::EReliabilityClass2; + + //post the notification + iGPRSPacketqos.NotifyProfileChanged(notifyStatus, aGPRSNotifyQoSPckg); + //Set the config + iGPRSPacketqos.SetProfileParameters(reqStatus, aGPRSQoSReqPckg); + + User::WaitForRequest(notifyStatus); + User::WaitForRequest(reqStatus); + + TESTL(aGPRSNotifyQoS.ExtensionId()==TPacketDataConfigBase::KConfigGPRS); + TESTL(aGPRSNotifyQoS.iDelay == RPacketQoS::EDelayClass2); + TESTL(aGPRSNotifyQoS.iDelay == RPacketQoS::EDelayClass2); + TESTL(aGPRSNotifyQoS.iMeanThroughput == RPacketQoS::EMeanThroughput2000); + TESTL(aGPRSNotifyQoS.iPeakThroughput == RPacketQoS::EPeakThroughput64000); + TESTL(aGPRSNotifyQoS.iPrecedence == RPacketQoS::EPriorityMediumPrecedence); + TESTL(aGPRSNotifyQoS.iReliability == RPacketQoS::EReliabilityClass2); + + // post a notification + TRequestStatus cancelStatus; + iGPRSPacketqos.NotifyProfileChanged(cancelStatus, aGPRSNotifyQoSPckg); + iGPRSPacketqos.CancelAsyncRequest(EPacketQoSNotifyProfileChanged); + User::WaitForRequest(cancelStatus); + + TESTL(cancelStatus.Int()==KErrCancel); + INFO_PRINTF1(_L("Set Profile Test passed")); + + // need to call Notify first to set pending to true after + // cancel event which sets it to false + iGPRSPacketqos.NotifyProfileChanged(notifyStatus, aGPRSNotifyQoSPckg); + iGPRSPacketqos.SetProfileParameters(reqStatus, aGPRSQoSReqPckg); + User::WaitForRequest(notifyStatus); + TESTL(notifyStatus.Int()==KErrNone); + User::WaitForRequest(reqStatus); + TESTL(reqStatus.Int()==KErrNone); + + // test RPacketContext::Activate - before calling ModifyActiveContext + StartNTRasSimulation(); + iFirstPrimaryPacketContext.Activate(reqStatus); + User::WaitForRequest(reqStatus); + TESTL(reqStatus.Int()==KErrNone); + INFO_PRINTF1(_L("Activate test passed")); + + // test RPacketContext::ModifyActiveContext - it shouldn't work unless + // a profile/tft has changed since activation + TRequestStatus modifyStatus; + iFirstPrimaryPacketContext.ModifyActiveContext(modifyStatus); + User::WaitForRequest(modifyStatus); + TESTL(modifyStatus.Int()==KErrNotReady); + iGPRSPacketqos.SetProfileParameters(reqStatus, aGPRSQoSReqPckg); + User::WaitForRequest(reqStatus); + TESTL(reqStatus.Int()==KErrNone); + iFirstPrimaryPacketContext.ModifyActiveContext(modifyStatus); + User::WaitForRequest(modifyStatus); + TESTL(modifyStatus.Int()==KErrNone); + INFO_PRINTF1(_L("ModifyActiveContext Test Passed")); + INFO_PRINTF1(_L("Notify GPRS QoS Profile Test passed")); + + // Get QoS GPRS Capabilities + RPacketQoS::TQoSCapsGPRS aQoSCaps; + TPckg aQoSCapsPckg(aQoSCaps); + + iGPRSPacketqos.GetProfileCapabilities(reqStatus, aQoSCapsPckg); + User::WaitForRequest(reqStatus); + TESTL(reqStatus.Int()==KErrNone); + TESTL(aQoSCaps.ExtensionId()==TPacketDataConfigBase::KConfigGPRS); + TESTL(aQoSCaps.iDelay == RPacketQoS::EDelayClass2); + TESTL(aQoSCaps.iMean == RPacketQoS::EMeanThroughput100); + TESTL(aQoSCaps.iPeak == RPacketQoS::EPeakThroughput64000); + TESTL(aQoSCaps.iPrecedence == RPacketQoS::EPriorityMediumPrecedence); + TESTL(aQoSCaps.iReliability == RPacketQoS::EReliabilityClass2); + INFO_PRINTF1(_L("Get QoS Profile Capabilities Test passed")); + + //Get QoS Profile Params + RPacketQoS::TQoSGPRSNegotiated aGPRSQoSNegConfig; + TPckg aGPRSQoSNegPckg(aGPRSQoSNegConfig); + + iGPRSPacketqos.GetProfileParameters(cancelStatus, aGPRSQoSNegPckg); + iGPRSPacketqos.CancelAsyncRequest(EPacketQoSGetProfileParams);//no implementation-does nothing + User::WaitForRequest(cancelStatus); + TESTL(cancelStatus.Int()==KErrNone); + + TESTL(aGPRSQoSNegConfig.ExtensionId()==TPacketDataConfigBase::KConfigGPRS); + TESTL(aGPRSQoSNegConfig.iDelay==RPacketQoS::EDelayClass2); + TESTL(aGPRSQoSNegConfig.iMeanThroughput==RPacketQoS::EMeanThroughput100); + TESTL(aGPRSQoSNegConfig.iPeakThroughput==RPacketQoS::EPeakThroughput64000); + TESTL(aGPRSQoSNegConfig.iPrecedence==RPacketQoS::EPriorityMediumPrecedence); + TESTL(aGPRSQoSNegConfig.iReliability==RPacketQoS::EReliabilityClass2); + INFO_PRINTF1(_L("Get QoS Profile Test passed")); + + // End of RPacketQos tests + iGPRSPacketqos.Close(); + iFirstPrimaryPacketContext.Close(); + iPacketService.Close(); + iPhone.Close(); + ASSERT(RThread().RequestCount()==0); + + return TestStepResult(); + } +