telephonyserverplugins/multimodetsy/test/gprs/tmain.cpp
changeset 0 3553901f7fa8
child 24 6638e7f4bd8f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/telephonyserverplugins/multimodetsy/test/gprs/tmain.cpp	Tue Feb 02 01:41:59 2010 +0200
@@ -0,0 +1,208 @@
+// 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:
+// Main test file for the automated testing
+// usage:   t_gprs --keepgoing   for automated testing 
+// 
+//
+
+/**
+ @file
+*/
+
+#include "tmain.h"
+
+#include <commsdattypesv1_1.h>
+
+#include <autotest.h>
+#include <plpsess.h>        // RRemoteLink
+
+GLDEF_D RTest gTest(_L("GPRS Test Code"));
+
+GLDEF_D     RPhone          gPhone;
+GLDEF_D     RTelServer      gServer;
+//GLREF_D     RConnection		conn;
+//GLDEF_D     RGenericAgent	gGenericAgent;
+GLDEF_D     RSocketServ		gSocketServer;
+GLDEF_D		RPacketService	gPacketService;
+GLDEF_D		RPacketContext	gPacketContext[20];
+// Inifile object.
+GLDEF_D		CConfigParams* testConfigParams;
+
+GLDEF_D		TPhoneBrand GPhoneBrand;
+
+LOCAL_C void InitGlobals()
+/**
+ * Initialise global variables.
+ */
+    {
+#ifdef __WINS__
+    User::After(5*KOneSecond);      // allow emulator time to start up
+#endif
+    gTest.Start(_L("Load TSY"));
+    gTest(gServer.Connect()==KErrNone);
+    gTest(gServer.LoadPhoneModule(KtsyName)==KErrNone);
+    gTest.Next(_L("Contact the Phone"));
+    // Run the tests    
+  //  gTest(gPhone .Open(gServer,KPhoneName)== KErrNone);
+	gTest(gPhone.Open(gServer, KPhoneName)==KErrNone);
+	gTest(gPhone .Initialise()==KErrNone);
+
+	gTest(gSocketServer.Connect() == KErrNone);
+//	gTest(gGenericAgent.Open() == KErrNone);
+	gTest(conn.Open(gSocketServer, KAfInet) == KErrNone);
+
+	// Open the ini file with the web settings.
+	TRAPD(err,testConfigParams = CConfigParams::NewL(KTGPRSConfigFile()));
+	gTest(err == KErrNone);
+	const TPtrC phoneBrand = testConfigParams->FindAlphaVar(KTestCfgPhoneMake,KNullDesC);
+	if(phoneBrand == KTestCfgPhoneMotorola)
+		GPhoneBrand = EMotorola;
+	else if(phoneBrand == KTestCfgPhoneEricsson)
+		GPhoneBrand = EEricsson;
+	else 
+		{
+    gTest.Printf(_L("There is no phone specified in ini file or the phone is not supported"));
+		User::Panic(_L("There is no phone specified in ini file or the phone is not supported."), KErrNotSupported);
+		}
+	}
+
+
+LOCAL_C void DestroyGlobals()
+/**
+ * Free global variables
+ */
+    {
+    gPhone .Close();
+    gServer.Close();
+	
+//	gGenericAgent.Close();
+	conn.Close();
+	gSocketServer.Close();
+	delete testConfigParams;
+	testConfigParams = NULL;
+    }
+
+
+LOCAL_C void RunTestsL()
+/**
+ * Run all the tests
+ */
+    {
+    InitGlobals();
+	AutoTestExecute();
+    DestroyGlobals();
+    }
+
+
+#if defined (__WINS__)
+#define PDD_NAME _L("ECDRV")
+#define PDD_NAME2 _L("ECDRV")
+#define LDD_NAME _L("ECOMM")
+#else
+#define PDD_NAME _L("EUART1")
+#define LDD_NAME _L("ECOMM")
+#endif
+
+
+int CommInit()
+/**
+ * This function does the actual loading of the drivers needed.
+ */
+    {
+    RFs fs;
+    TInt err=fs.Connect();  // make sure the FileServer is alive (only needed for WINS test code)
+    fs.Close();
+
+    gTest.Printf(_L("CommInit: Loading PDD ") );
+    gTest.Printf(PDD_NAME);
+    gTest.Printf(_L("\n"));
+    err=User::LoadPhysicalDevice(PDD_NAME);
+    if (err!=KErrNone && err!=KErrAlreadyExists)
+        return(err);
+
+    gTest.Printf(_L("CommInit: Loading LDD ") );
+    gTest.Printf(LDD_NAME);
+    gTest.Printf(_L("\n"));
+    err=User::LoadLogicalDevice(LDD_NAME );
+    if (err!=KErrNone && err!=KErrAlreadyExists)
+        return(err);
+
+    gTest.Printf(_L("CommInit: Starting C32 \n") );
+ 	// When bootstrapping C32 we have to avoid the PhBkSyncServer being started, since
+ 	// it needs a different CommDB
+ 	_LIT(KPhbkSyncCMI, "phbsync.cmi");
+	err = StartC32WithCMISuppressions(KPhbkSyncCMI);
+    return (err == KErrNone || err == KErrAlreadyExists) ? KErrNone : err;
+    }
+
+
+TInt E32Main()
+/**
+ * @test Main program tsmsmsg
+ */
+    {
+
+    CTrapCleanup* cleanup = CTrapCleanup::New();
+    CActiveScheduler* theActiveScheduler = new CActiveScheduler();
+    CActiveScheduler::Install(theActiveScheduler);
+
+    __UHEAP_MARK;
+
+    gTest.SetLogged(EFalse);    // to avoid garbage on Com port
+    gTest.Title();
+    TInt ret = CommInit();
+    if(ret != KErrNone)
+        {
+        gTest.Printf(_L("ERROR: Leave %d\n"), ret);
+        }
+    else
+        {
+        gTest.Start(_L("Starting tests..."));
+        TRAPD(err,RunTestsL());
+        if (err!=KErrNone)
+            gTest.Printf(_L("ERROR: Leave %d\n"),err);
+         
+
+        }
+
+    gTest.End();
+    gTest.Close();
+
+    __UHEAP_MARKEND;
+
+    delete cleanup;
+    delete theActiveScheduler;
+    return KErrNone;
+    }
+
+
+
+/**
+ * for the EXEDLL targettype
+ */
+
+EXPORT_C TInt WinsMain()
+    {
+#if defined(__WINS__)
+    E32Main();
+#endif
+    return KErrNone;
+    }
+
+
+
+// EOF - TSMMAIN.CPP
+
+
+