phonesrv_plat/voice_mailbox_number_api/tsrc/src/vmbxenginetest.cpp
branchRCL_3
changeset 19 7d48bed6ce0c
parent 18 594d59766373
child 20 987c9837762f
--- a/phonesrv_plat/voice_mailbox_number_api/tsrc/src/vmbxenginetest.cpp	Thu Aug 19 10:28:14 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,453 +0,0 @@
-/*
-* Copyright (c) 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:  For packing VMBXEngine test component.
-*
-*/
-
-
-// INCLUDE FILES
-#include <stiftestinterface.h>
-#include <stifparser.h>
-#include <e32math.h>
-#include <centralrepository.h>
-#include <cenrepnotifyhandler.h>
-
-#include "vmnumber.h"
-#include "vmbxenginetest.h"
-
-// ======== MEMBER FUNCTIONS ========
-
-const TUid KUidVoiceMailbox = {0x101F874F};
-const TUint32 KVmUIKeyOpts = 0x00000010;
-
-
-const TInt KVmUIKeyOptsForSimOnly = 1;
-const TInt KVmDefaultUIKeyOpts = 0;
-
-// ---------------------------------------------------------------------------
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// ---------------------------------------------------------------------------
-//
-CVmbxEngineTest::CVmbxEngineTest( CTestModuleIf& aTestModuleIf ) :
-    CScriptBase( aTestModuleIf ), iSession( NULL ), iNotifyHandler( NULL )
-    {
-    }
-
-// ---------------------------------------------------------------------------
-// ConstructL
-// ---------------------------------------------------------------------------
-//
-void CVmbxEngineTest::ConstructL()
-    {
-    // Constructing static buffer size logger, needed with OOM testing because
-    // normally logger allocates memory from heap!
-    iLog = CStifLogger::NewL( KLogPath,
-                              KLogFile,
-                              CStifLogger::ETxt,
-                              CStifLogger::EFile,
-                              EFalse,
-                              ETrue,
-                              ETrue,
-                              EFalse,
-                              ETrue,
-                              EFalse,
-                              100 );
-    iLog->Log( _L( "CVmbxEngineTest logging starts!" ) );
-    }
-
-// ---------------------------------------------------------------------------
-// NewL creates a new test module
-// ---------------------------------------------------------------------------
-//
-CVmbxEngineTest* CVmbxEngineTest::NewL( CTestModuleIf& aTestModuleIf )
-    {
-    CVmbxEngineTest* self = new ( ELeave ) CVmbxEngineTest( aTestModuleIf );
-    CleanupStack::PushL( self );
-    self->ConstructL();
-    CleanupStack::Pop();
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CVmbxEngineTest::~CVmbxEngineTest()
-    {
-    if ( iLog )
-        {
-        iLog->Log( _L( "###### TEST MODULE CLOSED #######" ) );
-        delete iLog;
-        }
-    
-    delete iVmbxNumber;
-    
-    if ( iNotifyHandler )
-        {
-        iNotifyHandler->StopListening();
-        delete iNotifyHandler;
-        }
-
-    delete iSession;
-    delete iNumberBuf;    
-    }
-
-// ---------------------------------------------------------------------------
-// From class CScriptBase.
-// Runs a script line
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::RunMethodL( CStifItemParser& aItem )
-    {
-    static TStifFunctionInfo const KFunctions[] =
-        {
-        ENTRY( "Connect", CVmbxEngineTest::Connect ),
-        ENTRY( "Close", CVmbxEngineTest::Close ),
-        // test RVmbxNumber APIs
-        ENTRY( "AllowedToChangeTheNumber", 
-                CVmbxEngineTest::AllowedToChangeTheNumber ),
-        ENTRY( "SelectTypeL", CVmbxEngineTest::SelectTypeL ),
-        ENTRY( "IsSimMemory", CVmbxEngineTest::IsSimMemory ),
-        ENTRY( "QueryVideoMbxNumber", CVmbxEngineTest::QueryVideoMbxNumber ),
-        ENTRY( "QueryNumberL", CVmbxEngineTest::QueryNumberL ),
-        ENTRY( "GetVideoMbxNumber", CVmbxEngineTest::GetVideoMbxNumber ),
-        ENTRY( "ConfCenRepForEditNotAllowedL", 
-        		CVmbxEngineTest::ConfCenRepForEditNotAllowedL ),
-        ENTRY( "RevertCenRepEditNotAllowedL", 
-        		CVmbxEngineTest::RevertCenRepEditNotAllowedL ),
-        ENTRY( "ConfCenRepForEditAllowedL", 
-                CVmbxEngineTest::ConfCenRepForEditAllowedL ),
-        ENTRY( "InitGetNumFromSpecialMem", 
-                CVmbxEngineTest::InitGetNumFromSpecialMem ),
-        ENTRY( "TestGetNumFromSpecialMem", 
-                CVmbxEngineTest::TestGetNumFromSpecialMem ),
-        ENTRY( "CleanupGetNumFromSpecialMem", 
-                CVmbxEngineTest::CleanupGetNumFromSpecialMem )
-        };
-
-    const TInt count = sizeof( KFunctions ) /
-        sizeof( TStifFunctionInfo );
-
-    return RunInternalL( KFunctions, count, aItem );
-    }
-
-// ---------------------------------------------------------------------------
-// Calls CVmbxEngineTest::Connect method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::Connect( CStifItemParser& /*aItem*/ )
-    {
-    TInt error = KErrAlreadyExists;
-    if ( !iVmbxNumber )
-        {
-        iVmbxNumber = new RVmbxNumber();
-        if ( iVmbxNumber )
-            {
-            iLog->Log( _L( "Opening.." ) );
-            error = iVmbxNumber->Open();
-            if ( KErrNone == error )
-            	{
-            	// save the source number temporarily 
-            	// so that it will be used while some cases are reverted.
-            	SaveSourceNumber();
-            	}
-            }
-        }
-    iLog->Log( _L( "Connecting done, %d" ), error );
-    return error;
-    }
-
-// ---------------------------------------------------------------------------
-// Calls CVmbxEngineTest::Close method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::Close( CStifItemParser& /*aItem*/ )
-    {
-    iLog->Log( _L( "Closing.." ) );
-
-    if ( iVmbxNumber )
-        {
-        iVmbxNumber->Close();
-        delete iVmbxNumber;
-        iVmbxNumber = NULL;
-        
-        if ( iNumberBuf )
-            {
-            delete iNumberBuf;
-            iNumberBuf = NULL;
-            }  
-        }
-    return KErrNone;
-    }
-
-// ---------------------------------------------------------------------------
-// CVmbxEngineTest::AllowedToChangeTheNumber method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::AllowedToChangeTheNumber( CStifItemParser& /*aItem*/ )
-    {
-    TInt result( KErrNone );
-    result = iVmbxNumber->AllowedToChangeTheNumber();
-
-    iLog->Log( _L( "AllowedToChangeTheNumber return %d" ), result);
-    return result;
-    }
-
-// ---------------------------------------------------------------------------
-// CVmbxEngineTest::SelectTypeL method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::SelectTypeL( CStifItemParser& /*aItem*/ )
-    {
-    TInt result( KErrNone );
-    TRAP( result, iVmbxNumber->SelectTypeL( EVmbxDefine ) );
-
-    iLog->Log( _L( "SelectTypeL return result %d" ), result );
-    return result;
-    }
-
-// ---------------------------------------------------------------------------
-// CVmbxEngineTest::IsSimMemory method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::IsSimMemory( CStifItemParser& /*aItem*/ )
-    {
-    // Use allownextresult keyword in config file to control what is expected
-    // return value in your test case.
-    TInt result( KErrNone );
-    result = iVmbxNumber->IsSimMemory();
-    iLog->Log( _L( "IsSimMemory return %d" ), result );
-    return result;
-    }
-
-// ---------------------------------------------------------------------------
-// CVmbxEngineTest::QueryVideoMbxNumber method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::QueryVideoMbxNumber( CStifItemParser& aItem )
-    {
-    // Use allownextresult keyword in config file to control what is expected
-    // return value in your test case.
-    TInt result( KErrNone );
-    TBuf< KVmbxMaxNumberLength > number;
-
-    TInt queryType( KErrNone );
-    aItem.GetNextInt( queryType );
-
-    TRAP( result, iVmbxNumber->QueryVideoMbxNumberL( 
-    ( TVmbxQueryType )queryType, number ) );
-
-    iLog->Log( _L( "QueryVideoMbxNumber return %d" ), result );
-    return result;
-    }
-
-// ---------------------------------------------------------------------------
-// CVmbxEngineTest::QueryNumberL method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::QueryNumberL( CStifItemParser& aItem )
-    {
-    // Use allownextresult keyword in config file to control what is expected
-    // return value in your test case.
-    TInt result( KErrNone );
-    TBuf< KVmbxMaxNumberLength > number;
-
-    TInt queryType( KErrNone );
-    aItem.GetNextInt( queryType );
-
-    TRAP( result, iVmbxNumber->QueryNumberL( ( TVmbxQueryType )queryType, 
-    number, EFalse ) );
-        
-    iLog->Log( _L( "QueryNumberL return %d" ), result );
-    return result;
-    }
-
-// ---------------------------------------------------------------------------
-// CVmbxEngineTest::GetVideoMbxNumber method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::GetVideoMbxNumber( CStifItemParser& /*aItem*/ )
-    {
-    // Use allownextresult keyword in config file to control what is expected
-    // return value in your test case.
-    TInt result( KErrNone );
-    TBuf< KVmbxMaxNumberLength > number;
-
-    result = iVmbxNumber->GetVideoMbxNumber( number );
-
-    iLog->Log( _L( "GetVideoMbxNumber return %d" ), result );
-    return result;
-    }
-
-// ---------------------------------------------------------------------------
-// Calls CVmbxEngineTest::ConfCenRepForEditNotAllowedL method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::ConfCenRepForEditNotAllowedL( CStifItemParser& /*aItem*/ )
-    {
-    TInt ret( KErrNone );
-    // create central repository for session and handler
-    CreateCentralRepositoryL();
-    
-    // configurate the key for the special condition like "sim only"
-    ret = iSession->Set( KVmUIKeyOpts, KVmUIKeyOptsForSimOnly );
-
-    iLog->Log( _L( "ConfCenRepForEditNotAllowedL %d" ), ret );
-    return ret;
-    }
-
-// ---------------------------------------------------------------------------
-// Calls CVmbxEngineTest::RevertCenRepEditNotAllowedL method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::RevertCenRepEditNotAllowedL( CStifItemParser& /*aItem*/ )
-    {
-    TInt ret( KErrNone );
-    // reset the key to default value
-    ret = iSession->Set( KVmUIKeyOpts, KVmDefaultUIKeyOpts );
-    iLog->Log( _L( "RevertCenRepEditNotAllowedL %d" ), ret );
-    return ret;
-    }
-
-// ---------------------------------------------------------------------------
-// Calls CVmbxEngineTest::ConfCenRepForEditAllowedL method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::ConfCenRepForEditAllowedL( CStifItemParser& /*aItem*/ )
-    {
-    TInt ret( KErrNone );
-    // create central repository for session and handler
-    CreateCentralRepositoryL();
-    
-    // configurate the key for the special condition like "sim only"
-    ret = iSession->Set( KVmUIKeyOpts, KVmDefaultUIKeyOpts );
-
-    iLog->Log( _L( "ConfCenRepForEditAllowedL %d" ), ret );
-    return ret;
-    }
-
-// ---------------------------------------------------------------------------
-// Calls CVmbxEngineTest::InitGetNumFromSpecialMem method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::InitGetNumFromSpecialMem( CStifItemParser& aItem )
-	{
-	TInt ret( KErrNone );
-	
-	// Get number from Script file
-	TPtrC numberFromScript;
-	aItem.GetNextString( numberFromScript );
-	iLog->Log( _L( "InitGetNumFromSpecialMem saving number %S" ), 
-			&numberFromScript );
-	
-	// the number need to be saved to the sim/phone memory 
-	// to init the special case
-	ret = iVmbxNumber->SaveVmbxNumber( numberFromScript, 
-			EAlsActiveLineEntry );
-		
-	iLog->Log( _L( "InitGetNumFromSpecialMem return %d" ), ret );
-	return ret;
-	}
-
-// ---------------------------------------------------------------------------
-// Calls CVmbxEngineTest::TestGetNumFromSpecialMem method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::TestGetNumFromSpecialMem( CStifItemParser& aItem )
-	{
-	TInt ret( KErrNotFound );
-    TBuf< KVmbxMaxNumberLength > number;
-    // Use allownextresult keyword in config file to control what is expected
-    // return value in your test case.
-	
-	TPtrC numberFromScript;
-	aItem.GetNextString( numberFromScript );
-	iLog->Log( _L( "TestGetNumFromSpecialMem saving number %S" ), 
-			&numberFromScript );
-    
-	ret = iVmbxNumber->GetVmbxNumber( number );
-	if ( KErrNone == ret && KErrNone == number.Compare( numberFromScript ) )
-		{
-		ret = KErrNone;
-		}
-	
-	iLog->Log( _L( "TestGetNumFromSpecialMem number %S" ), &number );
-	iLog->Log( _L( "TestGetNumFromSpecialMem return %d" ), ret );
-	return ret;
-	}
-
-// ---------------------------------------------------------------------------
-// Calls CVmbxEngineTest::CleanupGetNumFromSpecialMem method
-// ---------------------------------------------------------------------------
-//
-TInt CVmbxEngineTest::CleanupGetNumFromSpecialMem( CStifItemParser& /*aItem*/ )
-	{
-	TInt ret( KErrNone );
-	// revert the source number to sim/phone memory
-	ret = iVmbxNumber->SaveVmbxNumber( *iNumberBuf, 
-			EAlsActiveLineEntry );
-	
-	iLog->Log( _L( "CleanupGetNumFromSpecialMem return %d" ), ret );
-	return ret;
-	}
-
-// ---------------------------------------------------------------------------
-// Save the source number temporarily
-// ---------------------------------------------------------------------------
-//
-void CVmbxEngineTest::SaveSourceNumber()
-	{
-	iNumberBuf = HBufC::New( KVmbxMaxNumberLength );
-	if ( iNumberBuf )
-		{
-		TPtr ptr( iNumberBuf->Des() );
-		iVmbxNumber->GetVmbxNumber( ptr );
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// Create central repository for session and handler
-// ---------------------------------------------------------------------------
-//
-void CVmbxEngineTest::CreateCentralRepositoryL()
-	{
-	if ( !iSession )
-		{
-		// create central repository
-		iSession = CRepository::NewL( KUidVoiceMailbox );
-		}
-	
-	if ( !iNotifyHandler )
-		{
-		// set notify handler, when the key had been changed
-		// in the whole repository
-		iNotifyHandler = CCenRepNotifyHandler::NewL( *this, *iSession );
-		if ( iNotifyHandler )
-			{
-			iNotifyHandler->StartListeningL();
-			}		
-		}	
-	}
-
-// ======== GLOBAL FUNCTIONS ========
-// -----------------------------------------------------------------------------
-// LibEntryL is a polymorphic Dll entry point
-// Returns: CScriptBase*: Pointer to Test Module object
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CScriptBase* LibEntryL( CTestModuleIf& aTestModuleIf )
-    {
-    return CVmbxEngineTest::NewL( aTestModuleIf );
-    }