--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/stif/inc/TestModuleInfo.h Tue Feb 02 01:57:15 2010 +0200
@@ -0,0 +1,292 @@
+/*
+* Copyright (c) 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: This file contains the header file of the
+* CTestModuleInfo class. The class was created to keep module names,
+* ini files and test case configuration files.
+*
+*/
+
+#ifndef TESTMODULEINFO_H
+#define TESTMODULEINFO_H
+
+// INCLUDES
+#include <e32base.h>
+#include <StifLogger.h>
+
+// CONSTANTS
+// None
+
+// MACROS
+// None
+
+// DATA TYPES
+// None
+
+// FUNCTION PROTOTYPES
+// None
+
+// FORWARD DECLARATIONS
+// None
+
+// CLASS DECLARATION
+
+// DESCRIPTION
+// Class with information about configuration (test case) file.
+class CTestCaseFileInfo
+ :public CBase
+ {
+ public: // Enumerations
+
+ private: // Enumerations
+
+ public: // Constructors and destructor
+ /**
+ * NewL.
+ */
+ static CTestCaseFileInfo* NewL(TDesC& aCfgFileName, CStifLogger* aLogger);
+
+ /**
+ * C++ destructor.
+ */
+ virtual ~CTestCaseFileInfo();
+
+ private: // Constructors and destructor
+ /**
+ * C++ constructor.
+ */
+ CTestCaseFileInfo();
+
+ /**
+ * By default Symbian OS constructor is private.
+ */
+ void ConstructL(TDesC& aCfgFileName, CStifLogger* aLogger);
+
+ public: // New functions
+ /**
+ * Set configuration file as already checked.
+ */
+ IMPORT_C void SetChecked(void);
+
+ /**
+ * Return if config file has been checked.
+ */
+ TBool IsChecked(void);
+
+ /**
+ * Get module name.
+ */
+ IMPORT_C TInt GetCfgFileName(TDes& aCfgFileName);
+
+ protected: // New functions
+
+ private: // New functions
+
+ public: // Data
+
+ protected: // Data
+
+ private: // Data
+ //Config file name
+ HBufC* iCfgFileName;
+
+ //Was checked
+ TBool iChecked;
+
+ // Logger instance
+ CStifLogger* iLogger;
+
+ public: // Friend classes
+
+ protected: // Friend classes
+
+ private: // Friend classes
+ };
+
+// DESCRIPTION
+// Class with information about test modules.
+class CTestModuleInfo
+ :public CBase
+ {
+ public: // Enumerations
+
+ private: // Enumerations
+
+ public: // Constructors and destructor
+ /**
+ * NewL.
+ */
+ static CTestModuleInfo* NewL(TDesC& aModuleName, CStifLogger* aLogger);
+
+ /**
+ * C++ destructor.
+ */
+ virtual ~CTestModuleInfo();
+
+ private: // Constructors and destructor
+ /**
+ * C++ constructor.
+ */
+ CTestModuleInfo();
+
+ /**
+ * By default Symbian OS constructor is private.
+ */
+ void ConstructL(TDesC& aModuleName, CStifLogger* aLogger);
+
+ public: // New functions
+ /**
+ * Set initialization file name.
+ */
+ IMPORT_C TInt SetIniFile(TDesC& aIniFileName);
+
+ /**
+ * Add configuration (test case) file name to array.
+ */
+ IMPORT_C TInt AddCfgFile(TDesC& aCfgFileName);
+
+ /**
+ * Get number of test case files.
+ */
+ IMPORT_C TInt CountCfgFiles(void);
+
+ /**
+ * Get module name.
+ */
+ IMPORT_C TInt GetModuleName(TDes& aModuleName);
+
+ /**
+ * Get ini file.
+ */
+ IMPORT_C TInt GetIniFileName(TDes& aIniFileName);
+
+ /**
+ * Get cfg file.
+ */
+ IMPORT_C TInt GetCfgFileName(TInt aIndex, TDes& aCfgFileName);
+
+ /**
+ * Get first unchecked config file.
+ */
+ CTestCaseFileInfo* GetUncheckedCfgFile(void);
+
+ protected: // New functions
+
+ private: // New functions
+
+ public: // Data
+
+ protected: // Data
+
+ private: // Data
+ //Module name
+ HBufC* iModuleName;
+
+ //Initialization file
+ HBufC* iIniFileName;
+
+ //Array of cfg files
+ RPointerArray<CTestCaseFileInfo> iCfgFiles;
+
+ // Logger instance
+ CStifLogger* iLogger;
+
+ public: // Friend classes
+
+ protected: // Friend classes
+
+ private: // Friend classes
+ };
+
+// DESCRIPTION
+// Class with list of test modules.
+class CTestModuleList
+ :public CBase
+ {
+ public: // Enumerations
+
+ private: // Enumerations
+
+ public: // Constructors and destructor
+ /**
+ * NewL.
+ */
+ IMPORT_C static CTestModuleList* NewL(CStifLogger* aLogger);
+
+ /**
+ * C++ destructor.
+ */
+ IMPORT_C virtual ~CTestModuleList();
+
+ private: // Constructors and destructor
+ /**
+ * C++ constructor.
+ */
+ CTestModuleList();
+
+ /**
+ * By default Symbian OS constructor is private.
+ */
+ void ConstructL(CStifLogger* aLogger);
+
+ public: // New functions
+ /**
+ * Add test module to list.
+ */
+ IMPORT_C TInt AddTestModule(TDesC& aModuleName);
+
+ /**
+ * Get number of test modules.
+ */
+ IMPORT_C TInt Count(void);
+
+ /**
+ * Get module.
+ */
+ IMPORT_C CTestModuleInfo* GetModule(TDesC& aModuleName);
+
+ /**
+ * Get module.
+ */
+ IMPORT_C CTestModuleInfo* GetModule(TInt aIndex);
+
+ /**
+ * Get first unchecked test case file (module: testscripter and testcombiner).
+ */
+ IMPORT_C CTestCaseFileInfo* GetUncheckedCfgFile(void);
+
+ protected: // New functions
+
+ private: // New functions
+
+ public: // Data
+
+ protected: // Data
+
+ private: // Data
+ //Array of test modules
+ RPointerArray<CTestModuleInfo> iTestModules;
+
+ // Logger instance
+ CStifLogger* iLogger;
+
+ public: // Friend classes
+
+ protected: // Friend classes
+
+ private: // Friend classes
+ };
+
+#endif // TESTMODULEINFO_H
+
+// End of File
\ No newline at end of file