--- a/stif/TestScripter/src/TestScripterInternal.cpp Mon Jun 28 15:36:07 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,390 +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: This file contains TestScripterImp implementation.
-*
-*/
-
-// INCLUDE FILES
-#include <StifTestInterface.h>
-#include <StifParser.h>
-#include "TestScripterInternal.h"
-#include "TestScripter.h"
-// EXTERNAL DATA STRUCTURES
-//extern ?external_data;
-
-// EXTERNAL FUNCTION PROTOTYPES
-//extern ?external_function( ?arg_type,?arg_type );
-
-// CONSTANTS
-//const ?type ?constant_var = ?constant;
-
-// MACROS
-//#define ?macro ?macro_def
-
-// LOCAL CONSTANTS AND MACROS
-//const ?type ?constant_var = ?constant;
-//#define ?macro_name ?macro_def
-
-// MODULE DATA STRUCTURES
-//enum ?declaration
-//typedef ?declaration
-
-// LOCAL FUNCTION PROTOTYPES
-//?type ?function_name( ?arg_type, ?arg_type );
-
-// FORWARD DECLARATIONS
-//class ?FORWARD_CLASSNAME;
-
-// ============================= LOCAL FUNCTIONS ===============================
-
-// None
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CScriptBase::CScriptBase
-// Constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CScriptBase::CScriptBase( CTestModuleIf& aTestModuleIf ):
- iTestModuleIf( aTestModuleIf )
- {
- // Handles multible 'waittestclass' given in test configure file.
- iSignalErrors.Reset();
-
- }
-
-
-// -----------------------------------------------------------------------------
-// CScriptBase::TestModuleIf
-// Get reference to TestModuleIf API.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CTestModuleIf& CScriptBase::TestModuleIf()
- {
-
- return iTestModuleIf;
-
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::Signal
-// Signal TestScripter to continue from waittestclass.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CScriptBase::Signal( TInt aError )
- {
-
- if( iStatus )
- {
- User::RequestComplete( iStatus, aError );
- }
- else
- {
- // Handles multible 'waittestclass' given in test configure file.
- // There is active object in CTestRunner also and it has higher
- // priority than CTestContinue(It must be higher that e.g.
- // 'allownextresult' is gotten right from configure file). That why we
- // have to use this array and take signal "count" to the array for
- // later handling.
- iSignalErrors.Append( aError );
- }
-
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::CallTestClass
-// Called from test class. TestScripter forwards
-// operations to other test class object.
-// aLine: in: <object name> <method name> <parameters>
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::CallTestClass( const TDesC& aLine )
- {
-
- if( iFunc )
- {
- return iFunc( iTestScripter, EStifTSCallClass, aLine );
- }
-
- return KErrNotSupported;
-
- };
-
-// -----------------------------------------------------------------------------
-// CScriptBase::GetTestObject
-// Get test class object address.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CScriptBase* CScriptBase::GetTestObject( const TDesC& aObjectName )
- {
-
- if( iFunc )
- {
- TInt ret = iFunc( iTestScripter, EStifTSGetObject, aObjectName );
- if( ret > 0 )
- {
- return( CScriptBase* )ret;
- }
- }
-
- return NULL;
- };
-
-// -----------------------------------------------------------------------------
-// CScriptBase::EnableSignal
-// Enable Signal().
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CScriptBase::EnableSignal( TRequestStatus& aStatus )
- {
-
- aStatus = KRequestPending;
- iStatus = &aStatus;
-
- // Handles multible 'waittestclass' given in test configure file.
- if( iSignalErrors.Count() > 0 )
- {
- // Complete signal and remove it from array.
- TInt error = iSignalErrors[0];
- iSignalErrors.Remove( 0 );
- User::RequestComplete( iStatus, error );
- }
-
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::CancelSignal
-// Cancel Signal().
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CScriptBase::CancelSignal()
- {
- if(iStatus!=NULL)
- {
- User::RequestComplete( iStatus, KErrCancel );
- }
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::SetScripter
-// Set scripter callback.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CScriptBase::SetScripter( CallBackFunc aFunc, CTestScripter* aTestScripter )
- {
-
- iTestScripter = aTestScripter;
- iFunc = aFunc;
-
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::RunInternalL
-// Run specified method from test class.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::RunInternalL (
- TStifFunctionInfo const aFunctions[],
- TInt aCount,
- CStifItemParser& aItem )
- {
-
- TInt ret = KErrNotFound;
-
- TPtrC command;
- User::LeaveIfError ( aItem.GetNextString( command ) );
- TInt i = 0;
- TName funcName;
-
- // Search function from table and call it
- for ( i = 0; i < aCount; i++ )
- {
- funcName = aFunctions[i].iFunctionName;
- if ( command == funcName )
- {
- if( iLog )
- {
- iLog->Log(_L("Calling [%S]"), &command );
- }
- ret = ( this->*(aFunctions[i].iMethod) )( aItem );
-
- break;
- }
-
- }
-
- if( i == aCount )
- {
- iLog->Log( _L("[%S] not found"), &command );
- }
-
- return ret;
-
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::GetConstantValue
-// Internal fuction to get const value defined in
-// [Define]...[Enddefine] section of script file
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::GetConstantValue( const TDesC& aName, TDes& aValue )
- {
- return iTestScripter->GetConstantValue( aName, aValue );
- }
-
-
-// -----------------------------------------------------------------------------
-// CScriptBase::GetConstantValue
-// Internal fuction to get const value defined in
-// [Define]...[Enddefine] section of script file
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::GetConstantValue( const TDesC& aName, TInt& aValue )
- {
- TInt ret = KErrNone;
- TBuf<32> valStr;
- ret = iTestScripter->GetConstantValue( aName, valStr );
- if ( ret != KErrNone )
- {
- return ret;
- }
-
- TLex converter( valStr );
- ret = converter.Val( aValue );
-
- return ret;
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::GetConstantValue
-// Internal fuction to get const value defined in
-// [Define]...[Enddefine] section of script file
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::GetConstantValue( const TDesC& aName, TReal& aValue )
- {
- TInt ret = KErrNone;
- TBuf<32> valStr;
- ret = iTestScripter->GetConstantValue( aName, valStr );
- if ( ret != KErrNone )
- {
- return ret;
- }
-
- TLex converter( valStr );
- ret = converter.Val( aValue );
-
- return ret;
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::SetResultDescription
-// Result description can be set from within the test class method
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CScriptBase::SetResultDescription(const TDesC& aDescription)
- {
- iTestScripter->SetResultDescription(aDescription);
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::SetLocalValue
-// Internal fuction to set local value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::SetLocalValue(const TDesC& aName, const TDesC& aValue)
- {
- return iTestScripter->SetLocalValue(aName, aValue);
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::SetLocalValue
-// Internal fuction to set local value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::SetLocalValue(const TDesC& aName, const TInt aValue)
- {
- TBuf<20> buf;
- buf.Format(_L("%d"), aValue);
- return iTestScripter->SetLocalValue(aName, buf);
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::SetLocalValue
-// Internal fuction to set local value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::SetLocalValue(const TDesC& aName, const TReal aValue )
- {
- TBuf<50> buf;
- buf.Format(_L("%g"), aValue);
- return iTestScripter->SetLocalValue(aName, buf);
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::GetLocalValue
-// Internal fuction to get local value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::GetLocalValue(const TDesC& aName, TDes& aValue)
- {
- return iTestScripter->GetLocalValue(aName, aValue);
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::GetLocalValue
-// Internal fuction to get local value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::GetLocalValue(const TDesC& aName, TInt& aValue)
- {
- TInt ret = KErrNone;
- TBuf<50> valStr;
- ret = iTestScripter->GetLocalValue(aName, valStr);
- if(ret != KErrNone)
- {
- return ret;
- }
-
- TLex converter(valStr);
- ret = converter.Val(aValue);
-
- return ret;
- }
-
-// -----------------------------------------------------------------------------
-// CScriptBase::GetLocalValue
-// Internal fuction to get local value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CScriptBase::GetLocalValue(const TDesC& aName, TReal& aValue )
- {
- TInt ret = KErrNone;
- TBuf<50> valStr;
- ret = iTestScripter->GetLocalValue(aName, valStr);
- if(ret != KErrNone)
- {
- return ret;
- }
-
- TLex converter(valStr);
- ret = converter.Val(aValue);
-
- return ret;
- }
-
-// End of File