telephonyserver/etelserverandcore/TETEL/TE_ETEL/TE_Etelloadmodule.cpp
changeset 0 3553901f7fa8
child 24 6638e7f4bd8f
equal deleted inserted replaced
-1:000000000000 0:3553901f7fa8
       
     1 // Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #include "TE_EtelBase.h"
       
    17 #include "TE_Etelloadmodule.h"
       
    18 
       
    19 CTestLoadModule1::CTestLoadModule1()
       
    20 /** Each test step initialises it's own name
       
    21 */
       
    22 	{
       
    23 	SetTestStepName(_L("TestLoadModule1"));
       
    24 	}
       
    25 
       
    26 enum TVerdict CTestLoadModule1::doTestStepL()
       
    27 	{
       
    28 	INFO_PRINTF1(_L("Test Load Modules Case 1"));
       
    29     RTelServer server;
       
    30 	TInt ret = server.Connect();
       
    31 	INFO_PRINTF2(_L("RTelServer::Connect returned %d."),ret);
       
    32     TESTCHECK(ret, KErrNone);
       
    33    	ret=server.LoadPhoneModule(DSTD_MODULE_NAME);
       
    34     TESTCHECK(ret, KErrNone);
       
    35    	ret=server.LoadPhoneModule(DSTDNC_MODULE_NAME);
       
    36     TESTCHECK(ret, KErrNone);
       
    37 
       
    38   	ret=server.UnloadPhoneModule(DSTD_MODULE_NAME);
       
    39 	TESTCHECK(ret, KErrNone);
       
    40   	ret=server.UnloadPhoneModule(DSTDNC_MODULE_NAME);
       
    41 	TESTCHECK(ret, KErrNone);
       
    42     ServerClose(server);
       
    43 
       
    44 	return TestStepResult();
       
    45 	}
       
    46 
       
    47 CTestLoadModule2::CTestLoadModule2()
       
    48 /** Each test step initialises it's own name
       
    49 */
       
    50 	{
       
    51 	SetTestStepName(_L("TestLoadModule2"));
       
    52 	}
       
    53 
       
    54 enum TVerdict CTestLoadModule2::doTestStepL()
       
    55 	{
       
    56 	INFO_PRINTF1(_L("Test Load Modules Case 2"));
       
    57     RTelServer server;
       
    58 	// Unload in the wrong order
       
    59 	INFO_PRINTF1(_L("Load two modules wrong order!"));
       
    60     TInt ret = server.Connect();
       
    61 	INFO_PRINTF2(_L("RTelServer::Connect returned %d."),ret);
       
    62     TESTCHECK(ret, KErrNone);
       
    63    	ret=server.LoadPhoneModule(DSTD_MODULE_NAME);
       
    64     TESTCHECK(ret, KErrNone);
       
    65    	ret=server.LoadPhoneModule(DSTDNC_MODULE_NAME);
       
    66     TESTCHECK(ret, KErrNone);
       
    67 
       
    68   	ret=server.UnloadPhoneModule(DSTDNC_MODULE_NAME);
       
    69 	TESTCHECK(ret, KErrNone);
       
    70   	ret=server.UnloadPhoneModule(DSTD_MODULE_NAME);
       
    71 	TESTCHECK(ret, KErrNone);
       
    72     ServerClose(server);
       
    73 
       
    74 	return TestStepResult();
       
    75 	}
       
    76 
       
    77 CTestLoadModule3::CTestLoadModule3()
       
    78 /** Each test step initialises it's own name
       
    79 */
       
    80 	{
       
    81 	SetTestStepName(_L("TestLoadModule3"));
       
    82 	}
       
    83 
       
    84 enum TVerdict CTestLoadModule3::doTestStepL()
       
    85 	{
       
    86 	INFO_PRINTF1(_L("Test Load Modules Case 3"));
       
    87     RTelServer server;
       
    88 
       
    89     TInt ret = server.Connect();
       
    90 	INFO_PRINTF2(_L("RTelServer::Connect returned %d."),ret);
       
    91     TESTCHECK(ret, KErrNone);
       
    92    	ret=server.LoadPhoneModule(DSTD_MODULE_NAME);
       
    93     TESTCHECK(ret, KErrNone);
       
    94    	ret=server.LoadPhoneModule(DSTDNC_MODULE_NAME);
       
    95     TESTCHECK(ret, KErrNone);
       
    96 
       
    97 	RPhone pDstd;
       
    98 	RPhone pDstdFc;
       
    99 	RPhone pDstdPm;
       
   100 	RPhone pDstdNc;
       
   101 
       
   102 	ret=pDstd.Open(server,DSTD_PHONE_NAME);
       
   103     TESTCHECK(ret, KErrNone);
       
   104 	ret=pDstdFc.Open(server,DSTDFC_PHONE_NAME);
       
   105     TESTCHECK(ret, KErrNone);
       
   106 	// There is a timer on the above Open
       
   107 	// Must do a synch req to ensure this time is expired
       
   108 	RPhone::TCaps cap;
       
   109 	ret=pDstdFc.GetCaps(cap);
       
   110     TESTCHECK(ret, KErrNone);
       
   111 	ret=pDstdPm.Open(server,DSTDPM_PHONE_NAME);
       
   112     TESTCHECK(ret, KErrNone);
       
   113 	ret=pDstdNc.Open(server,DSTDNC_PHONE_NAME);
       
   114     TESTCHECK(ret, KErrNone);
       
   115 
       
   116 	RCall callHarryDstd;
       
   117 	RCall callHarryDstdFc;
       
   118 	RCall callHarryDstdPm;
       
   119 	RCall callHarryDstdNc;
       
   120 
       
   121     ret = callHarryDstd.OpenNewCall(pDstd,DSTD_OPEN_CALL_FROM_PHONE_NAME);
       
   122 	TESTCHECK(ret, KErrNone);
       
   123     ret = callHarryDstdFc.OpenNewCall(pDstdFc,DSTDFC_OPEN_CALL_FROM_PHONE_NAME);
       
   124 	TESTCHECK(ret, KErrNone);
       
   125     ret = callHarryDstdPm.OpenNewCall(pDstdPm,DSTDPM_OPEN_CALL_FROM_PHONE_NAME);
       
   126 	TESTCHECK(ret, KErrNone);
       
   127     ret = callHarryDstdNc.OpenNewCall(pDstdNc,DSTDNC_OPEN_CALL_FROM_PHONE_NAME);
       
   128 	TESTCHECK(ret, KErrNone);
       
   129 
       
   130 	RCall::TStatus status;
       
   131 	ret = callHarryDstd.GetStatus(status);
       
   132 	TESTCHECK(ret, KErrNone);
       
   133 	ret = callHarryDstdFc.GetStatus(status);
       
   134 	TESTCHECK(ret, KErrNone);
       
   135 	ret = callHarryDstdPm.GetStatus(status);
       
   136 	TESTCHECK(ret, KErrNone);
       
   137 	ret = callHarryDstdNc.GetStatus(status);
       
   138 	TESTCHECK(ret, KErrNone);
       
   139 	// close ...
       
   140 	callHarryDstd.Close();
       
   141 	callHarryDstdFc.Close();
       
   142 	callHarryDstdPm.Close();
       
   143 	callHarryDstdNc.Close();
       
   144 
       
   145 	pDstd.Close();
       
   146 	pDstdFc.Close();
       
   147 	pDstdPm.Close();
       
   148 	pDstdNc.Close();
       
   149 
       
   150 	ret=server.UnloadPhoneModule(DSTD_MODULE_NAME);
       
   151 	TESTCHECK(ret, KErrNone);
       
   152   	ret=server.UnloadPhoneModule(DSTDNC_MODULE_NAME);
       
   153 	TESTCHECK(ret, KErrNone);
       
   154     ServerClose(server);
       
   155 
       
   156 	return TestStepResult();
       
   157 	}