--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/messagingfw/biomsgfw/wapptsrc/T_Wapp.h Mon Jan 18 20:36:02 2010 +0200
@@ -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 <e32std.h>
+#include <e32test.h>
+#include <c32comm.h>
+#include <in_sock.h>
+
+#include <commsdattypesv1_1.h>
+#include <commsdat.h>
+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<const TDesC> 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__