--- a/smsprotocols/smsstack/smsprot/Test/TE_Smsprt/TE_DoESockMemoryLeakTest.cpp Fri Mar 19 09:55:57 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,106 +0,0 @@
-
-// Copyright (c) 2007-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:
-//
-
-#include <cfshared.h>
-#include <c32root.h>
-
-#include "Te_SmsTestSteps.h"
-
-/**
- Test for any leaks in ESOCK
- The socket server must be closed down before this step is run, or no clients must be connected to esock
- when running this test step.
-*/
-TVerdict CESockMemoryLeakTest::doTestStepL()
- {
- //
- // Find the current number of leaked cells in ESock...
- //
- TInt ret, startLeakCounter;
-
- ret = RProperty::Get(KUidCommsProcess, KUidCommsModuleLeakCounter, startLeakCounter);
- if (ret == KErrNotFound)
- {
- // No variable to monitor, ESock is probably not in debug mode.
- INFO_PRINTF1(_L("<font size=2 color=00FFCC><B>ESock is probably not in debug mode.</B></font>"));
- return EPass;
- }
- else
- {
- TESTL(ret == KErrNone);
- }
-
- //
- // Connect to Rootserver...
- //
- RRootServ rootserver;
-
- User::LeaveIfError(rootserver.Connect());
- CleanupClosePushL(rootserver);
-
- //
- // Shutdown all the ESock CPMs gracefully...
- //
- TRSIter iter;
- TCFModuleName modName;
- TRSModuleInfo modInfo;
- TRequestStatus statusArray[16];
- TInt statusCount = 0;
-
- while (rootserver.EnumerateModules(iter, modName) == KErrNone)
- {
- if (rootserver.GetModuleInfo(modName, modInfo) == KErrNone &&
- modInfo.iParams.iDll.MatchF(_L("*ESOCKSVR.DLL")) >= 0)
- {
- rootserver.UnloadCpm(statusArray[statusCount++], modInfo.iParams.iName,
- EGraceful);
- }
- }
-
- while (statusCount > 0)
- {
- statusCount--;
- User::WaitForRequest(statusArray[statusCount]);
- TEST(statusArray[statusCount] == KErrNone);
- }
-
- //
- // Close Rootserver session...
- //
- CleanupStack::PopAndDestroy(1, &rootserver);
-
- //
- // Get the latest number of leaked cells in ESock...
- //
- TInt finalLeakCounter;
-
- ret = RProperty::Get(KUidCommsProcess, KUidCommsModuleLeakCounter, finalLeakCounter);
- TESTL(ret == KErrNone);
-
- if (finalLeakCounter > startLeakCounter)
- {
- INFO_PRINTF1(_L("<font size=2 color=FF0000><B>A memory leak has been detected inside ESock - Check SMS Stack!</B></font>"));
- TEST(finalLeakCounter == startLeakCounter);
- }
-
- //
- // Restart C32...
- //
- _LIT(KDummyCMI, "");
- WarmBootC32(KDummyCMI);
-
- return TestStepResult();
- } // CSmsPrtTestStep::DoESockMemoryLeakTestL