diff -r 000000000000 -r bde4ae8d615e os/mm/mmhais/dvbhunittest/hai/dvbh/src/dvbhhaitestutil.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/os/mm/mmhais/dvbhunittest/hai/dvbh/src/dvbhhaitestutil.h Fri Jun 15 03:10:57 2012 +0200 @@ -0,0 +1,149 @@ +// Copyright (c) 2007-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: +// + +/** + @file + @internalComponent + @prototype +*/ + +#ifndef DVBHHAITESTUTIL_H +#define DVBHHAITESTUTIL_H + +#include +#include +#include +#include + + +/** +* Constants for expected values +*/ +const TInt KDvbhTestFilterId = 977; +const TIp6Addr KDvbhTestIpV6Addr = {{{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1}}}; +const TInt KDvbhTestCustomCommand = 0; +_LIT8(KDvbhTestCustomCommandInput, "DvbhTestCustomCommandInput"); +_LIT8(KDvbhTestCustomCommandOutput, "DvbhTestCustomCommandOutput"); +_LIT8(KDvbhTestHardwareInfo, "Example Hardware Info;Version 1.0"); + +const TInt KInitialState = EDvbhStateInactive; +const TInt KExpectedState = EDvbhStateReady; + +const TInt KInitialSignalQuality = EDvbhSignalQualityFair; +const TInt KExpectedSignalQuality = EDvbhSignalQualityExcellent; + +const TInt KInitialFrequency = 1500000; +const TInt KExpectedFrequency = 3600000; + +const TInt KInitialCellId = 1006; +const TInt KExpectedCellId = 756; + +const TInt KInitialNetworkId = 9993; +const TInt KExpectedNetworkId = 3726; + +const TUint32 KDvbhTestTerminalTimeStamp = 987654321; + +const TInt KNoVerdict = -1; + +const TInt KInitialPlatformId = 123456789; +_LIT8(KInitialPlatformName, "DvbhTestInitialPlatform"); + +const TInt KExpectedPlatformId = 987654321; +_LIT8(KExpectedPlatformName, "DvbhTestExpectedPlatform"); + +/** +* @internalComponent +* @prototype +* +* Publish & Subscribe variables used for implementation to API communication. +* +* This must be kept identical to the ones defined in the non-exported header +* file dvbhimplcommon.h +*/ +enum TDvbhPropertyKey + { + EDvbhPropertyKeyState = 0, // integer (TDvbhState) + EDvbhPropertyKeyPlatform = 1, // byte array (TDvbhPlatform + TIp6Addr + TInt16) + EDvbhPropertyKeyNetworkTime = 2, // byte array (TDvbhNetworkTime) + EDvbhPropertyKeyPerformanceData = 3, // byte array (TDvbhPerformanceData) + EDvbhPropertyKeyFrequency = 4, // byte array (TDvbhFrequency) + EDvbhPropertyKeyNetworkId = 5, // byte array (TDvbhNetworkId) + EDvbhPropertyKeySignalQuality = 6, // byte array (TDvbhSignalQuality) + EDvbhPropertyKeyCellId = 7 // byte array (TDvbhCellId) + }; + +struct TDvbhPlatformProperty + { + TDvbhPlatform iPlatform; + TIp6Addr iEsgRoot; + }; + +/** +* Interface to enable CDvbhTestUtil to log test data & messages. +*/ +class MDvbhHaiTestLoggerInterface + { +public: + virtual void InfoPrintf3(const TDesC16& aString, TInt aInt1, TInt aInt2) = 0; + virtual void InfoPrintf4(const TDesC16& aString, TInt aInt1, TInt aInt2, TInt aInt3) = 0; + }; + +class RTestStep; + +/** +* @internalComponent +* @prototype +* +* A class of utility methods to help the DVB-H HAI test steps. +*/ +class CDvbhTestUtil : public CBase + { +public: + enum + { + ENoInitialState = -1 + }; + + enum + { + ENumDvbhProperties = 8 + }; +public: + static CDvbhTestUtil* NewL(MDvbhHaiTestLoggerInterface& aTestStepLogger); + + TInt DefineDvbhProperty(TInt aPropertyKey, TInt aType = RProperty::EInt) const; + TInt DefineDvbhProperty(TInt aPropertyKey, TInt aType, const TDesC8& aInitialValue) const; + TInt DefineDvbhStateProperty(TInt aInitialState = ENoInitialState); + TInt DefineDvbhIntegerProperty(TInt aPropertyKey, TInt aInitialValue) const; + TInt DeleteDvbhProperty(TInt aPropertyKey); + TInt SetStateProperty(TInt aValue); + TInt SetByteArrayProperty(TInt aPropertyKey, const TDesC8& aValue) const; + TInt SetIntegerProperty(TInt aPropertyKey, TInt aValue) const; + TInt DefineAllDvbhProperties(); + TInt DeleteAllDvbhProperties(); +public: + static TInt GetKey(TDvbhPropertyKey aKey); + static TInt GetType(TDvbhPropertyKey aKey); + static TBool CompareVersions(const TVersion& aVersion1, const TVersion& aVersion2); + static TBool ComparePlatforms(const TDvbhPlatform& aPlatform1, const TDvbhPlatform& aPlatform2); + static TBool ComparePerformanceDatas(const TDvbhPerformanceData& aData1, const TDvbhPerformanceData& aData2); + static TBool CompareScanConfigurations(const TDvbhScanConfiguration& aConfig1, const TDvbhScanConfiguration& aConfig2); +private: + CDvbhTestUtil(MDvbhHaiTestLoggerInterface& aTestStepLogger); +private: + MDvbhHaiTestLoggerInterface& iTestStepLogger; + }; + +#endif // DVBHHAITESTUTIL_H