--- a/windowing/windowserver/tauto/TOOM.CPP Tue Jun 22 15:21:29 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,1583 +0,0 @@
-// Copyright (c) 1996-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:
-// Out of memory tests
-//
-//
-
-/**
- @file
- @test
- @internalComponent - Internal Symbian test code
-*/
-
-
-#include "TOOM.H"
-
-
-typedef COomFailBase *(*COmmCreate)(CTOom *aTest);
-
-COomFailBase *CreateOomConnect(CTOom *aTest)
- {return(new(ELeave) COomConnect(aTest));}
-
-COomFailBase *CreateOomWindow(CTOom *aTest)
- {return(new(ELeave) COomWindow(aTest));}
-
-COomFailBase *CreateOomWindowGroup(CTOom *aTest)
- {return(new(ELeave) COomWindowGroup(aTest));}
-
-COomFailBase *CreateOomBackedUpWindow(CTOom *aTest)
- {return(new(ELeave) COomBackedUpWindow(aTest));}
-
-COomFailBase *CreateOomBackupResize(CTOom *aTest)
- {return(new(ELeave) COomBackupResize(aTest));}
-
-COomFailBase *CreateOomBlankWindow(CTOom *aTest)
- {return(new(ELeave) COomBlankWindow(aTest));}
-
-COomFailBase *CreateOomGc(CTOom *aTest)
- {return(new(ELeave) COomGc(aTest));}
-
-COomFailBase *CreateOomScreenDevice(CTOom *aTest)
- {return(new(ELeave) COomScreenDevice(aTest));}
-
-COomFailBase *CreateOomPointerBuffer(CTOom *aTest)
- {return(new(ELeave) COomPointerBuffer(aTest));}
-
-COomFailBase *CreateOomPolygon(CTOom *aTest)
- {return(new(ELeave) COomPolygon(aTest));}
-
-COomFailBase *CreateOomPriorityKey(CTOom *aTest)
- {return(new(ELeave) COomPriorityKey(aTest));}
-
-COomFailBase *CreateOomCaptureKey(CTOom *aTest)
- {return(new(ELeave) COomCaptureKey(aTest));}
-
-COomFailBase *CreateOomCaptureKeyUpDown(CTOom *aTest)
- {return(new(ELeave) COomCaptureKeyUpDown(aTest));}
-
-COomFailBase *CreateOomHotKey(CTOom *aTest)
- {return(new(ELeave) COomHotKey(aTest));}
-
-COomFailBase *CreateOomGroupName(CTOom *aTest)
- {return(new(ELeave) COomGroupName(aTest));}
-
-COomFailBase *CreateOomMessageSend(CTOom *aTest)
- {return(new(ELeave) COomMessageSend(aTest));}
-
-COomFailBase *CreateOomMessageFetch(CTOom *aTest)
- {return(new(ELeave) COomMessageFetch(aTest));}
-
-COomFailBase *CreateOomSprite(CTOom *aTest)
- {return(new(ELeave) COomSprite(aTest));}
-
-COomFailBase *CreateOomPointerCursor(CTOom *aTest)
- {return(new(ELeave) COomPointerCursor(aTest));}
-
-COomFailBase *CreateOomCopyScreen(CTOom *aTest)
- {return(new(ELeave) COomCopyScreen(aTest));}
-
-COomFailBase *CreateOomRequestEvents(CTOom *aTest)
- {return(new(ELeave) COomRequestEvents(aTest));}
-
-COomFailBase *CreateOomCustomTextCursor(CTOom *aTest)
- {return(new(ELeave) COomCustomTextCursor(aTest));}
-
-COomFailBase *CreateOomTranspWindow(CTOom *aTest)
- {return(new(ELeave) COomTranspWindow(aTest));}
-
-COomFailBase *CreateOomObscuredWindow(CTOom *aTest)
- {return(new(ELeave) COomObscuredWindow(aTest));}
-
-COmmCreate CreateOomFailTest[]={
- CreateOomConnect,
- CreateOomWindow,
- CreateOomWindowGroup,
- CreateOomBackedUpWindow,
- CreateOomBackupResize,
- CreateOomBlankWindow,
- CreateOomGc,
- CreateOomScreenDevice,
- CreateOomPointerBuffer,
- CreateOomPolygon,
- CreateOomPriorityKey,
- CreateOomCaptureKey,
- CreateOomCaptureKeyUpDown,
- CreateOomHotKey,
- CreateOomGroupName,
- CreateOomSprite,
- CreateOomPointerCursor,
- CreateOomCopyScreen,
- CreateOomRequestEvents,
- CreateOomMessageSend,
- CreateOomMessageFetch,
- CreateOomCustomTextCursor,
- CreateOomTranspWindow,
- CreateOomObscuredWindow,
- };
-
-//
-// Individual out of memory test classes //
-//
-
-COomFailBase::COomFailBase(CTOom *aTest) : iTest(aTest)
- {}
-
-void COomFailBase::ConstructL()
- {
- iTest->INFO_PRINTF1(TestName());
- }
-
-void COomFailBase::PreFail()
- {}
-
-void COomFailBase::ClearUpL()
- {}
-
-void COomFailBase::Flush()
- {
- iWs.Flush();
- }
-
-COomConnect::COomConnect(CTOom *aTest) : COomFailBase(aTest)
- {}
-
-TOomTestName COomConnect::TestName()
- {
- return(_L("Connect"));
- }
-
-/** Creates a wserv session, connects and creates CWsScreenDevice object
-*/
-TInt COomConnect::Fail()
- {
- TInt err = iWs.Connect();
- if (err!=KErrNone)
- return err;
-
- TRAP(err, iDummyScreen = new (ELeave) CWsScreenDevice(iWs));
- if (err!=KErrNone)
- {
- iWs.Close();
- return err;
- }
-
- if ((err=iDummyScreen->Construct(iTest->ScreenNumber()))!=KErrNone)
- {
- delete iDummyScreen;
- iDummyScreen = NULL;
- iWs.Close();
- return err;
- }
-
- return err;
- }
-
-void COomConnect::ClearUpL()
- {
- if (iDummyScreen)
- {
- delete iDummyScreen;
- iDummyScreen = NULL;
- }
- iWs.Close();
- }
-
-//
-
-COomSetup::COomSetup(CTOom *aTest) : COomFailBase(aTest)
- {}
-
-void COomSetup::ConstructL()
- {
- COomFailBase::ConstructL();
- User::LeaveIfError(iWs.Connect());
- iDummyScreen = new (ELeave) CWsScreenDevice(iWs);
- User::LeaveIfError(iDummyScreen->Construct(iTest->ScreenNumber()));
-
- iWinGroup=RWindowGroup(iWs);
- iWinGroup.Construct(556);
- iWinGroup.EnableReceiptOfFocus(EFalse); // Stop auto group switching on close
- }
-
-COomSetup::~COomSetup()
- {
- iWinGroup.Close();
- delete iDummyScreen;
- iDummyScreen = NULL;
-
- iTest->TEST(iWs.ResourceCount()==0);
- if (iWs.ResourceCount()!=0)
- iTest->INFO_PRINTF3(_L("iWs.ResourceCount() return value - Expected: %d, Actual: %d"), 0, iWs.ResourceCount());
-
- iWs.Close();
- }
-
-//
-
-COomWindowGroup::COomWindowGroup(CTOom *aTest) : COomSetup(aTest)
- {}
-
-TOomTestName COomWindowGroup::TestName()
- {
- return(_L("Window Group"));
- }
-
-/** Creates a RWindowGroup object
-*/
-TInt COomWindowGroup::Fail()
- {
- iFailWinGroup=RWindowGroup(iWs);
- return(iFailWinGroup.Construct(987));
- }
-
-void COomWindowGroup::ClearUpL()
- {
- iFailWinGroup.Close();
- }
-
-//
-
-COomWindow::COomWindow(CTOom *aTest) : COomSetup(aTest)
- {}
-
-TOomTestName COomWindow::TestName()
- {
- return(_L("Window"));
- }
-
-/** Creates a RWindow object
-*/
-TInt COomWindow::Fail()
- {
- iFailWin=RWindow(iWs);
- return(iFailWin.Construct(iWinGroup,11));
- }
-
-void COomWindow::ClearUpL()
- {
- iFailWin.Close();
- }
-
-//
-
-COomBackedUpWindow::COomBackedUpWindow(CTOom *aTest) : COomSetup(aTest)
- {}
-
-TOomTestName COomBackedUpWindow::TestName()
- {
- return(_L("Backed up window"));
- }
-
-/** Creates a RBackedUpWindow object
-*/
-TInt COomBackedUpWindow::Fail()
- {
- iFailWin=RBackedUpWindow(iWs);
- return(iFailWin.Construct(iWinGroup,EGray16,22));
- }
-
-void COomBackedUpWindow::ClearUpL()
- {
- iFailWin.Close();
- }
-
-//
-
-COomBackupResize::COomBackupResize(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomBackupResize::~COomBackupResize()
- {
- iFailWin.Close();
- }
-
-TOomTestName COomBackupResize::TestName()
- {
- return(_L("Resize backed up window"));
- }
-
-void COomBackupResize::ConstructL()
- {
- COomSetup::ConstructL();
- iFailWin=RBackedUpWindow(iWs);
- User::LeaveIfError(iFailWin.Construct(iWinGroup,EGray16,33));
- User::LeaveIfError(iFailWin.SetSizeErr(TSize(10,10)));
- iFailWin.Activate();
- }
-
-/** Sets the size of previously created backed-up window
-*/
-TInt COomBackupResize::Fail()
- {
- return(iFailWin.SetSizeErr(TSize(100,100)));
- }
-
-void COomBackupResize::ClearUpL()
-//Virtual fn declared in CoomFailBase. This is the only one that can leave, I think, but one is enough
- {
- User::LeaveIfError(iFailWin.SetSizeErr(TSize(10,10)));
- }
-
-//
-
-COomBlankWindow::COomBlankWindow(CTOom *aTest) : COomSetup(aTest)
- {}
-
-TOomTestName COomBlankWindow::TestName()
- {
- return(_L("Blank window"));
- }
-
-/** Creates a RBlankWindow object
-*/
-TInt COomBlankWindow::Fail()
- {
- iFailWin=RBlankWindow(iWs);
- return(iFailWin.Construct(iWinGroup,44));
- }
-
-void COomBlankWindow::ClearUpL()
- {
- iFailWin.Close();
- }
-
-//
-
-COomPointerBuffer::COomPointerBuffer(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomPointerBuffer::~COomPointerBuffer()
- {
- iFailWin.Close();
- }
-
-TOomTestName COomPointerBuffer::TestName()
- {
- return(_L("Pointer buffer"));
- }
-
-void COomPointerBuffer::ConstructL()
- {
- COomSetup::ConstructL();
- iFailWin=RBackedUpWindow(iWs);
- User::LeaveIfError(iFailWin.Construct(iWinGroup,EGray16,55));
- User::LeaveIfError(iFailWin.SetSizeErr(TSize(10,10)));
- iFailWin.Activate();
- }
-
-/** Allocates a buffer for storing pointer movements for previously created backed-up window
-*/
-TInt COomPointerBuffer::Fail()
- {
- return(iFailWin.AllocPointerMoveBuffer(10,0));
- }
-
-void COomPointerBuffer::ClearUpL()
- {
- iFailWin.FreePointerMoveBuffer();
- }
-
-//
-
-COomPriorityKey::COomPriorityKey(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomPriorityKey::~COomPriorityKey()
- {
- }
-
-TOomTestName COomPriorityKey::TestName()
- {
- return(_L("Priority key"));
- }
-
-void COomPriorityKey::ConstructL()
- {
- COomSetup::ConstructL();
- }
-
-/** Adds a priority key for a previously created window group
-*/
-TInt COomPriorityKey::Fail()
- {
- return(iWinGroup.AddPriorityKey(1,0,0));
- }
-
-void COomPriorityKey::ClearUpL()
- {
- iWinGroup.RemovePriorityKey(1,0,0);
- }
-
-//
-
-COomCaptureKey::COomCaptureKey(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomCaptureKey::~COomCaptureKey()
- {
- }
-
-TOomTestName COomCaptureKey::TestName()
- {
- return(_L("Capture key"));
- }
-
-void COomCaptureKey::ConstructL()
- {
- COomSetup::ConstructL();
- }
-
-/** Requests a capture keys for a previously created window group
-*/
-TInt COomCaptureKey::Fail()
- {
- for (iIndex=0;iIndex<(TInt)(sizeof(iCapKey)/sizeof(iCapKey[0]));iIndex++)
- {
- TInt ret=iWinGroup.CaptureKey('a',0,0);
- if (ret<0)
- return(ret);
- iCapKey[iIndex]=ret;
- }
- return(KErrNone);
- }
-
-void COomCaptureKey::ClearUpL()
- {
- for (TInt index=0;index<iIndex;index++)
- iWinGroup.CancelCaptureKey(iCapKey[index]);
- }
-
-//
-
-COomCaptureKeyUpDown::COomCaptureKeyUpDown(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomCaptureKeyUpDown::~COomCaptureKeyUpDown()
- {
- }
-
-TOomTestName COomCaptureKeyUpDown::TestName()
- {
- return(_L("Capture up/down keys"));
- }
-
-void COomCaptureKeyUpDown::ConstructL()
- {
- COomSetup::ConstructL();
- }
-
-/** Requests the capture of key-up and key-down events for a previously created window group
-*/
-TInt COomCaptureKeyUpDown::Fail()
- {
- for (iIndex=0;iIndex<(TInt)(sizeof(iCapKey)/sizeof(iCapKey[0]));iIndex++)
- {
- TInt ret=iWinGroup.CaptureKeyUpAndDowns('a',0,0);
- if (ret<0)
- return(ret);
- iCapKey[iIndex]=ret;
- }
- return(KErrNone);
- }
-
-void COomCaptureKeyUpDown::ClearUpL()
- {
- for (TInt index=0;index<iIndex;index++)
- iWinGroup.CancelCaptureKeyUpAndDowns(iCapKey[index]);
- }
-
-//
-
-COomHotKey::COomHotKey(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomHotKey::~COomHotKey()
- {
- }
-
-TOomTestName COomHotKey::TestName()
- {
- return(_L("hot keys"));
- }
-
-void COomHotKey::ConstructL()
- {
- COomSetup::ConstructL();
- }
-
-/** Sets hot key for the session.
-*/
-TInt COomHotKey::Fail()
- {
- return(iWs.SetHotKey(EHotKeyEnableLogging,'a',0,0));
- }
-
-void COomHotKey::ClearUpL()
- {
- iWs.RestoreDefaultHotKey(EHotKeyEnableLogging);
- }
-
-//
-
-COomGroupName::COomGroupName(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomGroupName::~COomGroupName()
- {
- }
-
-TOomTestName COomGroupName::TestName()
- {
- return(_L("Group name"));
- }
-
-void COomGroupName::ConstructL()
- {
- COomSetup::ConstructL();
- }
-
-/** Sets the window group's name.
-*/
-TInt COomGroupName::Fail()
- {
- return(iWinGroup.SetName(_L("A Name")));
- }
-
-void COomGroupName::ClearUpL()
- {
- iWinGroup.SetName(_L(""));
- }
-
-//
-
-COomMessageSend::COomMessageSend(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomMessageSend::~COomMessageSend()
- {
- }
-
-TOomTestName COomMessageSend::TestName()
- {
- return(_L("MessageSend"));
- }
-
-void COomMessageSend::ConstructL()
- {
- COomSetup::ConstructL();
- }
-
-void COomMessageSend::PreFail()
- {
- iWinGroup2=RWindowGroup(iWs);
- iWinGroup2.Construct(557);
- iWinGroup2.EnableReceiptOfFocus(EFalse); // Stop auto group switching on close
- }
-
-/** Sends a message to another window group
-*/
-TInt COomMessageSend::Fail()
- {
- TBuf8<0x20> params(_L8("SomeParams"));
- return(iWs.SendMessageToWindowGroup(iWinGroup2.Identifier(),TUid::Uid(123),params));
- }
-
-void COomMessageSend::ClearUpL()
- {
- iWinGroup2.Close();
- }
-
-//
-
-COomMessageFetch::COomMessageFetch(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomMessageFetch::~COomMessageFetch()
- {
- }
-
-TOomTestName COomMessageFetch::TestName()
- {
- return(_L("MessageFetch"));
- }
-
-void COomMessageFetch::ConstructL()
- {
- COomSetup::ConstructL();
- }
-
-#define CLIENT_HANDLE 555
-#define UID_VALUE 123
-#define MESSAGE_LEN 0x20
-void COomMessageFetch::PreFail()
- {
- iWinGroup2=RWindowGroup(iWs);
- iWinGroup2.Construct(CLIENT_HANDLE);
- iWinGroup2.EnableReceiptOfFocus(EFalse); // Stop auto group switching on close
- TBuf8<MESSAGE_LEN> params(_L8("SomeParams"));
- TBool retVal = iWs.SendMessageToWindowGroup(iWinGroup2.Identifier(),TUid::Uid(UID_VALUE),params);
- iTest->TEST(retVal==KErrNone);
- if (retVal!=KErrNone)
- iTest->INFO_PRINTF3(_L("iWs.SendMessageToWindowGroup() return value - Expected: %d, Actual: %d"), KErrNone, retVal);
- }
-
-/** Fetches a message
-*/
-TInt COomMessageFetch::Fail()
- {
- TWsEvent event;
- TPtr8 ptr(NULL,0);
- TUid uid;
- event.SetType(EEventMessageReady);
- event.SetHandle(CLIENT_HANDLE);
- event.SetTimeNow();
- SEventMessageReady& eventMessageReady=*(SEventMessageReady*)event.EventData();
- eventMessageReady.iWindowGroupIdentifier=iWinGroup2.Identifier();
- eventMessageReady.iMessageUid=TUid::Uid(UID_VALUE);
- eventMessageReady.iMessageParametersSize=MESSAGE_LEN;
- TInt ret=TheClient->iWs.FetchMessage(uid,ptr,event);
- if (ret==KErrNone)
- User::Free((TAny *)ptr.Ptr());
- return(ret);
- }
-
-void COomMessageFetch::ClearUpL()
- {
- iWinGroup2.Close();
- }
-
-//
-
-COomRequestEvents::COomRequestEvents(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomRequestEvents::~COomRequestEvents()
- {
- }
-
-TOomTestName COomRequestEvents::TestName()
- {
- return(_L("Request events"));
- }
-
-void COomRequestEvents::ConstructL()
- {
- COomSetup::ConstructL();
- }
-
-/** Enables window group change events and modifier change events
-*/
-TInt COomRequestEvents::Fail()
- {
- TInt err;
- if ((err=iWinGroup.EnableOnEvents())==KErrNone)
- if ((err=iWinGroup.EnableGroupChangeEvents())==KErrNone)
- err=iWinGroup.EnableModifierChangedEvents(EModifierCapsLock,EEventControlAlways);
- return(err);
- }
-
-void COomRequestEvents::ClearUpL()
- {
- iWinGroup.DisableOnEvents();
- iWinGroup.DisableGroupChangeEvents();
- iWinGroup.DisableModifierChangedEvents();
- }
-
-//
-
-COomCopyScreen::COomCopyScreen(CTOom *aTest) : COomSetup(aTest)
- {}
-
-TOomTestName COomCopyScreen::TestName()
- {
- return(_L("Copy screen"));
- }
-
-COomCopyScreen::~COomCopyScreen()
- {
- delete iScrDev;
- delete iBitmap;
- }
-
-void COomCopyScreen::ConstructL()
- {
- COomSetup::ConstructL();
- iScrDev=new(ELeave) CWsScreenDevice(iWs);
- User::LeaveIfError(iScrDev->Construct(iTest->ScreenNumber()));
- iBitmap=new(ELeave) CFbsBitmap();
- User::LeaveIfError(iBitmap->Create(TSize(100,100),EGray4));
- }
-
-/** Copies screen to bitmap
-*/
-TInt COomCopyScreen::Fail()
- {
- TInt ret=iScrDev->CopyScreenToBitmap(iBitmap);
- if (ret==KErrNone)
- ret=iScrDev->CopyScreenToBitmap(iBitmap,TRect(10,10,50,50));
- return(ret);
- }
-
-void COomCopyScreen::ClearUpL()
- {
- }
-
-//
-
-COomSpriteBase::COomSpriteBase(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomSpriteBase::~COomSpriteBase()
- {
- iWin.Close();
- delete iBitmap;
- delete iMask;
- delete iBitmap2;
- delete iMask2;
- }
-
-void COomSpriteBase::ConstructL()
- {
- COomSetup::ConstructL();
- iWin=RWindow(iWs);
- User::LeaveIfError(iWin.Construct(iWinGroup,33));
- User::LeaveIfError(iWin.SetSizeErr(TSize(100,100)));
- iWin.Activate();
- iBitmap=new(ELeave) CFbsBitmap();
- User::LeaveIfError(iBitmap->Create(TSize(10,10),EGray4));
- iBitmap2=new(ELeave) CFbsBitmap();
- User::LeaveIfError(iBitmap2->Create(TSize(40,40),EGray4));
- iMask=new(ELeave) CFbsBitmap();
- User::LeaveIfError(iMask->Create(TSize(10,10),EGray4));
- iMask2=new(ELeave) CFbsBitmap();
- User::LeaveIfError(iMask2->Create(TSize(40,40),EGray4));
- }
-
-//
-
-COomSprite::COomSprite(CTOom *aTest) : COomSpriteBase(aTest)
- {}
-
-TOomTestName COomSprite::TestName()
- {
- return(_L("Sprites"));
- }
-
-/** Creates a sprite.
-*/
-TInt COomSprite::Fail()
- {
- iSprite=RWsSprite(iWs);
- TInt err=iSprite.Construct(iWin,TPoint(10,10),0);
- if (err==KErrNone)
- {
- TSpriteMember sprite;
- sprite.iBitmap=iBitmap;
- sprite.iMaskBitmap=iMask;
- sprite.iInvertMask=EFalse;
- sprite.iDrawMode=CGraphicsContext::EDrawModePEN;
- sprite.iOffset=TPoint(0,0);
- sprite.iInterval=TTimeIntervalMicroSeconds32(100000);
- if ((err=iSprite.AppendMember(sprite))==KErrNone)
- if ((err=iSprite.Activate())==KErrNone)
- {
- sprite.iBitmap=iBitmap2; // Bigger bitmap to force resize of bitmap
- sprite.iMaskBitmap=iMask2;
- if ((err=iSprite.AppendMember(sprite))==KErrNone)
- err=iSprite.UpdateMember(1,sprite);
- }
- }
- return(err);
- }
-
-void COomSprite::ClearUpL()
- {
- iSprite.Close();
- }
-
-//
-
-COomPointerCursor::COomPointerCursor(CTOom *aTest) : COomSpriteBase(aTest)
- {}
-
-TOomTestName COomPointerCursor::TestName()
- {
- return(_L("Pointer cursor"));
- }
-
-/** Creates a pointer cursor.
-*/
-TInt COomPointerCursor::Fail()
- {
- iPointerCursor=RWsPointerCursor(iWs);
- TInt err=iPointerCursor.Construct(0);
- if (err==KErrNone)
- {
- TSpriteMember sprite;
- sprite.iBitmap=iBitmap;
- sprite.iMaskBitmap=iMask;
- sprite.iInvertMask=EFalse;
- sprite.iDrawMode=CGraphicsContext::EDrawModePEN;
- sprite.iOffset=TPoint(0,0);
- sprite.iInterval=TTimeIntervalMicroSeconds32(100000);
- if ((err=iPointerCursor.AppendMember(sprite))==KErrNone)
- if ((err=iPointerCursor.Activate())==KErrNone)
- {
- sprite.iBitmap=iBitmap2; // Bigger bitmap to force resize of bitmap
- sprite.iMaskBitmap=iMask2;
- if ((err=iPointerCursor.AppendMember(sprite))==KErrNone)
- err=iPointerCursor.UpdateMember(1,sprite);
- }
- }
- return(err);
- }
-
-void COomPointerCursor::ClearUpL()
- {
- iPointerCursor.Close();
- }
-
-//
-
-COomGc::COomGc(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomGc::~COomGc()
- {
- delete iScrDev;
- }
-
-TOomTestName COomGc::TestName()
- {
- return(_L("Graphic Context"));
- }
-
-void COomGc::ConstructL()
- {
- COomSetup::ConstructL();
- iScrDev=new(ELeave) CWsScreenDevice(iWs);
- User::LeaveIfError(iScrDev->Construct(iTest->ScreenNumber()));
- }
-
-/** Creates a graphical context for a previously created screen device.
-*/
-TInt COomGc::Fail()
- {
- TRAPD(err,iFailGc=new(ELeave) CWindowGc(iScrDev));
- if (err!=KErrNone)
- return(err);
- return(iFailGc->Construct());
- }
-
-void COomGc::ClearUpL()
- {
- delete iFailGc;
- iFailGc=NULL;
- }
-
-//
-
-COomPolygon::COomPolygon(CTOom *aTest) : COomSetup(aTest), iPnts(5)
- {}
-
-COomPolygon::~COomPolygon()
- {
- delete iGc;
- delete iScrDev;
- iWin.Close();
- }
-
-TOomTestName COomPolygon::TestName()
- {
- return(_L("Polygon"));
- }
-
-void COomPolygon::ConstructL()
- {
- COomSetup::ConstructL();
- iScrDev=new(ELeave) CWsScreenDevice(iWs);
- User::LeaveIfError(iScrDev->Construct(iTest->ScreenNumber()));
- User::LeaveIfError(iScrDev->CreateContext(iGc));
- iWin=RBackedUpWindow(iWs);
- User::LeaveIfError(iWin.Construct(iWinGroup,EGray16,33));
- User::LeaveIfError(iWin.SetSizeErr(TSize(40,40)));
- iWin.Activate();
- TInt index;
- for(index=0;index<20;index+=2)
- iPnts.AppendL(TPoint(20+index,index));
- for(index=0;index<20;index+=2)
- iPnts.AppendL(TPoint(40-index,20+index));
- for(index=0;index<20;index+=2)
- iPnts.AppendL(TPoint(20-index,40-index));
- for(index=0;index<20;index+=2)
- iPnts.AppendL(TPoint(index,20-index));
- }
-
-/** Draws a polygon.
-*/
-TInt COomPolygon::Fail()
- {
- iGc->Activate(iWin);
- iGc->Clear();
- iGc->SetBrushStyle(CGraphicsContext::ESolidBrush);
- iGc->SetBrushColor(TRgb::Gray4(2));
- iGc->SetPenColor(TRgb::Gray4(0));
- TInt err=iGc->DrawPolygon(&iPnts,CGraphicsContext::EAlternate);
- if (err!=KErrNone)
- return(err);
- err=iGc->DrawPolygon(&iPnts,CGraphicsContext::EWinding);
- if (err!=KErrNone)
- return(err);
- return(KErrNone);
- }
-
-void COomPolygon::ClearUpL()
- {
- iGc->Deactivate();
- }
-
-//
-
-COomScreenDevice::COomScreenDevice(CTOom *aTest) : COomSetup(aTest)
- {}
-
-TOomTestName COomScreenDevice::TestName()
- {
- return(_L("Screen device"));
- }
-
-/** Creates a screen device handle.
-*/
-TInt COomScreenDevice::Fail()
- {
- TRAPD(err,iScrDev=new(ELeave) CWsScreenDevice(iWs));
- if (err!=KErrNone)
- return(err);
- return(iScrDev->Construct(iTest->ScreenNumber()));
- }
-
-void COomScreenDevice::ClearUpL()
- {
- delete iScrDev;
- iScrDev=NULL;
- }
-
-//
-
-COomCustomTextCursor::COomCustomTextCursor(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomCustomTextCursor::~COomCustomTextCursor()
- {
- delete iMemberArray;
- delete iBitmap;
- }
-
-TOomTestName COomCustomTextCursor::TestName()
- {
- return(_L("Custom Text Cursor"));
- }
-
-void COomCustomTextCursor::ConstructL()
- {
- COomSetup::ConstructL();
-
- iBitmap = new(ELeave) CFbsBitmap;
- User::LeaveIfError(iBitmap->Load(TEST_BITMAP_NAME, EMbmWsautotestBmp1));
-
- TSpriteMember member;
- member.iMaskBitmap=NULL;
- member.iInvertMask=EFalse;
- member.iDrawMode=CGraphicsContext::EDrawModePEN;
- member.iOffset=TPoint();
- member.iInterval=TTimeIntervalMicroSeconds32(0);
- member.iBitmap = iBitmap;
-
- iMemberArray = new(ELeave) CArrayFixFlat<TSpriteMember>(1);
- iMemberArray->AppendL(member);
- }
-
-/** Adds a custom text cursor to the server's list of cursors.
-*/
-TInt COomCustomTextCursor::Fail()
- {
- TInt err = TheClient->iWs.SetCustomTextCursor(0x98765432, iMemberArray->Array(), 0, RWsSession::ECustomTextCursorAlignTop);
- if (err == KErrAlreadyExists)
- return KErrNone;
- else
- return err;
- }
-
-void COomCustomTextCursor::ClearUpL()
- {
- }
-
-COomTranspWindow::COomTranspWindow(CTOom *aTest) : COomSetup(aTest)
- {}
-
-COomTranspWindow::~COomTranspWindow()
- {
- delete iBackgroundWin;
- delete iFirst;
- delete iSecond;
-
- delete iFbsBitmap;
- delete iWsBitmap;
- delete iFbsBitmapDevice;
- delete iFbsBitmapGc;
- delete iWsBitmapDevice;
- delete iWsBitmapGc;
- }
-
-TOomTestName COomTranspWindow::TestName()
- {
- return(_L("Transparent Window"));
- }
-
-void COomTranspWindow::ConstructL()
- {
- COomSetup::ConstructL();
-
- iTransparencyEnabled = (TransparencySupportedL() == KErrNone);
- if(!iTransparencyEnabled)
- return;
-
- iFbsBitmap = new (ELeave) CFbsBitmap;
-
- // Do the creation
- const TSize KSizeForBitmap(10,10);
- iFbsBitmap->Create(KSizeForBitmap,EGray256);
-
- // Fill the bitmap with a colour
- iFbsBitmapDevice=CFbsBitmapDevice::NewL(iFbsBitmap);
-
- iFbsBitmapDevice->CreateContext(iFbsBitmapGc);
-
- iFbsBitmapGc->SetPenStyle(CGraphicsContext::ENullPen);
- iFbsBitmapGc->SetBrushStyle(CGraphicsContext::ESolidBrush);
- iFbsBitmapGc->SetBrushColor(128);
- iFbsBitmapGc->DrawRect(TRect(KSizeForBitmap));
-
- // Create a CWsBitmap, and fill it with a colour
- iWsBitmap = new (ELeave) CWsBitmap(TheClient->iWs);
-
- // Do the creation
- iWsBitmap->Create(KSizeForBitmap,EGray256);
-
- // Fill the bitmap with a colour
- iWsBitmapDevice=CFbsBitmapDevice::NewL(iWsBitmap);
-
- iWsBitmapDevice->CreateContext(iWsBitmapGc);
- iWsBitmapGc->SetPenStyle(CGraphicsContext::ENullPen);
- iWsBitmapGc->SetBrushStyle(CGraphicsContext::ESolidBrush);
- iWsBitmapGc->SetBrushColor(128);
- iWsBitmapGc->DrawRect(TRect(KSizeForBitmap));
- }
-
-
-/** Does nothing if transparency is not enabled. Creates a blank window with
-* two transparent child-windows. Tests setting the transparency via a factor, CFbsBitmap
-* or a CWsBitmap, and changing from one to the other.
-* Changes child-windows' sizes and toggles their visibility.
-*/
-TInt COomTranspWindow::Fail()
- {
- if(!iTransparencyEnabled)
- return KErrNone;
- TSize scrSize(TheClient->iScreen->SizeInPixels());
- TRAPD(res, iBackgroundWin = new (ELeave) CBlankWindow(TRgb(0,0,238)));
- if(res != KErrNone)
- {
- return res;
- }
-
- TDisplayMode mode=EColor256;
- TRAP(res, iBackgroundWin->SetUpL(TPoint(50,50),scrSize-TSize(100,100),TheClient->iGroup,*TheClient->iGc,&mode));
- if(res != KErrNone)
- {
- return res;
- }
-
- TheClient->Flush();
- TheClient->WaitForRedrawsToFinish();
-
- iBackgroundWin->Win()->SetBackgroundColor(TRgb(51,204,51));
- iBackgroundWin->Invalidate();
-
- TheClient->Flush();
- TheClient->WaitForRedrawsToFinish();
-
- TRect thePos1(20, 20, 60, 60);
- TRect thePos2(100, 40, 160, 80);
- TRAP(res, iFirst = CTransWindow::NewL(iBackgroundWin, TRgb(255,0,0,128),&mode));
- if(res != KErrNone)
- {
- return res;
- }
-
- TRAP(res, iSecond = CTransWindow::NewL(iBackgroundWin, TRgb(255,0,0,128),&mode));
- if(res != KErrNone)
- {
- return res;
- }
-
- TRAP(res, iFirst->SetExtL(thePos1.iTl,thePos1.Size()));
- if(res != KErrNone)
- {
- return res;
- }
-
- TRAP(res, iSecond->SetExtL(thePos2.iTl,thePos2.Size()));
- if(res != KErrNone)
- {
- return res;
- }
-
- res=SetTransparencyTesting();
- if(res != KErrNone)
- {
- return res;
- }
-
- TheClient->Flush();
- //TheClient->WaitForRedrawsToFinish();
-
- iFirst->Activate();
- iFirst->AssignGC(*TheClient->iGc);
-
- iSecond->Activate();
- iSecond->AssignGC(*TheClient->iGc);
-
- iFirst->Win()->SetBackgroundColor(TRgb(0, 0, 255));
- iSecond->Win()->SetBackgroundColor(TRgb(0, 0, 255));
- iFirst->Invalidate();
- iSecond->Invalidate();
-
- iFirst->AdjustSize(150,10, 0);
- iSecond->AdjustSize(150,10, 0);
-
- TheClient->Flush();
- TheClient->WaitForRedrawsToFinish();
-
- iFirst->ToggleVisibility();
- iSecond->ToggleVisibility();
-
- TheClient->Flush();
- TheClient->WaitForRedrawsToFinish();
-
- iFirst->AdjustSize(200,10, 0);
- iSecond->AdjustSize(200,10, 0);
-
- iFirst->ToggleVisibility();
- iSecond->ToggleVisibility();
-
- TheClient->Flush();
- TheClient->WaitForRedrawsToFinish();
-
- return KErrNone;
- }
-
-
-// This function tests setting the transparency via a factor, CFbsBitmap
-// or a CWsBitmap, and changing from one to the other.
-TInt COomTranspWindow::SetTransparencyTesting()
- {
- TInt res;
- TLogMessageText buf;
-
- // Need all nine transitions, from the 3 ways to the same 3 ways.
- // The ways are Factor, CWsBitmap, CFbsBitmap
- const TRgb KTransparencyFactor(128,128,128);
- res=iFirst->Win()->SetTransparencyFactor(KTransparencyFactor);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyFactor -1");
- TheClient->LogMessage(buf);
- return res;
- }
-
- res=iFirst->Win()->SetTransparencyBitmap(*iFbsBitmap);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyBitmap - fbs -2");
- TheClient->LogMessage(buf);
- return res;
- }
-
- res=iFirst->Win()->SetTransparencyWsBitmap(*iWsBitmap);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyBitmap - Ws -3");
- TheClient->LogMessage(buf);
- return res;
- }
-
- res=iFirst->Win()->SetTransparencyFactor(KTransparencyFactor);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyBitmap - fbs -4");
- TheClient->LogMessage(buf);
- return res;
- }
- res=iFirst->Win()->SetTransparencyWsBitmap(*iWsBitmap);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyBitmap - Ws -5");
- TheClient->LogMessage(buf);
- return res;
- }
- res=iFirst->Win()->SetTransparencyWsBitmap(*iWsBitmap);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyBitmap - Ws -6");
- TheClient->LogMessage(buf);
- return res;
- }
-
- res=iFirst->Win()->SetTransparencyBitmap(*iFbsBitmap);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyBitmap - fbs -7");
- TheClient->LogMessage(buf);
- return res;
- }
-
- res=iFirst->Win()->SetTransparencyBitmap(*iFbsBitmap);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyBitmap - fbs -8");
- TheClient->LogMessage(buf);
- return res;
- }
-
- res=iFirst->Win()->SetTransparencyFactor(KTransparencyFactor);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyFactor -9");
- TheClient->LogMessage(buf);
- return res;
- }
-
- res=iFirst->Win()->SetTransparencyFactor(KTransparencyFactor);
- if (res!=KErrNone)
- {
- buf=_L("test failure!! with SetTransparencyFactor -10");
- TheClient->LogMessage(buf);
- return res;
- }
-
- return res;
- }
-
-void COomTranspWindow::ClearUpL()
- {
- delete iFirst;
- iFirst = NULL;
- delete iSecond;
- iSecond = NULL;
- delete iBackgroundWin;
- iBackgroundWin = NULL;
- }
-
-//
-
-CWindowWithOneLine* CWindowWithOneLine::NewL(CTWinBase& aParent, const TRect& aExtent)
- {
- CWindowWithOneLine* self = new(ELeave) CWindowWithOneLine;
- CleanupStack::PushL(self);
- self->ConstructL(aParent);
- const TSize screenSize(TheClient->iScreen->SizeInPixels());
- self->SetExtL(aExtent.iTl, aExtent.Size());
- self->AssignGC(*TheClient->iGc);
- self->Activate();
- self->DrawNow();
- CleanupStack::Pop(self);
- return self;
- }
-
-void CWindowWithOneLine::Draw()
- {
- iGc->DrawLine(TPoint(0,0), TPoint(Size().iWidth, Size().iHeight));
- }
-
-//
-
-COomObscuredWindow::COomObscuredWindow(CTOom *aTest) : COomSetup(aTest)
- {}
-
-TOomTestName COomObscuredWindow::TestName()
- {
- return(_L("Obscured window"));
- }
-
-TInt COomObscuredWindow::Fail()
- {
- TRAPD(err, DoFailL());
- return err;
- }
-
-
-void COomObscuredWindow::DoFailL()
- {
-#ifdef __WINS__
- RDebug::Print(_L("COomObscuredWindow::DoFailL - enter"));
-#endif
- const TRect extent(20, 20, 100, 100);
- CBlankWindow* backgroundWindow = new(ELeave) CBlankWindow(TRgb(12, 23, 34));
- CleanupStack::PushL(backgroundWindow);
- TDisplayMode mode = EColor16MAP;
- backgroundWindow->SetUpL(extent.iTl, extent.Size(), TheClient->iGroup, *TheClient->iGc, &mode);
-
- CWindowWithOneLine* window = CWindowWithOneLine::NewL(*backgroundWindow, extent);
- CleanupStack::PushL(window);
-#ifdef __WINS__
- RDebug::Print(_L("COomObscuredWindow - WaitForRedrawsToFinish - 1"));
-#endif
- TheClient->WaitForRedrawsToFinish();
-
- CBlankWindow* obscuringWindow = new(ELeave) CBlankWindow(TRgb(255, 0, 0));
- CleanupStack::PushL(obscuringWindow);
- obscuringWindow->SetUpL(extent.iTl, extent.Size(), backgroundWindow, *TheClient->iGc, &mode);
-
- TheClient->Flush();
-#ifdef __WINS__
- RDebug::Print(_L("COomObscuredWindow - WaitForRedrawsToFinish - 2"));
-#endif
- TheClient->WaitForRedrawsToFinish();
-
- window->Invalidate();
-
- for(TInt i = 0; i < 50; i++)
- {
- RWindow anotherWin(iWs);
- User::LeaveIfError(anotherWin.Construct(iWinGroup, 11));
- anotherWin.Close();
-
- if(i % 4)
- window->Invalidate();
-
- TheClient->Flush();
-#ifdef __WINS__
- RDebug::Print(_L("COomObscuredWindow - WaitForRedrawsToFinish - 3 - %d"), i);
-#endif
- TheClient->WaitForRedrawsToFinish();
- }
-
- TheClient->Flush();
-#ifdef __WINS__
- RDebug::Print(_L("COomObscuredWindow - WaitForRedrawsToFinish - 4"));
-#endif
- TheClient->WaitForRedrawsToFinish();
-
- CleanupStack::PopAndDestroy(obscuringWindow);
- CleanupStack::PopAndDestroy(window);
- CleanupStack::PopAndDestroy(backgroundWindow);
-#ifdef __WINS__
- RDebug::Print(_L("COomObscuredWindow::DoFailL - exit"));
-#endif
- }
-
-void COomObscuredWindow::ClearUpL()
- {
- }
-
-//
-
-CTOom::CTOom(CTestStep* aStep) : CTWsGraphicsBase(aStep)
- {
- iState = 0;
- }
-
-const TDesC& CTOom::TestName() const
- {
- _LIT(KTestName,"CTOom");
- return(KTestName());
- }
-
-void CTOom::DoOomTestL(COomFailBase *aOomTest)
- {
- //TLogMessageText buf;
- TEST(aOomTest!=NULL);
- if (aOomTest==NULL)
- INFO_PRINTF1(_L("aOomTest - Expected: Not Null, Actual: NULL"));
-
- TRAPD(ret1,aOomTest->ConstructL());
- TEST(ret1==KErrNone);
- if (ret1!=KErrNone)
- INFO_PRINTF3(_L("aOomTest->ConstructL() return value - Expected: %d, Actual: %d"), KErrNone, ret1);
-
- aOomTest->Flush();
- __UHEAP_MARK;
-// TInt oldCount=TheClient->iWs.HeapCount();
- for(TInt mode=0;mode<3;mode++)
- {
- /*buf.Format(_L("OOMTest[%d] Mode=%d"),iState,mode),
- TheClient->LogMessage(buf);*/
- TInt successCount=0;
- for(TInt count=1;;count++)
- {
- TInt ret;
- aOomTest->PreFail();
- if (mode==0)
- TheClient->iWs.HeapSetFail(RHeap::EDeterministic,count);
- else if (mode==1)
- TheClient->iWs.HeapSetBurstFail(RHeap::EBurstFailNext, count, KMaxTUint16);
- else if (mode==3)
- {
- __UHEAP_SETFAIL(RHeap::EDeterministic,count); //Leavescan will complain about EFailNext, although it isn't a leaving function
- }
- ret=aOomTest->Fail();
- if (mode==0)
- TheClient->iWs.HeapSetFail(RHeap::ENone,0);
- else if (mode==1)
- TheClient->iWs.HeapSetBurstFail(RHeap::ENone, 0, 0);
- else if (mode==2)
- {
- __UHEAP_RESET;
- }
- aOomTest->ClearUpL(); //In just 1 case this could leave...
- aOomTest->Flush();
- if (ret==KErrNone)
- {
- if (successCount==10)
- break;
- successCount++;
- }
- else
- {
- /*if (successCount>0)
- {
- buf.Format(_L("[%d,%d] Count=%d, MaxSuccess=%d"),iState,mode,count,successCount);
- TheClient->LogMessage(buf);
- }*/
- successCount=0;
- /*if (ret!=KErrNoMemory)
- {
- buf.Format(_L("[%d,%d] Fail, Count=%d, Error=%d"),iState,mode,count,ret);
- TheClient->LogMessage(buf);
- }*/
- TEST(ret==KErrNoMemory);
- if (ret!=KErrNoMemory)
- INFO_PRINTF3(_L("aOomTest->Fail() return value - Expected: %d, Actual: %d"), KErrNoMemory, ret);
-
- }
- }
- /*buf.Format(_L("[%d,%d] LastCount=%d"),iState,mode,count),
- TheClient->LogMessage(buf);*/
- }
-// TEST(oldCount>=TheClient->iWs.HeapCount());
- __UHEAP_MARKEND;
- delete aOomTest;
- /*buf.Format(_L("OOMTest[%d] Finished"),iState);
- TheClient->LogMessage(buf);*/
- }
-
-void CTOom::ConstructL()
- {
- iShieldWin=RBlankWindow(TheClient->iWs);
- User::LeaveIfError(iShieldWin.Construct(*(TheClient->iGroup->GroupWin()),1));
-// iShieldWin.SetOrdinalPosition(0,-1);
- iShieldWin.Activate();
- }
-
-CTOom::~CTOom()
- {
- iShieldWin.Close();
- }
-
-/**
-@SYMTestCaseID GRAPHICS-WSERV-0124
-
-@SYMDEF DEF081259
-
-@SYMTestCaseDesc Out of memory tests
-
-@SYMTestPriority High
-
-@SYMTestStatus Implemented
-
-@SYMTestActions Uses deterministic heap failure mode to test WSERV classes against out-of-memory errors.
- Sets and unsets deterministic mode using both RWsSession.HeapSetFail() methods and
- __UHEAP_SETFAIL/__UHEAP_RESET macros (doing this both client and WSERV threads are tested).
- On each step the test creates a failure object and repeatedly asks it to do some work (calling Fail() method).
- A failure object is an object which encapsulates some allocation functionality inside it's Fail() method.
- The test is performed for 23 different failure objects that do the following:
- 1. Creates a wserv session, connects and creates CWsScreenDevice object.
- 2. Creates a RWindowGroup object.
- 3. Creates a RWindow object.
- 4. Creates a RBackedUpWindow object.
- 5. Sets the size of previously created backed-up window.
- 6. Creates a RBlankWindow object.
- 7. Allocates a buffer for storing pointer movements for a previously created backed-up window.
- 8. Adds a priority key for a previously created window group.
- 9. Requests a capture keys for a previously created window group.
- 10. Requests the capture of key-up and key-down events for a previously created window group.
- 11. Sets hot key for the session.
- 12. Sets the window group's name.
- 13. Sends a message to another window group.
- 14. Fetches a message.
- 15. Enables window group change events and modifier change events.
- 16. Copies screen to bitmap.
- 17. Creates a sprite.
- 18. Creates a pointer cursor.
- 19. Creates a graphical context for a previously created screen device.
- 20. Draws a polygon.
- 21. Creates a screen device handle.
- 22. Adds a custom text cursor to the server's list of cursors.
- 23. Does nothing if transparency is not enabled. Creates a blank window with
- two transparent child-windows. Tests setting the transparency via a factor, CFbsBitmap
- or a CWsBitmap, and changing from one to the other.
- Changes child-windows' sizes and toggles their visibility.
-
-
-@SYMTestExpectedResults The test checks that the creation failure objects doesn't fail and their's work either causes no errors or causes KErrNoMemory error.
-*/
-void CTOom::RunTestCaseL(TInt /*aCurTestCase*/)
- {
- ((CTOomStep*)iStep)->SetTestStepID(_L("GRAPHICS-WSERV-0124"));
- if (iState==0)
- {
- // commented by Anton Golovko, 01.03.2006 while converting to TEF
- // the code below prevented the test to do anything.
-// if (iTest->IsFullRomL())
-// {
-// TestComplete();
-// return;
-// }
- iOldCount=TheClient->iWs.HeapCount();
- }
- else if (iState==sizeof(CreateOomFailTest)/sizeof(CreateOomFailTest[0]))
- {
- iTest->CloseAllPanicWindows();
- TInt heapCount=TheClient->iWs.HeapCount();
- if (heapCount>iOldCount)
- {
- TEST(iOldCount>=heapCount-184); //For some uninvestigated reason 184 object get allocated on the server side, partly because of INFO_PRINTF1
- if (iOldCount<heapCount-184)
- INFO_PRINTF3(_L("iOldCount>=heapCount-174 - Expected: %d, Actual: %d"), heapCount-184, iOldCount);
-
- }
- ((CTOomStep*)iStep)->CloseTMSGraphicsStep();
- TestComplete();
- return;
- }
- DoOomTestL(CreateOomFailTest[iState++](this));
- ((CTOomStep*)iStep)->RecordTestResultL();
- }
-
-
-
-
-__WS_CONSTRUCT_STEP__(Oom)
-