diff -r 9f5ae1728557 -r db3f5fa34ec7 messagingfw/biomsgfw/wapptsrc/T_Wapp.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/messagingfw/biomsgfw/wapptsrc/T_Wapp.h Wed Nov 03 22:41:46 2010 +0530 @@ -0,0 +1,222 @@ +// Copyright (c) 2000-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: +// TESTWAPP.H +// Test Enviroment for WAP Access Point Settings parser. +// Started by Sean Jesson of Teleca Ltd. November 1999. +// Updated by Andrew Fawcett, Teleca Ltd Feb 2000 +// +// + + +#if !defined (__TESTWAPP_H__) +#define __TESTWAPP_H__ + +#ifndef _TESTWAPP_H_ +#define _TESTWAPP_H_ + +#include +#include +#include +#include + +#include +#include +using namespace CommsDat; + +extern RTest Test; +//extern RSocketServ SocketServer; +//extern RHeap* TestHeap; + +#define BIO_MSG_ENTRY_PARSED 1 // Set entry.iMtmData3 to 1, indicates entry has store i.e parsed & externalised + +const TUint KWappModemInitValue = (99999); + +//Some string defines +_LIT(KBIOWAPPrefix, "WAP*"); // prefix for WAP message +const TPtrC KWappTestTxtFileDir = _L("c:\\test\\bio\\wapp\\");//Source files dir +#define KSmsFileName _L("c:\\Mailtest\\Wapptest\\Wapp.txt") +const TPtrC KWappLogFile = _L("C:\\Logs\\Bio\\Wap.log"); // Test log file +const TPtrC KFileName = _L("Wap.dat"); +const TPtrC KAttachmentName = _L("Wappbmp.cng"); + +#define KTestWappPriority (EPriorityStandard) //Change this.... + +// Panic errors: +const TInt KWappNullPtr = (111); +const TInt KBioMsgNotParsed = (222); +const TInt KBioMsgEntryHasNoStore = (333); +const TInt KBioMsgNotProcessed = (444); + +//const TUid KUidMsvMessageDriveStream = {0x1000163E}; +const TUid KUIDMsvBIODataStream = {0x10005268}; + +const TPtrC KWappToken = _L("WAP Access Point"); // A script header. +const TPtrC KWappTab = _L("\t"); +const TPtrC KWappLinefeed16 = _L("\n"); +const TPtrC KWappParserName = _L("WAP Access Point Parser"); // A human readable name. +const TVersion KVer1(0,0,1); // A version number. + +// +// Forward references: // +// +class TWappBearerType; + + +// +// Global declarations: // +// +LOCAL_D RTest test(_L("WAPP Test Harness")); + +void CommInitL(TBool aEnhanced); + + +// +// Class definitions: // +// + +// +// CExampleScheduler: INTERFACE // +// +class CTestScheduler : public CActiveScheduler + { +public: + void Error(TInt anError) const; + }; + + +// +// CTestWapp: INTERFACE // +// + +class CTestWapp : public CActive + { + public: + enum TSessionState + { + EWappClearCommDB, + EWappCreateNewMessages, // Creating messages in Global Inbox + EWappCreateParser, // Create a parser set to next message entry + EWappProcessUnparsed, // Call ProcessL for an unparsed message - should fail! + EWappParse, // parse the message + EWappParseAgain, // parse it a second time + EWappProcess, // process the parsed fields of the message + EWappProcessAgain, // process a second time + EWappDisplay, // Display entry data. + EWappComplete // wrap-up everything + }; + + enum TTestMode + { + ETWappConcise, // Minimal info + ETWappDetailed, // Logs Parsed Fields + ETWappVerbose // Logs everything parsed fields, and commdb entries + }; + + enum TTestWappBearerType + { + ETestWappUnknownBearer, + ETestWappGsmCsdBearer, + ETestWappGsmSmsBearer, + ETestWappGsmUssdBearer, + ETestWappIS136CsdBearer, + ETestWappGprsBearer + }; + + public: + ~CTestWapp(); + CTestWapp(RFs& aFs); + static CTestWapp* NewL(RFs& aFs); + void ConstructL(); + void StartL(); + void RunL(); + TInt RunError(TInt aError); + void DoCancel(); + void RequestComplete(TRequestStatus& aStatus,TInt aCompletion); + + private: + void RunAutoTest(); + void ShowMenuL(); + void CreateParserL(); + void QueueOperationAsync(TInt aErr); // Queues the parser on the AO list + void InitialiseTesterL(); // Initialises test harness. + void DoRunL(); + void CreateFilenameArrayL(); // Creates an array with names of test files + void GenerateNextMessageL(); // Creates a dummy BIO message + void UnloadParser(); + void ExtractBodyPartsL(); + void ParseMessageL(); + void ProcessMessageL(); + void ProcessUnparsedMessageL(); + void RecordEntryDataL(); + void LogParsedDataL(); + void SetEntryNameL(); + + void DisplayTestSummaryL(); + void DisplayBookmarksL(); + CMDBRecordSetBase* GetGenericPointerL(TMDBElementId aRecordElementId); //Returns a RecordSetBase + // Based on the supplied element id + void DisplayCommDatTablesL(); + TInt DisplayCommDatWapApTableL(CMDBRecordSetBase& aGenericRecBase); + TInt DisplayCommDatWapIpTableL(CMDBRecordSetBase& aGenericRecBase, TDesC& aEntryName, TUint32 aIapId); + TInt DisplayCommDatWapSmsTableL(CMDBRecordSetBase& aGenericRecBase); + TInt DisplayCommDatDialOutISPTableL(CMDBRecordSetBase& aGenericRecBase, TDesC& aEntryName); + TInt DisplayCommDatIAPTableL(CMDBRecordSetBase& aGenericRecBase, TDesC& aEntryName, TTestWappBearerType aBearerType); + //void DisplayCommDatModemTableL(CCDModemBearerRecord& aModemBearerRecord, TInt aRecCount); + TInt DisplayCommDatGprsTableL(CMDBRecordSetBase& aGenericRecBase, TDesC& aEntryName); + void DisplayErrorReasonL(TInt& aReason); + void DisplayMMSURLL(); + + TBool IsLineTermination(TChar aChar); + void OutputTextListL( const TDesC& aFieldName, const TDesC& aValueName); + void OutputTextListL( const TDesC& aFieldName, TUint aValue); + void OutputFormattedTextL(TRefByValue aFmt,...); + void PrintDescriptor(const TDesC& aBuffer); + + void DeleteCommDbTableL(); //trashes all entries in the WAP, Dial In/Out ISP, IAP tables + + + private: + RFs& iFs; // Our file server session + TInt iState; // Holds the current state of the test harness. + CMsvEntrySelection* iMsvSelection; // TMsvIds of our messages. + TMsvId iEntryId; // ID of sms entry. + + TInt iParsedFieldsNum; + TInt iTestSuccesses; + TInt iTestFailures; + TInt iTestCounter; + TInt iMessagesCreated; + TInt iFilesProcessed; + TTestMode iTestMode; // Holds logging mode + + CBaseScriptParser2* iWappParser; + + HBufC* iMessageBody; + CBioTestUtils* iBioTestUtils; // Makes messages, etc. + TInt iNumWapEntries; //No of entries in WAP table + HBufC* iCurrentSettingsName; // Name of the current settings + TUint32 iCurrentIspID; + TUint32 iCurrentIapID; + TUint32 iWAPModemID; + TUint32 iWapAccessPointID; //ID of WAP_ACCESS_POINT entry + + CCommsDatabase* iTestCommDb; + TUint32 iGsmCsdIapId; + TUint32 iGprsIapId; + }; + + +#endif + +#endif // __TESTWAPP_H__