diff -r 7fdc9a71d314 -r 8ad140f3dd41 stif/stif_plat/inc/UIStoreContainer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/stif/stif_plat/inc/UIStoreContainer.h Wed Oct 13 16:17:58 2010 +0300 @@ -0,0 +1,349 @@ +/* +* 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 +* CTestCaseRunnner, CTestCasePrinter and CStartedTestCase +* +*/ + +#ifndef UISTORECASECONTAINER_H +#define UISTORECASECONTAINER_H + + +// INCLUDES +#include +#include + +#include + +#include + +// CONSTANTS + +// MACROS + +// DATA TYPES + +// FUNCTION PROTOTYPES + +// FORWARD DECLARATIONS +class CUIEngineContainer; +class CTestInfo; +class CUIStore; +class CTestSetInfo; + +// DESCRIPTION +// CTestProgress defines the progress information from Test Module. +class CTestProgress + :public CBase + { + public: + static CTestProgress* NewL( const TTestProgress& aProgress ); + + ~CTestProgress(); + + void ReplaceTextL( const TTestProgress& aProgress ); + + private: + void ConstructL( const TTestProgress& aProgress ); + + public: + // "Priority" of the progress information. + TInt iPosition; + // Description of the data to be printed. + TPtrC iDescription; + // The actual progress information. + TPtrC iText; + + private: + // Description of the data to be printed. + HBufC* iDescriptionBuf; + // The actual progress information. + HBufC* iTextBuf; + + }; + +// DESCRIPTION +// CStartedTestCase contains active objects that handles one test case +class CStartedTestCase + :public CBase + { + public: // Enumerations + + private: // Enumerations + + public: // Constructors and destructor + + /** + * NewL is first phase of two-phased constructor. + */ + static CStartedTestCase* NewL( const CTestInfo& aTestInfo, + CUIEngineContainer& aContainer ); + + /** + * Destructor of CStartedTestCase. + */ + virtual ~CStartedTestCase(); + + public: // New functions + + /** + * Get Engine container handle. + */ + IMPORT_C CUIEngineContainer& UIEngineContainer() const; + + /** + * Set case result + */ + void SetResult( const TFullTestResult& aResult ); + + /** + * Get test case info. + */ + inline CTestInfo const& TestInfo() const + { return *iTestInfo; }; + + /** + * Return the result + */ + inline const TFullTestResult& Result() const + { return iResult; }; + + /** + * Return the print array + */ + inline RPointerArray& PrintArray() + { return iPrints; }; + inline const RPointerArray& PrintArray() const + { return iPrints; }; + + /** + * Get status. + */ + inline TInt Status() const { return iStatus; } + + public: // Functions from base classes + + protected: // New functions + + protected: // Functions from base classes + + private: // Functions from base classes + + /** + * C++ default constructor. + */ + CStartedTestCase( CUIEngineContainer& aContainer ); + + /** + * By default Symbian OS constructor is private. + */ + void ConstructL( const CTestInfo& aTestInfo ); + + /** + * Private constructor for internal use. + */ + CStartedTestCase( CTestInfo* aTestInfo, + TFullTestResult aResult, + TInt aStatus ); + + public: //Data + /** + * Backpointer that can be utilized by UI, not used from UI Engine. + */ + TAny* iBackPtr; + + protected: // Data + // None + + private: // Data + CUIEngineContainer* iContainer; + CTestInfo* iTestInfo; + TFullTestResult iResult; // Test case result + + RPointerArray iPrints; // Prints from case + + // Execution status (flags from CUIStoreIf::TUpdateFlags) + TInt iStatus; + + public: // Friend classes + // None + + protected: // Friend classes + // None + + private: // Friend classes + friend class CUIStore; + + }; + +// DESCRIPTION +// CStartedTestSet contains test set information +class CStartedTestSet + :public CBase + { + public: // Enumerations + enum TSetType + { + ESetSequential, + ESetParallel, + }; + + private: // Enumerations + + public: // Constructors and destructor + + /** + * NewL is first phase of two-phased constructor. + */ + static CStartedTestSet* NewL( CUIStore* aUIStore, + const CTestSetInfo& aTestSetInfo, + TSetType aType ); + + /** + * Destructor of CStartedTestCase. + */ + virtual ~CStartedTestSet(); + + public: // New functions + + /** + * Get test case info. + */ + inline CTestSetInfo const& TestSetInfo() const + { return *iTestSetInfo; }; + + /** + * Return the result + */ + inline const TFullTestResult& Result() const + { return iResult; }; + + /** + * Get status. + */ + inline TInt Status() const { return iStatus; } + + /** + * Get test cases runned/running in test set. + */ + inline const RRefArray& TestCases() const + { return iTestCases; }; + + /** + * Get type. + */ + inline TSetType Type(){ return iType; }; + + /** + * Start next testcase. Returns KErrNotFound if does not exits. + */ + TInt StartNext(); + + /** + * Abort running testcases. + */ + TInt Abort(); + + /** + * Check if test case running in this test set. + */ + TBool IsRunning( const CStartedTestCase* aTestCase ); + + /** + * Test from this set completed. + */ + TInt TestCompleted( const CStartedTestCase* aTestCase, + TFullTestResult aResult ); + + /** + * Sets mode in which only not executed tests will be run. + */ + void SetNotStartedCasesMode(TBool aNotStartedCasesMode); + + /** + * Returns pointer to original test set. + */ + CTestSetInfo* GetOriginalTestSet(); + + /** + * Sets pointer to original test set to NULL. + */ + void NullOriginalTestSet(); + + public: // Functions from base classes + + protected: // New functions + + protected: // Functions from base classes + + private: // Functions from base classes + /** + * C++ default constructor. + */ + CStartedTestSet( CUIStore* aUIStore, TSetType aType ); + + /** + * By default Symbian OS constructor is private. + */ + void ConstructL( const CTestSetInfo& aTestSetInfo ); + + public: //Data + /** + * Backpointer that can be utilized by UI, not used from UI Engine. + */ + TAny* iBackPtr; + + protected: // Data + // None + + private: // Data + // Backpointer + CUIStore* iUIStore; + + CTestSetInfo* iTestSetInfo; + TFullTestResult iResult; // Test case result + TBool iResultSet; + + RRefArray iTestCases; + + TSetType iType; + + // Execution status (flags from CUIStoreIf::TUpdateFlags) + TInt iStatus; + + // Next case to start + TInt iNext; + // Number of running cases + TInt iRunningCases; + + // In this mode only not executed tests will be run + TBool iNotStartedCasesMode; + + // Original test set + CTestSetInfo* iOriginalTestSet; + + public: // Friend classes + // None + + protected: // Friend classes + // None + + private: // Friend classes + // None + + }; + +#endif // UISTORECASECONTAINER_H + +// End of File