loggingservices/eventlogger/test/inc/TEST.H
branchRCL_3
changeset 10 31a8f755b7fe
parent 9 667e88a979d7
child 11 211563e4b919
--- a/loggingservices/eventlogger/test/inc/TEST.H	Mon Mar 15 12:46:30 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,347 +0,0 @@
-// 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:
-//
-
-#ifndef __TEST_H__
-#define __TEST_H__
-
-#include <e32test.h>
-#include <s32file.h>
-#include <logcli.h>
-#include <logengdurations.h>
-#include <logengevents.h>
-#include <logwraplimits.h>
-#include <logfilterandeventconstants.hrh>
-#include <e32base.h>
-#include <f32file.h>
-#include <logviewchangeobserver.h>
-#include <logclientchangeobserver.h>
-#include "LogChangeDefinition.h"
-#include "LogServShared.h"
-#include "LogCliServShared.h"
-#include <babackup.h>
-#include "t_logservsession.h"
-#include "logcntdef.h"
-
-#ifdef LOGGING_ENABLED
-
-#include <f32file.h>
-#include <flogger.h>
-
-
-
-_LIT(KLogFileName, "LogEng.txt");
-_LIT(KLogFolder,   "LogEng");
-_LIT(KTimeFormat, "%02d.%02d:%02d:%06d    ");
-_LIT(KTextFormat, "%S");
-const TInt KLogEngLogBufferSize = 256;
-
-class Log : public RFileLogger
-	{
-public:
-	static void New();
-	static void Write(const TDesC& aText);
-	static void WriteFormat(TRefByValue<const TDesC> aFmt, ...);
-private:
-	static void PruneLogFile();
-  };
-
-#define LOGNEW							Log::New()
-#define LOGTEXT(AAA)					{ _LIT(KString, AAA); Log::Write(KString); }
-#define LOGTEXT2(AAA, BBB)				{ _LIT(KString, AAA); Log::WriteFormat(TRefByValue<const TDesC>(KString()), BBB); }
-#define LOGTEXT3(AAA, BBB, CCC)			{ _LIT(KString, AAA); Log::WriteFormat(TRefByValue<const TDesC>(KString()), BBB, CCC); }
-#define LOGTEXT4(AAA, BBB, CCC, DDD)	{ _LIT(KString, AAA); Log::WriteFormat(TRefByValue<const TDesC>(KString()), BBB, CCC, DDD); }
-
-#else//LOGGING_ENABLED
-
-#define LOGNEW
-#define LOGTEXT(AAA)
-#define LOGTEXT2(AAA, BBB)
-#define LOGTEXT3(AAA, BBB, CCC)
-#define LOGTEXT4(AAA, BBB, CCC, DDD)
-
-#endif//LOGGING_ENABLED
-
-//======================================================================================================
-
-#define TEST_STRING(s) _S(s)
-
-//======================================================================================================
-
-//TheTest object must be defined in the main test cpp file.
-GLREF_D RTest test;
-
-void LogTestBoolExpr(TBool aRes, const TText* aFile, TInt aLine);
-void LogCheck(TInt aValue, TInt aExpected, const TText* aFile, TInt aLine);
-void LogCheckU(TUint aValue, TUint aExpected, const TText* aFile, TInt aLine);
-
-#define TEST(arg)                   LogTestBoolExpr(arg, TEST_STRING(__FILE__), __LINE__)
-#define TEST2(aValue, aExpected)    LogCheck(aValue, aExpected, TEST_STRING(__FILE__), __LINE__)
-#define TEST2U(aValue, aExpected)   LogCheckU(aValue, aExpected, TEST_STRING(__FILE__), __LINE__)
-
-//======================================================================================================
-
-void LogLeave(TInt aErr, const TText* aFile, TInt aLine);
-
-#define LEAVE(err)           LogLeave(err, TEST_STRING(__FILE__), __LINE__)
-#define LEAVE_IF_ERROR(err)  do {if(err < KErrNone) LogLeave(err, TEST_STRING(__FILE__), __LINE__);} while(0)
-
-//======================================================================================================
-
-void LogPanic(const TDesC& aCategory, TInt aErr, const TText* aFile, TInt aLine);
-
-#define PANIC(cat, err)     LogPanic(cat, err, TEST_STRING(__FILE__), __LINE__)
-
-//======================================================================================================
-
-// Globals 
-GLREF_D CTrapCleanup* theCleanup;
-GLREF_D CActiveScheduler *testScheduler;
-GLREF_D RFs theFs;
-GLREF_D TFileName theLogName;
-GLREF_D RFile theLog;
-GLREF_D RLogTestSession theLogServ;
-
-#define __FILE_FAILNEXT(X) theFs.SetErrorCondition(KErrGeneral, X)
-#define __FILE_RESET theFs.SetErrorCondition(KErrNone, 0)
-
-#if defined(_UNICODE)
-	_LIT(KLogDatabaseName,"c:\\private\\101f401d\\Logdbu.dat");
-#else
-	_LIT(KLogDatabaseName,"c:\\private\\101f401d\\Logdb.dat");
-#endif
-
-
-//**********************************
-// CTestActive
-//**********************************
-
-class CTestActive : public CActive
-	{
-public:
-	CTestActive(TInt aPriority = EPriorityIdle-100);
-	~CTestActive();
-	void StartL();
-	void StartL(TInt);
-protected:
-	void DoCancel();
-	void RunL();
-private:
-	TBool iDelayCompletion;
-	TRequestStatus iStoredStatus;
-	TInt iDelayTime;
-	};
-
-void doTestsL();
-
-
-//**********************************
-// CTestTimer
-//**********************************
-
-class CTestTimer : public CTimer
-	{
-public:
-	static CTestTimer* NewL();
-private:
-	CTestTimer();
-	void RunL();	
-	};
-
-//**********************************
-// TestUtils
-//**********************************
-
-class TestUtils
-	{
-public:
-	static void Initialize(const TDesC& aName);
-	static void DeleteDatabaseL(TBool aCloseBeforeDelete = ETrue);
-	static HBufC* CreateBufLC(TInt aLength);
-	static HBufC8* CreateBuf8LC(TInt aLength);
-	static TBool FiltersEqual(const CLogFilter& aFilter1, const CLogFilter& aFilter2);
-	static TBool EventsEqual(const CLogEvent& aEvent1, const CLogEvent& aEvent2);
-	static TBool TypesEqual(const CLogEventType& aType1, const CLogEventType& aType2);
-	static TBool WaitForKeyL(TTimeIntervalMicroSeconds32 aDelay, TKeyCode& aKeyCode);
-	static TBool FileExists(const TDesC& aFile);
-	static void SetLogServHeapFailureL(RHeap::TAllocFail aType, TInt aRate);
-	static TBool IsDatabaseOpenL();
-	static TInt DatabaseSizeL();
-	static TInt AddEventL();
-	static void AddViewTestEventsL();
-	static void AddEventTypeL();
-	static void CopyCorruptDbL();
-	static void CopyCorruptDamagedDbL();
-	static void CopyOldDbL();
-	static void TestInvalidSchemaL();
-	static TBool MatchingEnabledL();
-
-private:
-	// starts t_HiCapHelper.exe which has sufficient capability
-    static TInt ExecuteRemoteL(const TDesC& aCommandLineArg);
-	};
-
-#define __LOGSERV_UHEAP_FAILNEXT(X) TestUtils::SetLogServHeapFailureL(RHeap::EFailNext, X)
-#define __LOGSERV_UHEAP_RESET TestUtils::SetLogServHeapFailureL(RHeap::ENone, 0)
-
-//**********************************
-// CLogViewChangeObserver
-//**********************************
-
-class CLogViewChangeObserver : public CActive, public MLogViewChangeObserver
-	{
-public:
-	enum TStopType
-		{
-		EStopOnChanges = 0,
-		EStopOnRunL,
-		EStopOnBoth,
-		EStopOnCount,
-		EDontStopScheduler
-		};
-public:
-	static CLogViewChangeObserver* NewLC();
-	~CLogViewChangeObserver();
-
-protected:
-	CLogViewChangeObserver();
-
-public:
-	inline void StartCollectingChanges() 
-		{ 
-		Reset(); 
-		iType = EDontStopScheduler; 
-		}
-	CLogChangeDefinition* WaitForChangesLC(TStopType aType = EStopOnChanges, TInt aCount = 0);
-	CLogChangeDefinition* WaitForChangesLC(TCallBack aCallBack, TStopType aType, TInt aCount = 0);
-	inline TBool HaveChanges() const 
-		{ 
-		return iChanges != NULL; 
-		}
-	inline const CLogChangeDefinition& Changes() const 
-		{ 
-		__ASSERT_ALWAYS(iChanges, User::Invariant()); 
-		return *iChanges; 
-		}
-	inline void SetActive() 
-		{ 
-		CActive::SetActive(); 
-		iStatus = KRequestPending; 
-		}
-	inline void ResetChanges() 
-		{ 
-		__ASSERT_ALWAYS(iChanges, User::Invariant()); 
-		iChanges->Reset(); 
-		}
-
-public:
-	void HandleLogViewChangeEventAddedL(TLogId aId,   TInt aViewIndex, TInt aChangeIndex, TInt aTotalChangeCount);
-	void HandleLogViewChangeEventChangedL(TLogId aId, TInt aViewIndex, TInt aChangeIndex, TInt aTotalChangeCount);
-	void HandleLogViewChangeEventDeletedL(TLogId aId, TInt aViewIndex, TInt aChangeIndex, TInt aTotalChangeCount);
-
-private:
-	void RunL();
-	void DoCancel();
-
-private:
-	void Reset();	 
-
-protected:
-	void CheckForSchedulerStop();
-	void AddChangeL(TLogDatabaseChangeType aType, TLogId aId, TInt aViewIndex);
- 	
-private:
-	TInt iExpectedChangeCount;
-	TBool iHaveFinishedOperation;
-	TBool iHaveObtainedChanges;
-	TBool iSchedulerStarted;
-	TStopType iType;
-	CLogChangeDefinition* iChanges;
-	TBool iHaveCallBack;
-	TCallBack iCallBack;
-	};
-
-//**********************************
-// CLogViewChangeObserverErrorTest
-//**********************************
-
-class CLogViewChangeObserverErrorTest : public  CLogViewChangeObserver 
-	{
-public:
-	static CLogViewChangeObserverErrorTest* NewLC();
-
-private:
-	CLogViewChangeObserverErrorTest();
-
-public:
-	void HandleLogViewChangeEventAddedL(TLogId aId,   TInt aViewIndex, TInt aChangeIndex, TInt aTotalChangeCount);
-	};
-
-
-//**********************************
-// CLogSchedulerTimer
-//**********************************
-
-class CLogSchedulerTimer : public CTimer
-	{
-public:
-	static CLogSchedulerTimer* NewLC();
-	~CLogSchedulerTimer();
-
-private:
-	CLogSchedulerTimer();
-	void ConstructL();
-
-public:
-	void Wait(TTimeIntervalMicroSeconds32 aTime);
-
-private:
-	void RunL();
-	};
-
-//**********************************
-// CLogChangeNotifier
-//**********************************
-
-class CLogChangeNotifier : public CActive
-	{
-public:
-	static CLogChangeNotifier* NewL();
-	~CLogChangeNotifier();
-	//
-private:
-	CLogChangeNotifier();
-	void ConstructL();
-	//
-	void RunL();
-	void DoCancel();
-	//
-private:
-	CLogClient* iClient;
-	TTime iStart;
-	};
-
-//**********************************
-// Global
-//**********************************
-
-void SetupSchedulerL();
-void CloseScheduler();
-void doMainL();
-TInt E32Main();
-void DeleteDataFile(const TDesC& aFullName);
-void LogCheck(TInt aValue, TInt aExpected, TInt aLine);
-void LogCheckU(TUint aValue, TUint aExpected, TInt aLine);
-
-#endif//__TEST_H__