mobilemessaging/smsmtm/test/src/t_smsinit.cpp
changeset 0 72b543305e3a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mobilemessaging/smsmtm/test/src/t_smsinit.cpp	Thu Dec 17 08:44:11 2009 +0200
@@ -0,0 +1,121 @@
+// Copyright (c) 1999-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 <e32test.h>
+#include <e32std.h>
+#include "t_smsinit.h"
+
+RTest test(_L("T_SmsInit Testrig"));
+CTrapCleanup* theCleanup;
+
+LOCAL_C void doMainL()
+	{
+	CActiveScheduler* iScheduler = new (ELeave) CActiveScheduler;
+	CleanupStack::PushL(iScheduler);
+	CActiveScheduler::Install( iScheduler );
+
+	CSmsInit* SmsTest = CSmsInit::NewL(test, ETuCreateTestDirectories);
+	CleanupStack::PushL(SmsTest);
+
+	SmsTest->StartL();
+
+	CleanupStack::PopAndDestroy(2); //SmsTest, iScheduler
+	}
+
+GLDEF_C TInt E32Main()
+	{	
+	__UHEAP_MARK;
+	test.Start(_L("Setup"));
+	theCleanup = CTrapCleanup::New();
+	TRAPD(ret,doMainL());		
+	test(ret==KErrNone);
+	delete theCleanup;	
+	test.Console()->SetPos(0, 13);
+	test.End();
+	test.Close();
+	__UHEAP_MARKEND;
+	return(KErrNone);
+	}
+
+CSmsInit::CSmsInit()
+: CSmsTestBase()
+	{
+	}
+
+void CSmsInit::ConstructL(RTest& aTest, TUint aCreationFlags)
+	{
+	iSmsTest = CSmsTestUtils::NewL(aTest, aCreationFlags);
+	}
+
+void CSmsInit::ShowMenuL()
+	{
+	iSmsTest->ResetMenu();
+
+	iSmsTest->AppendToMenuL(_L("Create SMS MTM Dat File"));
+	iSmsTest->AppendToMenuL(_L("Install SMS MTM Group"));
+	iSmsTest->AppendToMenuL(_L("Both of the Above (Create Dat File and Install MTM Group)"));
+	iSmsTest->AppendToMenuL(_L("Replace/Create Sms Service"));
+	iSmsTest->AppendToMenuL(_L("All of the Above"));
+
+	TInt result = iSmsTest->DisplayMenu(_L("SMS Initialisation"));
+
+	if (result <= 0)
+		return;
+
+	if (result == 1 || result == 3 || result == 5)
+		{
+		iSmsTest->Printf(_L("Creating SMS MTM Dat File\n"));
+		iSmsTest->CreateServerMtmRegsL();
+		}
+
+	if (result != 1)
+		{
+		iSmsTest->Printf(_L("Going Client Side\n"));
+		iSmsTest->GoClientSideL();
+		}
+
+	if (result != 1 && result != 4)
+		{
+		iSmsTest->Printf(_L("Installing SMS MTM Group\n"));
+		iSmsTest->InstallMtmGroupsL();
+		}
+
+	if (result == 4 || result == 5)
+		{
+		iSmsTest->Printf(_L("Replacing/Creating Sms Service\n"));
+		iSmsTest->DeleteServicesL();
+		iSmsTest->CreateServicesL();
+		}
+
+	iSmsTest->Test().Printf(_L("\nPress any key to continue..."));
+	iSmsTest->Test().Getch();
+
+	ShowMenuL();
+	}
+
+CSmsInit::~CSmsInit()
+	{
+	}
+
+CSmsInit* CSmsInit::NewL(RTest& aTest, TUint aCreationFlags)
+	{
+	CSmsInit* self = new (ELeave) CSmsInit();
+	CleanupStack::PushL(self);
+
+	self->ConstructL(aTest, aCreationFlags);
+
+	CleanupStack::Pop();
+	return self;
+	}