--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/messagingfw/biomsgfw/T_BIOMSG/INC/parsers.h Mon Jan 18 20:36:02 2010 +0200
@@ -0,0 +1,336 @@
+// Copyright (c) 2003-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 __PARSERS_H
+#define __PARSERS_H
+
+#include "testframeparse.h"
+#include "harness.h"
+
+//
+// This class parses the main section
+class CBioMainSectionParser : public CBaseSectionParser
+ {
+public:
+ static CBioMainSectionParser* NewL(CMainTestHarness& aMainTest, CTestScript& aScript);
+
+protected:
+ void ConstructL();
+ inline CBioMainSectionParser(CMainTestHarness& aMainTest, CTestScript& aScript) : CBaseSectionParser(aScript), iMainTest(aMainTest) {}
+ void LogComment(const TDesC& aComment);
+
+private:
+ CMainTestHarness& iMainTest;
+};
+
+//
+// This class parses the bio_client_test command in the main section
+class CBioMainCommandsParser : public CBaseCommandParser
+{
+public:
+ void ProcessL();
+ static CBioMainCommandsParser* NewL(CTestScript& aScript, CMainTestHarness& aMainTest);
+
+private:
+ void ConstructL();
+ inline CBioMainCommandsParser(CTestScript& aScript, CMainTestHarness& aMainTest) : iMainTest(aMainTest), iScript(aScript) {}
+ CMainTestHarness& iMainTest;
+ CTestScript& iScript;
+};
+
+//
+// This class parses the client secion specified in the bio_client_test cmd
+class CBioClientSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioClientSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName);
+ inline CBioClientSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+//
+// This class parses the commands in the client secion
+class CBioClientCommandsParser : public CBaseCommandParser
+{
+public:
+ void ProcessL();
+ static CBioClientCommandsParser* NewL(CClientTestHarness& aMainTest);
+
+private:
+ void ConstructL();
+ inline CBioClientCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {}
+ CClientTestHarness& iClientTest;
+};
+
+//
+// This class parses the SmsSettings section
+class CBioSmsSettingsSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioSmsSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName);
+ inline CBioSmsSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+//
+// This class handles the Sms commands
+class CBioSmsSettingsCommandsParser : public CBaseCommandParser
+{
+public:
+ void ProcessL();
+ static CBioSmsSettingsCommandsParser* NewL(CClientTestHarness& aMainTest);
+private:
+ void ConstructL();
+ inline CBioSmsSettingsCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {}
+ CClientTestHarness& iClientTest;
+};
+
+//
+// This class parses the Pop3Settings section
+class CBioPop3SettingsSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioPop3SettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName);
+ inline CBioPop3SettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+//
+// This class parses the Pop3Settings section
+class CBioPop3NamedSettingsSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioPop3NamedSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName, const TDesC& aSettingsName);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName, const TDesC& aSettingsName);
+ inline CBioPop3NamedSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+//
+// This class handles the POP3 commands
+class CBioPop3SettingsCommandsParser : public CBaseCommandParser
+{
+public:
+ void ProcessL();
+ static CBioPop3SettingsCommandsParser* NewL(CClientTestHarness& aMainTest);
+private:
+ void ConstructL();
+ inline CBioPop3SettingsCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {}
+ CClientTestHarness& iClientTest;
+};
+
+//
+// This class parses the SMTPSettings section
+class CBioSmtpSettingsSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioSmtpSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName);
+ inline CBioSmtpSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+//
+// This class parses the SmtpSettings section
+class CBioSmtpNamedSettingsSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioSmtpNamedSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName, const TDesC& aSettingsName);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName, const TDesC& aSettingsName);
+ inline CBioSmtpNamedSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+
+//
+// This class handles the SMTP commands
+class CBioSmtpSettingsCommandsParser : public CBaseCommandParser
+{
+public:
+ void ProcessL();
+ static CBioSmtpSettingsCommandsParser* NewL(CClientTestHarness& aMainTest);
+private:
+ void ConstructL();
+ inline CBioSmtpSettingsCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {}
+ CClientTestHarness& iClientTest;
+};
+
+
+//
+// This class parses the ImapSettings section
+class CBioImapSettingsSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioImapSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName);
+ inline CBioImapSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+
+
+//
+// This class parses the ImapSettings section
+class CBioImapNamedSettingsSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioImapNamedSettingsSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName, const TDesC& aSettingsName);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName, const TDesC& aSettingsName);
+ inline CBioImapNamedSettingsSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+
+//
+// This class handles the Imap commands
+class CBioImapSettingsCommandsParser : public CBaseCommandParser
+{
+public:
+ void ProcessL();
+ static CBioImapSettingsCommandsParser* NewL(CClientTestHarness& aMainTest);
+private:
+ void ConstructL();
+ inline CBioImapSettingsCommandsParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {}
+ CClientTestHarness& iClientTest;
+};
+
+//
+// This class parses the CommDB section
+class CBioCommDBSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioCommDBSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aTableName, const TDesC& aNewSectionName);
+ void SectionFinishedL(TTestDebugInfo& aDebugInfo);
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aTableName, const TDesC& aNewSectionName);
+ inline CBioCommDBSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+};
+
+//
+// This class handles the CommDB commands
+class CBioCommDBCommandParser : public CBaseCommandParser
+{
+public:
+ void ProcessL();
+ static CBioCommDBCommandParser* NewL(CClientTestHarness& aMainTest, const TDesC& aTableName);
+ void SectionFinishedL(TTestDebugInfo& aDebugInfo);
+
+private:
+ void ConstructL();
+ inline CBioCommDBCommandParser(CClientTestHarness& aClientTest, const TDesC& aTableName) : iClientTest(aClientTest), iTableName(aTableName) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ TBuf<50> iTableName;
+};
+
+//
+// This class parses the gen_msg_from_section section
+class CBioGenMsgCommandParser;
+class CBioGenMsgSectionParser : public CBaseSectionParser
+{
+public:
+ static CBioGenMsgSectionParser* NewL(CClientTestHarness& aTest, CTestScript& aScript, const TDesC& aNewSectionName);
+ void SectionFinishedL();
+
+protected:
+ void LogComment(const TDesC& aComment);
+ void ConstructL(const TDesC& aNewSectionName);
+ inline CBioGenMsgSectionParser(CClientTestHarness& aTest, CTestScript& aScript) : CBaseSectionParser(aScript), iClientTest(aTest), iScript(aScript) {}
+
+private:
+ CClientTestHarness& iClientTest;
+ CTestScript& iScript;
+ CBioGenMsgCommandParser* iCmdParser; // Created, but NOT owned by us.
+};
+
+//
+// This class parses the commands in the gen_msg_from_section section
+class CBioGenMsgCommandParser : public CBaseCommandParser
+{
+public:
+ void ProcessL();
+ static CBioGenMsgCommandParser* NewL(CClientTestHarness& aMainTest);
+ void SectionFinishedL();
+
+private:
+ void ConstructL();
+ inline CBioGenMsgCommandParser(CClientTestHarness& aClientTest) : iClientTest(aClientTest) {}
+ inline ~CBioGenMsgCommandParser() { delete iBuffer; }
+
+private:
+ CClientTestHarness& iClientTest;
+ HBufC* iBuffer;
+ TBIOMessageType iMsgType;
+};
+
+#endif