sl@0: // Copyright (c) 1996-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // sl@0: sl@0: /** sl@0: @file sl@0: @test sl@0: @internalComponent - Internal Symbian test code sl@0: */ sl@0: sl@0: #ifndef __TOOMDRAW_H__ sl@0: #define __TOOMDRAW_H__ sl@0: sl@0: #include sl@0: #include sl@0: #include "../tlib/testbase.h" sl@0: #include "AUTO.H" sl@0: #include "TGraphicsHarness.h" sl@0: sl@0: #define LOGGING yes //Log only failures sl@0: #if defined(LOGGING) sl@0: #define FULLLOGGING yes sl@0: #endif sl@0: sl@0: class CTestWin : public CTWin sl@0: { sl@0: public: sl@0: CTestWin(); sl@0: void Draw(); sl@0: }; sl@0: sl@0: class CBaseTestWin : public CTBackedUpWin sl@0: { sl@0: public: sl@0: CBaseTestWin(); sl@0: void Resized(const TSize &aNewSize); sl@0: }; sl@0: sl@0: class CToomDraw : public CTWsGraphicsBase sl@0: { sl@0: private: sl@0: enum {EMaxOOMState=150}; sl@0: public: sl@0: CToomDraw(CTestStep* aStep); sl@0: ~CToomDraw(); sl@0: void ConstructL(); sl@0: void CreateTestWinL(); sl@0: void TriggerOomDrawsL(TInt aCount); sl@0: TBool CheckWindowsL(); sl@0: void DeleteWindows(); sl@0: protected: sl@0: //from CTGraphicsStep sl@0: virtual void RunTestCaseL(TInt aCurTestCase); sl@0: private: sl@0: TBool iDoCheck; sl@0: TSize iScrSize; sl@0: CTBlankWindow* iBlankWin; sl@0: CTestWin *iTestWin; sl@0: CBaseTestWin *iBaseWin; sl@0: CTestWin *iBackWin; sl@0: TInt iFails; sl@0: TInt iFailAt; sl@0: TInt iRetryCount; sl@0: TInt iState; sl@0: }; sl@0: sl@0: class CToomDrawStep : public CTGraphicsStep sl@0: { sl@0: public: sl@0: CToomDrawStep(); sl@0: protected: sl@0: //from CTGraphicsStep sl@0: virtual CTGraphicsBase* CreateTestL(); sl@0: }; sl@0: sl@0: _LIT(KToomDrawStep,"TOOMDRAW"); sl@0: sl@0: sl@0: #endif