--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/connectivitylayer/isimessage/isimessage_dll/internal/test/src/ctestbase.cpp Fri Nov 06 17:28:23 2009 +0000
@@ -0,0 +1,210 @@
+/*
+* 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 the License "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:
+*
+*/
+
+
+
+/*
+-------------------------------------------------------------------------------
+
+ DESCRIPTION
+
+ This file contains the header file of CTestBase of
+ CTestModule
+
+-------------------------------------------------------------------------------
+*/
+// INCLUDES
+#include <f32file.h> // For RDebug
+
+#include "ctestbase.h"
+
+/*
+-------------------------------------------------------------------------------
+
+ Class: CTestBase
+
+ Method: GetCaseNameL
+
+ Description: Returns the name of the case.
+
+ Parameters: TInt aCase
+
+ Return Values: TText*
+
+ Errors/Exceptions: If parameter is wrong value.
+
+ Parameter is under zero or below the amount of cases.
+
+ Status: Draft
+
+-------------------------------------------------------------------------------
+*/
+const TText* CTestBase::GetCaseNameL
+ (
+ TInt aClassCase // The number of the case.
+ )
+ {
+
+ const TText* caseName = NULL;
+ TInt caseCount( iNameArray->Count() );
+ // If case out of limits panic.
+ if( aClassCase < 0 || aClassCase > caseCount )
+ {
+ RDebug::Print( _L("CTestBase GetCaseNameL") );
+ User::Panic( _L("CTestBase"), 0 );
+ }
+ caseName = iNameArray->At( aClassCase );
+
+ return caseName;
+
+ }
+
+/*
+-------------------------------------------------------------------------------
+
+ Class: CTestBase
+
+ Method: ~CTestBase
+
+ Description: Destructor
+
+ Handles the deletion of member variables.
+
+ Parameters: None
+
+ Return Values: None
+
+ Errors/Exceptions: None
+
+ Status: Draft
+
+-------------------------------------------------------------------------------
+*/
+CTestBase::~CTestBase
+ (
+ // None
+ )
+ {
+
+ if( iArray )
+ {
+ for( TInt i( 0 ); i < iArray->Count(); i++ )
+ {
+ iArray->Delete( i );
+ }
+ iArray->Reset();
+ delete iArray;
+ }
+ if( iNameArray )
+ {
+ for( TInt i( 0 ); i < iNameArray->Count(); i++ )
+ {
+ iNameArray->Delete( i );
+ }
+ iNameArray->Reset();
+ delete iNameArray;
+ }
+
+ }
+
+/*
+-------------------------------------------------------------------------------
+
+ Class: CTestBase
+
+ Method: AddTestCaseL
+
+ Description: Add a new test case.
+
+ Adds new test case.
+
+ Return Values: None
+
+ Status: Draft
+
+-------------------------------------------------------------------------------
+*/
+void CTestBase::AddTestCaseL
+ (
+ TInt (MTest::* aTestFunction)( TExecutionAndDebugInfo& ),
+ const TText* aFunctionName
+ )
+ {
+
+ // If not initialized the function array.
+ if( !iArray )
+ {
+ iArray = new( ELeave )CArrayFixFlat<MTestFunction>( 1 );
+ }
+ // Add function to array.
+ iArray->AppendL( ( MTestFunction )( ( aTestFunction ) ) );
+ iNumberOfCases++;
+ // If not initialized the case name array.
+ if( !iNameArray )
+ {
+ iNameArray = new( ELeave )CArrayFixFlat<const TText*>( 1 );
+ }
+ // Add name to array.
+ const TText* text = aFunctionName;
+ iNameArray->AppendL( text );
+
+ }
+
+/*
+-------------------------------------------------------------------------------
+
+ Class: CTestBase
+
+ Method: AddTestCaseL
+
+ Description: Add a new test case.
+
+ Adds new test case.
+
+ Return Values: None
+
+ Status: Draft
+
+-------------------------------------------------------------------------------
+*/
+void CTestBase::AddTestCaseL
+ (
+ const TDesC& aFunctionName, // The name of the function as descriptor.
+ TInt (MTest::* aTestFunction)( TExecutionAndDebugInfo& ) // Function Ptr
+ )
+ {
+
+ // If not initialized the function array.
+ if( !iArray )
+ {
+ iArray = new( ELeave )CArrayFixFlat<MTestFunction>( 1 );
+ }
+ // Add function to array.
+ iArray->AppendL( ( MTestFunction )( ( aTestFunction ) ) );
+ iNumberOfCases++;
+ // If not initialized the case name array.
+ if( !iNameArray )
+ {
+ iNameArray = new( ELeave )CArrayFixFlat<const TText*>( 1 );
+ }
+ // Add name to array.
+ const TText* text = aFunctionName.Ptr();
+ iNameArray->AppendL( text );
+
+ }
+
+// End of file.