本文整理汇总了C++中TPositionInfo::SetPosition方法的典型用法代码示例。如果您正苦于以下问题:C++ TPositionInfo::SetPosition方法的具体用法?C++ TPositionInfo::SetPosition怎么用?C++ TPositionInfo::SetPosition使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TPositionInfo
的用法示例。
在下文中一共展示了TPositionInfo::SetPosition方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: latitude
//
// This test checks that a SetLastKnowPosition request
// results in a request to store a position sent to the DB
//
TVerdict CTe_LocMonitorStep11::doTestStepL()
{
if (TestStepResult()==EPass)
{
TPositionInfo positionInfo;
TPosition position;
TReal64 latitude(11), longitude(21);
position.SetCoordinate(latitude, longitude);
positionInfo.SetPosition(position);
RLbsLocMonitorSession locMonSession;
User::LeaveIfError(locMonSession.Connect());
RLbsLocMonitorAreaPositioner areaPositioner;
areaPositioner.OpenL(locMonSession);
CleanupClosePushL(areaPositioner);
iLocMonDbListener->ListenForLocMonDbFeedback();
areaPositioner.SetLastKnownPosition(positionInfo);
iLocMonDbListener->WaitForDbFeedback();
// Check that the position received by the DB is the position
// sent by the test
TESTL(latitude == iLocMonDbListener->iDbData.iPosition.Latitude());
TESTL(longitude == iLocMonDbListener->iDbData.iPosition.Longitude());
CleanupStack::PopAndDestroy(&areaPositioner);
locMonSession.Close();
}
return TestStepResult();
}
示例2:
// ---------------------------------------------------------
// CT_LbsInstallPsyTp273::NotifyPositionUpdate
//
// (other items were commented in a header).
// ---------------------------------------------------------
//
void CT_LbsInstallPsyTp273::NotifyPositionUpdate(
TPositionInfoBase& aPosInfo,
TRequestStatus& aStatus)
{
TInt err = KErrNone;
TTime tt;
tt.UniversalTime();
//Request ID must be unique, use universalime as seed
// to give a random number
TInt64 seed = tt.Int64();
TReal lat = 90 * Math::FRand(seed);
TReal lon = 90 * Math::FRand(seed);
TReal32 alt = (TReal32)(90 * Math::FRand(seed));
TPositionInfo* position = static_cast<TPositionInfo*> (&aPosInfo);
TUid implUid = { KPosImplementationUid };
position->SetModuleId(implUid);
TTime now;
now.UniversalTime();
TPosition posse;
posse.SetCoordinate(lat, lon, alt);
posse.SetTime(now);
position->SetPosition(posse);
TRequestStatus* status = &aStatus;
User::RequestComplete(status, err);
}
示例3: CompleteRequest
void CNetworkPsy2::CompleteRequestByDefault()
{
if(!iRequestStatus)
{
return;
}
if(iPositionInfoBase->PositionClassType() & EPositionInfoClass)
{
TPositionInfo* posInfo = static_cast<TPositionInfo*>(iPositionInfoBase);
TPosition pos;
pos.SetCoordinate(1.0, 1.0, 1.0);
pos.SetAccuracy(1.0, 1.0);
posInfo->SetPosition(pos);
}
CompleteRequest(KErrNone);
}
示例4: switch
// ---------------------------------------------------------
// CTestPsy4Positioner::NotifyPositionUpdate
//
// (other items were commented in a header).
// ---------------------------------------------------------
//
void CT_LbsTestProxyPsy5Positioner::NotifyPositionUpdate(TPositionInfoBase& aPosInfo, TRequestStatus& aStatus)
{
TPositionInfo* posInfo = static_cast<TPositionInfo*> (&aPosInfo);
TPosition pos;
pos.SetCoordinate(99, 99, 99);
posInfo->SetPosition(pos);
TUint32 request = posInfo->UpdateType();
switch (request)
{
case 304:
iRequestHandler->SetErrorCode(KErrNone);
break;
default:
iRequestHandler->SetErrorCode(KErrUnknown);
break;
}
iRequestHandler->NotifyPositionUpdate(posInfo, &aStatus);
}
示例5:
void CLcfPsyDummy3::GetBasicPositionInfoL(TPositionInfoBase& aPosInfo)
{
// The position info object is at least a TPositionInfo
TPositionInfo* posInfo =
static_cast<TPositionInfo*>(&aPosInfo);
TPosition pos;
// Calculate the position and fill in the position info
// object
pos.SetCoordinate(67.567, -12.34, 45.32);
// set horizontal and vertical accuracy
pos.SetAccuracy(150.0, 500.0);
// set time of fix
pos.SetCurrentTime();
// Set position in position info.
posInfo->SetPosition(pos);
// Set the implementation uid
posInfo->SetModuleId(ImplementationUid());
}
示例6:
void CLcfPsyDummy1::GetBasicPositionInfoL(TPositionInfoBase& aPosInfo)
{
// The position info object is at least a TPositionInfo
TPositionInfo* posInfo =
static_cast<TPositionInfo*>(&aPosInfo);
TPosition pos;
// Calculate the position and fill in the position info
// object
// Latitude, Longtitude, altitude
pos.SetCoordinate(57.1, 11.3, 32.5);
// set horizontal and vertical accuracy
pos.SetAccuracy(40.0, 40.0);
// set time of fix
pos.SetCurrentTime();
// Set position in position info.
posInfo->SetPosition(pos);
// Set the implementation uid
posInfo->SetModuleId(ImplementationUid());
}
示例7: messagePtr
/** Perform Cmtlr24Step test step.
This test verifies that the SUPL Protocol Module correctly handles
an MT-LR Network requested Locate Terminal Based sequence (assistance data
delivered via an RRLP payload).
@return TVerdict test result code
*/
TVerdict Cmtlr24Step::doTestStepL()
{
INFO_PRINTF1(_L("\t********************************************************************"));
INFO_PRINTF1(_L("\tMTLR - LBS sends response before connection is established)"));
INFO_PRINTF1(_L("\t********************************************************************"));
INFO_PRINTF1(_L("- START -"));
// Initiate MT-LR
// Generate received SUPL INIT message (test message content #0)
TPtr8 messagePtr(iReceiveBuffer.Des());
TInt err = iSuplInitGenerator->GenerateSuplInitL(0, messagePtr);
if (err != KErrNone)
{
SetTestStepResult(EFail);
return TestStepResult();
}
// Inject SUPL INIT using the SUPL Push API
INFO_PRINTF1(_L("\tLBS (SuplPush) -> OnSuplInit()"));
TLbsSuplPushRequestId reqId = 12445;
TPtrC8 message(messagePtr);
iSuplPush->SuplInit(reqId, message, 0);
// Check Gateway receives a Privacy request and Location Request
INFO_PRINTF1(_L("\tLBS <- ProcessLocationRequest()"));
if (EFail == CheckGatewayCallbackL(CSuplGatewayObserver::EProcessLocationRequest) ||
!iGatewayObserver->IsPrivReqReceived() ||
MLbsNetworkProtocolObserver::EServiceMobileTerminated != iGatewayObserver->LocType() )
{
SetTestStepResult(EFail);
return TestStepResult();
}
// Wait a couple of seconds for user instructions
INFO_PRINTF1(_L("...user taking a couple of seconds for privacy response"));
if (iGatewayObserver->IsMoreObserverActivity() ||
iNetworkObserver->IsMoreObserverActivity())
{
SetTestStepResult(EFail);
return TestStepResult();
}
// LBS delivers privacy response
INFO_PRINTF1(_L("\tLBS -> PrivacyResponse (EPrivacyResponseAccepted)"));
CLbsNetworkProtocolBase::TLbsPrivacyResponse privacyResponse = CLbsNetworkProtocolBase::EPrivacyResponseAccepted;
iModule->RespondPrivacyRequest(iGatewayObserver->SessionIdValue(), privacyResponse, 0);
// Check Connection Manager receives a request for connecting
if (EFail == CheckNetworkCallbackL(CSuplNetworkTestObserver::EConnectReq))
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\t\t\t\t\t\t\t\t ConnectionRequest -> NET"));
// **************** Location Response is sent by LBS before the connection is up *****************
// **************************************************************************************************
// Fake LBS sending results (position) to SPM
INFO_PRINTF1(_L("\tLBS -> RespondLocationRequest"));
TReal64 latitude = 10;
TReal64 longitude = 0;
TReal32 HorAccuracy = 10;
TPositionInfo mobilePosInfo;
TTime utcTime;
utcTime.UniversalTime();
TCoordinate coor(latitude,longitude);
TPosition mobilePos(TLocality(coor,HorAccuracy),utcTime);
mobilePosInfo.SetPosition(mobilePos);
iModule->RespondLocationRequest(iGatewayObserver->SessionIdValue(),KErrNone,mobilePosInfo);
// Wait a couple of seconds for connection activation
INFO_PRINTF1(_L("...connection taking a couple of seconds to activate"));
if (iGatewayObserver->IsMoreObserverActivity() ||
iNetworkObserver->IsMoreObserverActivity())
{
SetTestStepResult(EFail);
return TestStepResult();
}
// Simulate the connection is up (inject that event)
INFO_PRINTF1(_L("\t\t\t\t\t\t\t\t Connected <- NET"));
iNetworkObserver->InjectConnectedIndication(iNetworkObserver->SessionId());
// Check Connection Manager receives a request to send a SUPL POS INIT
// with the assistance data mask requested by the gateway
if (EFail == CheckNetworkCallbackL(CSuplNetworkTestObserver::ESendSuplPosInitSendReq))
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\t\t\t\t\t\t\t\t SUPL POS INIT -> NET"));
//.........这里部分代码省略.........
示例8: TestStepResult
//.........这里部分代码省略.........
(dataRequestMask & iGatewayObserver->AssistanceDataSetMask() != dataRequestMask) )
{
SetTestStepResult(EFail);
return TestStepResult();
}
// Ref Loc has been requested. Make sure it's been notified (the callback mechanism does
// not work well because EProcessAssistanceData overwrites EProcessLocationUpdate as they
// happen in the same RunL of the SUPL Protocol). Instead, a flag has to be checked after
// having received EProcessAssistanceData above
if (!iGatewayObserver->IsRefLocNotified())
{
SetTestStepResult(EFail);
return TestStepResult();
}
// Reference Location is reported before Assistance Data...if we got this far,
// both ref loc and assist data have been notified:
INFO_PRINTF1(_L("\tLBS <- ProcessLocationUpdate(Reference Location)"));
INFO_PRINTF1(_L("\tLBS <- ProcessAssistanceData()"));
// Check gateway receives a location request (due to the RRLP Measure Position Request)
//
INFO_PRINTF1(_L("\tLBS <- ProcessLocationRequest()"));
if (EFail == CheckGatewayCallbackL(
CSuplGatewayObserver::EProcessLocationRequest) ||
MLbsNetworkProtocolObserver::EServiceSelfLocation != iGatewayObserver->LocType())
{
SetTestStepResult(EFail);
return TestStepResult();
}
// Fake LBS sending results (position) to SPM
INFO_PRINTF1(_L("\tLBS -> RespondLocationRequest"));
TReal64 latitude = 10;
TReal64 longitude = 0;
TReal32 HorAccuracy = 10;
TPositionInfo mobilePosInfo;
TTime utcTime;
utcTime.UniversalTime();
TCoordinate coor(latitude,longitude);
TPosition mobilePos(TLocality(coor,HorAccuracy),utcTime);
mobilePosInfo.SetPosition(mobilePos);
iModule->RespondLocationRequest(sessionId1,KErrNone,mobilePosInfo);
// Check the Connection Manager receives a request to send a SUPL POS (RRLP MEASURE POSITION RESPONSE)
//
if (EFail == CheckNetworkCallbackL(CSuplNetworkTestObserver::ESendSuplPosSendReq))
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\t\t\t\t\t\t\t\t SUPL POS - RRLP Measure Position Response -> NET"));
// ********* DONNOT Inject a SUPL END (from SUPL server) *************
// This will test that the 10 second timer goes off due to inactivity after
// sending the last SUPL POS message.
// The SUPL Protocol Module will send a SUPL END and close the connection.
// ********************************************************************
// Check the Connection Manager receives a request to send a SUPL END
if (EFail == CheckNetworkCallbackL(CSuplNetworkTestObserver::ESendSuplEndSendReq))
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\t\t\t\t\t\t\t\t SUPL END -> NET"));
// Check gateway session completed
if (EFail == CheckGatewayCallbackL(
CSuplGatewayObserver::EProcessSessionComplete))
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessSessionComplete"));
// Check Connection Manager receives a disconnection request
if (EFail == CheckNetworkCallbackL(CSuplNetworkTestObserver::EDisconnectReq))
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\t\t\t\t\t\t\t\t DisconnectRequest -> NET"));
// Check if more observer activity takes place
if (iGatewayObserver->IsMoreObserverActivity() ||
iNetworkObserver->IsMoreObserverActivity())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("- END -"));
SetTestStepResult(EPass);
return TestStepResult();
}
示例9: NotifyMeasurementReportLocation
void CT_LbsClientStep_PartialUpdate::NotifyMeasurementReportLocation(const TPositionInfo& aPosition)
{
T_LbsUtils utils;
T_LbsUtils::TComparisonAccuracyType accType;
if(iParent.iSharedData->iTestModuleInUse)
{
accType = T_LbsUtils::EExactAccuracy;
}
else
{
accType = T_LbsUtils::ERoughAccuracy;
}
switch(iTestCaseId)
{
case 21:
case 22:
{
TPositionInfo refPosInfo;
refPosInfo.SetPosition(iRefPos);
if (!utils.Compare_PosInfo(refPosInfo, aPosition, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
break;
}
case 24:
case 25:
case 28:
{
TPositionInfo* verPosInfoPtr = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iVerifyPosInfoArr[0]);
if (!utils.Compare_PosInfo(*verPosInfoPtr, aPosition, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
break;
}
/*case 25:
{
TPositionInfo* verPosInfoPtr = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iVerifyPosInfoArr[1]);
if (!utils.Compare_PosInfo(*verPosInfoPtr, aPosition, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
break;
}*/
case 26:
{
//INFO_PRINTF1(_L("Position should not be sent to Network"));
//SetTestStepResult(EFail);
break;
}
default:
break;
}
}
示例10: TestStepResult
/** Perform CNiLrStep1 test step.
This test verifies that the Test Protocol Module correctly handles
a Network Induced location request.
@return TVerdict test result code
*/
TVerdict CNiLrStep1::doTestStepL()
{
INFO_PRINTF1(_L("\t********************************************************************"));
INFO_PRINTF1(_L("\tNILR basic procedure"));
INFO_PRINTF1(_L("\t********************************************************************"));
INFO_PRINTF1(_L("- START -"));
// Initiate NI-LR
INFO_PRINTF1(_L("\t ProcessMeasurementControlLocation <- NET"));
TPositionInfo refLoc;
TPosition refPos;
refPos.SetHorizontalAccuracy(KRefPosHorizAcc);
refLoc.SetPosition(refPos);
RLbsAssistanceDataBuilderSet assistData;
CleanupClosePushL(assistData);
assistData.OpenL();
SetDummyAssistanceData(assistData, EAssistanceDataReferenceTime);
TLbsNetPosRequestQuality quality;
quality.SetMinHorizontalAccuracy(KLocReqHorizAcc);
iNetworkObserver->ProcessMeasurementControlLocationL(refLoc, assistData, quality);
CleanupStack::PopAndDestroy(&assistData);
// Check gateway receives Assistance data
if (EFail == CheckGatewayCallbackL(
CGatewayObserver::EProcessAssistanceData) ||
EAssistanceDataReferenceTime != iGatewayObserver->AssistanceDataSetMask())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessAssistanceData"));
// Check gateway receives Network Based location
if (EFail == CheckGatewayCallbackL(
CGatewayObserver::EProcessLocationUpdate) ||
KRefPosHorizAcc != iGatewayObserver->ReferencePos().HorizontalAccuracy())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessLocationUpdate"));
// Check gateway receives Location Request
if (EFail == CheckGatewayCallbackL(
CGatewayObserver::EProcessLocationRequest) ||
iGatewayObserver->IsLocEmergency() ||
MLbsNetworkProtocolObserver::EServiceNetworkInduced != iGatewayObserver->LocType() ||
KLocReqHorizAcc != iGatewayObserver->LocQuality().MinHorizontalAccuracy())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessLocationRequest"));
// Generate Location Response
INFO_PRINTF1(_L("\tLBS -> RespondLocationRequest"));
TInt reason = KErrNone;
TPositionInfo mobilePosInfo;
TPosition mobilePos;
mobilePos.SetHorizontalAccuracy(KMobilePosHorizAcc);
mobilePosInfo.SetPosition(mobilePos);
iModule->RespondLocationRequest(iGatewayObserver->SessionIdValue(),
reason, mobilePosInfo);
// Check network receives Location Response
if (EFail == CheckNetworkCallbackL(
CNetworkObserver::EMeasurementReportLocation) ||
KMobilePosHorizAcc != iNetworkObserver->MobilePos().HorizontalAccuracy())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\t MeasurementReportLocation -> NET"));
// Check gateway session completed
if (EFail == CheckGatewayCallbackL(
CGatewayObserver::EProcessSessionComplete))
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessSessionComplete"));
// Check if more observer activity takes place
if (iGatewayObserver->IsMoreObserverActivity() ||
iNetworkObserver->IsMoreObserverActivity())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("- END -"));
SetTestStepResult(EPass);
return TestStepResult();
//.........这里部分代码省略.........
示例11: if
void CT_LbsConflictStep_X3PTimerPush::NotifyMeasurementControlLocation(const TPositionInfo& aPosition,
const RLbsAssistanceDataBuilderSet& aData,
const TLbsNetPosRequestQuality& aQuality)
{
T_LbsUtils utils;
TInt err;
// Determine and record sequence event.
if (iState == EReqX3PTimer)
{
INFO_PRINTF1(_L("Got - X3P(TIMER1) MOLR - NetSim Notify Measurement Control Location - Event."));
// For the first attempt (before pre-emption) we *may* get this, depending how far
// the request has run, but we can't guarantee it, so it's not added to the
// verify list but ...
// ... if we do get one of these, we must also get a failure message so add that to adhoc list
SetVerifyAdhocEvent(EX3P_TIMER_MOLR_NetSim_Got_NotifyMeasurementReportControlFailure);
}
else if(iState == EReqX3PTimer2)
{
INFO_PRINTF1(_L("Got - X3P(TIMER2) MOLR - NetSim Notify Measurement Control Location - Event."));
SetCurrentSeqEvent(EX3P_TIMER_MOLR_NetSim_Got_NotifyMeasurementControlLocation);
}
else if(iState == EReqX3PPush)
{
INFO_PRINTF1(_L("Got - X3P(PUSH) MOLR - NetSim Notify Measurement Control Location - Event."));
SetCurrentSeqEvent(EX3P_PUSH_MOLR_NetSim_Got_NotifyMeasurementControlLocation);
}
// Verify the reference position.
TPositionInfo verifyRefPosInfo;
verifyRefPosInfo.SetPosition(iRefPos);
if (!utils.Compare_PosInfo(verifyRefPosInfo, aPosition))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
// Verify the assistance data.
RLbsAssistanceDataBuilderSet& data = const_cast<RLbsAssistanceDataBuilderSet&>(aData);
RUEPositioningGpsReferenceTimeBuilder* refTimeBuilder = NULL;
data.GetDataBuilder(refTimeBuilder);
// Create a reader from the builder's data to allow us to verify the actual
// assistance data.
RUEPositioningGpsReferenceTimeReader refTimeReader;
TRAP(err, refTimeReader.OpenL());
if (err == KErrNone)
{
refTimeReader.DataBuffer() = refTimeBuilder->DataBuffer();
if (!utils.VerifySimpleAssistanceData(refTimeReader))
{
INFO_PRINTF1(_L("Failed test, assistance data incorrect."));
SetTestStepResult(EFail);
}
refTimeReader.Close();
}
else
{
INFO_PRINTF2(_L("Failed test, assistance data reader err %d."), err);
SetTestStepResult(EFail);
}
// TODO: Check if we can verify aQuality in any way.
(void)aQuality;
}
示例12: TestStepResult
/** Perform CNiLrStep2 test step.
This test verifies that the Test Protocol Module correctly handles
a NI-LR with location response timeout.
@return TVerdict test result code
*/
TVerdict CNiLrStep2::doTestStepL()
{
INFO_PRINTF1(_L("\t********************************************************************"));
INFO_PRINTF1(_L("\tNILR - location response timeout"));
INFO_PRINTF1(_L("\t********************************************************************"));
INFO_PRINTF1(_L("- START -"));
// Initiate NI-LR
INFO_PRINTF1(_L("\t ProcessMeasurementControlLocation <- NET"));
TPositionInfo refLoc;
TPosition refPos;
refPos.SetHorizontalAccuracy(KRefPosHorizAcc);
refLoc.SetPosition(refPos);
RLbsAssistanceDataBuilderSet assistData;
CleanupClosePushL(assistData);
assistData.OpenL();
SetDummyAssistanceData(assistData, EAssistanceDataReferenceTime);
TLbsNetPosRequestQuality quality;
quality.SetMinHorizontalAccuracy(KLocReqHorizAcc);
iNetworkObserver->ProcessMeasurementControlLocationL(refLoc, assistData, quality);
CleanupStack::PopAndDestroy(&assistData);
// Check gateway receives Assistance data
if (EFail == CheckGatewayCallbackL(
CGatewayObserver::EProcessAssistanceData) ||
EAssistanceDataReferenceTime != iGatewayObserver->AssistanceDataSetMask())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessAssistanceData"));
// Check gateway receives Network Based location
if (EFail == CheckGatewayCallbackL(
CGatewayObserver::EProcessLocationUpdate) ||
KRefPosHorizAcc != iGatewayObserver->ReferencePos().HorizontalAccuracy())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessLocationUpdate"));
// Check gateway receives Location Request
if (EFail == CheckGatewayCallbackL(
CGatewayObserver::EProcessLocationRequest) ||
iGatewayObserver->IsLocEmergency() ||
MLbsNetworkProtocolObserver::EServiceNetworkInduced != iGatewayObserver->LocType() ||
KLocReqHorizAcc != iGatewayObserver->LocQuality().MinHorizontalAccuracy())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessLocationRequest"));
// Delay activity by 70 secs
INFO_PRINTF1(_L("*** DELAY 70 SECONDS ***"));
User::After(TTimeIntervalMicroSeconds32(25000000));
// Check network receives Location error response
if (EFail == CheckNetworkCallbackL(
CNetworkObserver::EMeasurementControlFailure) ||
KErrTimedOut != iNetworkObserver->MeasurementFailure())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\t MeasurementControlFailure (TIMEOUT) -> NET"));
// Check gateway session timeout is reported
if (EFail == CheckGatewayCallbackL(
CGatewayObserver::EProcessSessionComplete) ||
KErrTimedOut != iGatewayObserver->SessionCloseReason())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("\tLBS <- ProcessSessionComplete (TIMEOUT)"));
// Check if more observer activity takes place
if (iGatewayObserver->IsMoreObserverActivity() ||
iNetworkObserver->IsMoreObserverActivity())
{
SetTestStepResult(EFail);
return TestStepResult();
}
INFO_PRINTF1(_L("- END -"));
SetTestStepResult(EPass);
return TestStepResult();
}
示例13: VerifyPosInfos
void CT_LbsClientStep_PartialUpdate::VerifyPosInfos()
{
T_LbsUtils utils;
T_LbsUtils::TComparisonAccuracyType accType;
if(iParent.iSharedData->iTestModuleInUse)
{
accType = T_LbsUtils::EExactAccuracy;
}
else
{
accType = T_LbsUtils::ERoughAccuracy;
}
switch(iTestCaseId)
{
case 5:
case 6:
{
//Verify Position returned - It should be the position returned earlier
TPositionInfo* curPosInfoPtr1 = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iCurrentPosInfoArr[0]);
TPositionInfo* curPosInfoPtr2 = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iCurrentPosInfoArr[1]);
TPositionInfo* verPosInfoPtr = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iVerifyPosInfoArr[0]);
if (!utils.Compare_PosInfo(*curPosInfoPtr1, *verPosInfoPtr, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
if (!utils.Compare_PosInfo(*curPosInfoPtr2, *verPosInfoPtr, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
break;
}
case 7:
{
//Verify Position returned - It should be the position returned earlier
TPositionInfo* curPosInfoPtr1 = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iCurrentPosInfoArr[0]);
TPositionInfo* curPosInfoPtr2 = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iCurrentPosInfoArr[1]);
TPositionInfo* verPosInfoPtr1 = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iVerifyPosInfoArr[0]);
TPositionInfo* verPosInfoPtr2 = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iVerifyPosInfoArr[1]);
if (!utils.Compare_PosInfo(*curPosInfoPtr1, *verPosInfoPtr1, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
if (!utils.Compare_PosInfo(*curPosInfoPtr2, *verPosInfoPtr2, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
break;
}
case 21:
case 22:
{
//Verify Position returned - It should be the position returned earlier
TPositionInfo* curPosInfoPtr1 = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iCurrentPosInfoArr[0]);
TPositionInfo* curPosInfoPtr2 = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iCurrentPosInfoArr[1]);
TPositionInfo refPosInfo;
refPosInfo.SetPosition(iRefPos);
if (!utils.Compare_PosInfo(*curPosInfoPtr1, refPosInfo, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
if (!utils.Compare_PosInfo(*curPosInfoPtr2, refPosInfo, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
break;
}
case 23:
{
//Verify Position returned - It should be the position returned earlier
TPositionInfo* curPosInfoPtr = reinterpret_cast<TPositionInfo*>(iParent.iSharedData->iCurrentPosInfoArr[0]);
TPositionInfo refPosInfo;
refPosInfo.SetPosition(iRefPos);
if (!utils.Compare_PosInfo(*curPosInfoPtr, refPosInfo, accType))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
//.........这里部分代码省略.........
示例14: if
void CT_LbsConflictStep_X3PPushMenu::NotifyMeasurementControlLocation(const TPositionInfo& aPosition,
const RLbsAssistanceDataBuilderSet& aData,
const TLbsNetPosRequestQuality& aQuality)
{
T_LbsUtils utils;
TInt err;
// Determine and record sequence event.
if (iState == EReqX3PMenu)
{
INFO_PRINTF1(_L("Got - X3P(MENU) MOLR - NetSim Notify Measurement Control Location - Event."));
SetCurrentSeqEvent(EX3P_MENU_MOLR_NetSim_Got_NotifyMeasurementControlLocation);
}
else if(iState == EReqX3PPush)
{
INFO_PRINTF1(_L("Got - X3P(PUSH) MOLR - NetSim Notify Measurement Control Location - Event."));
SetCurrentSeqEvent(EX3P_PUSH_MOLR_NetSim_Got_NotifyMeasurementControlLocation);
}
// Verify the reference position.
TPositionInfo verifyRefPosInfo;
verifyRefPosInfo.SetPosition(iRefPos);
if (!utils.Compare_PosInfo(verifyRefPosInfo, aPosition))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
// Verify the assistance data.
RLbsAssistanceDataBuilderSet& data = const_cast<RLbsAssistanceDataBuilderSet&>(aData);
RUEPositioningGpsReferenceTimeBuilder* refTimeBuilder = NULL;
data.GetDataBuilder(refTimeBuilder);
// Create a reader from the builder's data to allow us to verify the actual
// assistance data.
RUEPositioningGpsReferenceTimeReader refTimeReader;
TRAP(err, refTimeReader.OpenL());
if (err == KErrNone)
{
refTimeReader.DataBuffer() = refTimeBuilder->DataBuffer();
if (!utils.VerifySimpleAssistanceData(refTimeReader))
{
INFO_PRINTF1(_L("Failed test, assistance data incorrect."));
SetTestStepResult(EFail);
}
refTimeReader.Close();
}
else
{
INFO_PRINTF2(_L("Failed test, assistance data reader err %d."), err);
SetTestStepResult(EFail);
}
// TODO: Check if we can verify aQuality in any way.
(void)aQuality;
}
示例15: if
void CT_LbsConflictStep_selflocatex3ppush::NotifyMeasurementControlLocation(const TPositionInfo& aPosition,
const RLbsAssistanceDataBuilderSet& aData,
const TLbsNetPosRequestQuality& aQuality)
{
T_LbsUtils utils;
TInt err;
// Determine and record sequence event.
if (iState == EReqPosUpdate)
{
INFO_PRINTF1(_L("Got - Self MOLR - NetSim Notify Measurement Control Location - Event."));
// cannot record this event since it may/maynot occur depending on timing but ...
// SetCurrentSeqEvent(ESelf_MOLR_NetSim_Got_NotifyMeasurementControlLocation);
// ... if we do get one of these, we must get a failure message so add that to adhoc list
SetVerifyAdhocEvent(ESelf_MOLR_NetSim_Got_NotifyMeasurementReportControlFailure);
}
else if(iState == EReqX3P)
{
INFO_PRINTF1(_L("Got - X3P MOLR - NetSim Notify Measurement Control Location - Event."));
SetCurrentSeqEvent(EX3P_PUSH_MOLR_NetSim_Got_NotifyMeasurementControlLocation);
}
// Verify the reference position.
TPositionInfo verifyRefPosInfo;
verifyRefPosInfo.SetPosition(iRefPos);
if (!utils.Compare_PosInfo(verifyRefPosInfo, aPosition))
{
INFO_PRINTF1(_L("Failed test, position incorrect."));
SetTestStepResult(EFail);
}
// Verify the assistance data.
RLbsAssistanceDataBuilderSet& data = const_cast<RLbsAssistanceDataBuilderSet&>(aData);
RUEPositioningGpsReferenceTimeBuilder* refTimeBuilder = NULL;
data.GetDataBuilder(refTimeBuilder);
// Create a reader from the builder's data to allow us to verify the actual
// assistance data.
RUEPositioningGpsReferenceTimeReader refTimeReader;
TRAP(err, refTimeReader.OpenL());
if (err == KErrNone)
{
refTimeReader.DataBuffer() = refTimeBuilder->DataBuffer();
if (!utils.VerifySimpleAssistanceData(refTimeReader))
{
INFO_PRINTF1(_L("Failed test, assistance data incorrect."));
SetTestStepResult(EFail);
}
refTimeReader.Close();
}
else
{
INFO_PRINTF2(_L("Failed test, assistance data reader err %d."), err);
SetTestStepResult(EFail);
}
// TODO: Check if we can verify aQuality in any way.
(void)aQuality;
}