lbs/common/inc/ctlbsstepverifyloginfo.h
branchSymbian2
changeset 1 8758140453c0
child 6 c108117318cb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lbs/common/inc/ctlbsstepverifyloginfo.h	Thu Jan 21 12:53:44 2010 +0000
@@ -0,0 +1,163 @@
+// Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of the License "Symbian Foundation License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.symbianfoundation.org/legal/sfl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+// @file ctlbsstepverifyloginfo.h
+// This contains the header file for verify position info array test step.
+// 
+//
+
+#ifndef __CT_LBS_VERIFY_LOG_INFO_H__
+#define __CT_LBS_VERIFY_LOG_INFO_H__
+
+#include "ctlbsstep.h"
+#include "ctlbsserver.h"
+
+// From test implementation
+#include "lbstransmitlocationlogevent.h"
+//#include "Te_LbsLoggingSuiteStepBase.h"
+
+#include "lbslogger.h"
+#include <logcli.h>
+#include <logview.h>
+#include <logwrap.h>
+
+#include "tlbsutils.h"
+#include "ctlbsasyncwaiter.h"
+
+// Includes for Log Comparison
+#include <lbslogevent.h>
+#include <lbsselflocatelogevent.h>
+#include <lbsexternallocatelogevent.h>
+#include <lbstransmitlocationlogevent.h>
+#include <lbsnetworklocatelogevent.h>
+#include <lbsassistancedatalogevent.h>
+
+// Literals used
+_LIT(KLbsStep_VerifyLogInfo, "LbsStep_VerifyLogInfo");
+_LIT(KDest, "07712345678");
+
+#define REFPOS_LAT				52.2
+#define REFPOS_LONG				0.2
+#define REFPOS_ALT				10
+#define REFPOS_HORZ_ACCURACY	100
+#define REFPOS_VERT_ACCURACY	100
+
+#define REFPOS_LAT_OTHER		49.2
+#define REFPOS_LONG_OTHER		3.5
+#define REFPOS_ALT_OTHER		50.0
+#define REFPOS_HORZ_ACCURACY_OTHER	2.0
+#define REFPOS_VERT_ACCURACY_OTHER	3.0
+
+class CT_LbsStep_VerifyLogInfo : public CT_LbsStep
+	{
+public:
+	static CT_LbsStep_VerifyLogInfo* New(CT_LbsServer& aParent);
+	static CT_LbsStep_VerifyLogInfo* NewL(CT_LbsServer& aParent);
+	~CT_LbsStep_VerifyLogInfo();
+	CT_LbsStep_VerifyLogInfo();
+
+	TVerdict doTestStepPreambleL();
+	TVerdict doTestStepPostambleL();
+
+
+	virtual TVerdict doTestStepL();
+	static TInt SelfLocateLogEventTimestampCompare(const CLbsSelfLocateLogEvent& aLog1,
+										  const CLbsSelfLocateLogEvent& aLog2);
+
+
+	enum TLogType
+	{
+	/** Logging an Autonomous self Locate location request 3.3.1 */
+	EAutonomousSelfLocateRequest = 0,
+	
+	/** Logging an MO-LR Self Locate location request 3.3.2 */
+	EMOLRSelfLocateRequest,
+
+	/** Logging an MO-LR Cell Based location request 3.3.3 */
+	EMOLRCellBasedLocationRequest,
+
+	/** Logging an MO-LR Transmit to 3rd Party Location 3.3.4 */
+	EMOLRTransmitTo3rdPartyLocationRequest,
+
+	/** Logging a Mobile Terminated Location Request 3.3.5 */
+	EMTLR,
+	
+	/** Logging MO-LR Tracking Location Requests 3.3.6 */
+	EMOLRTrackingLocationRequest,
+	
+	/** Logging Autonomous Tracking Location Requests 3.3.7 */
+	EAutonomousTrackingLocationRequest,
+	
+	/** Update an existing Event log entry 3.3.8 */
+	EUpdateExistingEventLogEntry,
+		
+	};
+
+
+private:
+	CT_LbsStep_VerifyLogInfo(CT_LbsServer& aParent);
+	
+	TVerdict ReadFromLogL(TInt aUidForTheLogType);
+	void ClearLog();
+	void InitialiseRHS();
+	void InitialiseRHSforMTLR();
+	TPositionInfo* CommonPositionInfo();
+	
+	//5 log type test mechanisms
+	void SelfLocateLogTest();
+	void NetworkLocateLogTest();
+	void ExternalLocateLogTest();
+	void X3PLocateLogTest();
+	void AssistanceDataLogTest();
+	
+	//Top level functionality
+	void AutonomousSelfLocateLogTest();
+	void MOLRSelfLocateRequest();
+	void MOLRCellBasedLocationRequest();
+	void MOLRTransmitTo3rdPartyLocationRequest();
+	void MTLR();
+	void MOLRTrackingLocationRequest();
+	void AutonomousTrackingLocationRequest();
+	void SecondPositionFromArray(TPositionInfo* aPosInfoSecond);
+	
+	
+	TInt iLogType; // Can be defined in ENums
+	T_LbsUtils iUtils;
+	
+	// Member variables for Log reading
+	RFs itheFs;
+	CLogClient* iclient;
+	CLogViewEvent* iview;
+	CT_LbsAsyncWaiter* iActiveWaiter;
+	TPositionInfo* iRefPosTwo;
+		
+	// Right hand sides of comparisons
+	CLbsSelfLocateLogEvent*			iSelfLocateLogIntiailisedFromValues;
+	CLbsExternalLocateLogEvent*		iExternalLocateLogIntiailisedFromValues;
+	CLbsTransmitLocationLogEvent*	iX3PLogIntiailisedFromValues;
+	CLbsNetworkLocateLogEvent*		iNetworkLocateLogIntiailisedFromValues;
+	CLbsAssistanceDataLogEvent*		iAssistanceDataLogIntiailisedFromValuesFirst; 
+	
+	
+	// Comparison accuracy
+	T_LbsUtils::TComparisonAccuracyType iWhatAccuracyToUse;
+	
+
+
+
+protected:
+	void ConstructL();
+
+	};
+
+#endif //__CT_LBS_VERIFY_LOG_INFO_H__