diff -r 7fdc9a71d314 -r 8ad140f3dd41 stif/inc/TestModuleInfo.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/stif/inc/TestModuleInfo.h Wed Oct 13 16:17:58 2010 +0300 @@ -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 +#include + +// 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 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 iTestModules; + + // Logger instance + CStifLogger* iLogger; + + public: // Friend classes + + protected: // Friend classes + + private: // Friend classes + }; + +#endif // TESTMODULEINFO_H + +// End of File