localconnectivityservice/locod/tsrc/locodTest/inc/daemonmt.h
author hgs
Fri, 15 Oct 2010 15:05:57 +0800
changeset 54 4dc88a4ac6f4
permissions -rw-r--r--
201041_02
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
54
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     1
/*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     2
* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     3
* All rights reserved.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     8
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
     9
* Initial Contributors:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    11
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    12
* Contributors:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    13
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    14
* Description:  daemonmt test module.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    15
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    16
*/
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    17
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    18
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    19
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    20
#ifndef DAEMONMT_H
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    21
#define DAEMONMT_H
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    22
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    23
// INCLUDES
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    24
#include "StifTestModule.h"
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    25
#include <StifLogger.h>
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    26
#include <e32property.h>
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    27
#include "BtSettings.h"
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    28
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    29
// CONSTANTS
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    30
//const ?type ?constant_var = ?constant;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    31
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    32
// MACROS
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    33
//#define ?macro ?macro_def
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    34
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    35
// Logging path
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    36
_LIT( KdaemonmtLogPath, "\\logs\\testframework\\daemonmt\\" ); 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    37
// Log file
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    38
_LIT( KdaemonmtLogFile, "daemonmt.txt" ); 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    39
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    40
// Function pointer related internal definitions
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    41
// Visual studio 6.0 (__VC32__) needs different type of handling 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    42
#ifdef __VC32__
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    43
#define GETPTR
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    44
#else
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    45
#define GETPTR &
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    46
#endif  
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    47
#define ENTRY(str,func) {_S(str), GETPTR func,0,0,0}
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    48
#define FUNCENTRY(func) {_S(#func), GETPTR func,0,0,0}
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    49
#define OOM_ENTRY(str,func,a,b,c) {_S(str), GETPTR func,a,b,c}
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    50
#define OOM_FUNCENTRY(func,a,b,c) {_S(#func), GETPTR func,a,b,c}
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    51
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    52
// FUNCTION PROTOTYPES
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    53
//?type ?function_name(?arg_list);
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    54
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    55
// FORWARD DECLARATIONS
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    56
//class ?FORWARD_CLASSNAME;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    57
class Cdaemonmt;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    58
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    59
// DATA TYPES
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    60
//enum ?declaration
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    61
//typedef ?declaration
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    62
//extern ?data_type;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    63
// A typedef for function that does the actual testing,
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    64
// function is a type 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    65
// TInt Cdaemonmt::<NameOfFunction> ( TTestResult& aResult )
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    66
typedef TInt (Cdaemonmt::* TestFunction)(TTestResult&);
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    67
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    68
// CLASS DECLARATION
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    69
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    70
/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    71
*  An internal structure containing a test case name and
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    72
*  the pointer to function doing the test
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    73
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    74
*  @lib ?library
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    75
*  @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    76
*/
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    77
class TCaseInfoInternal
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    78
    {
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    79
    public:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    80
        const TText*    iCaseName;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    81
        TestFunction    iMethod;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    82
        TBool           iIsOOMTest;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    83
        TInt            iFirstMemoryAllocation;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    84
        TInt            iLastMemoryAllocation;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    85
    };
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    86
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    87
// CLASS DECLARATION
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    88
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    89
/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    90
*  A structure containing a test case name and
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    91
*  the pointer to function doing the test
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    92
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    93
*  @lib ?library
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    94
*  @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    95
*/
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    96
class TCaseInfo
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    97
    {
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    98
    public:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
    99
        TPtrC iCaseName;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   100
        TestFunction iMethod;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   101
        TBool           iIsOOMTest;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   102
        TInt            iFirstMemoryAllocation;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   103
        TInt            iLastMemoryAllocation;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   104
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   105
    TCaseInfo( const TText* a ) : iCaseName( (TText*) a )
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   106
        {
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   107
        };
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   108
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   109
    };
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   110
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   111
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   112
// CLASS DECLARATION
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   113
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   114
/**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   115
*  This a daemonmt class.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   116
*  ?other_description_lines
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   117
*
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   118
*  @lib ?library
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   119
*  @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   120
*/
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   121
NONSHARABLE_CLASS(Cdaemonmt) : public CTestModuleBase
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   122
    {
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   123
    public:  // Constructors and destructor
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   124
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   125
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   126
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   127
        * Two-phased constructor.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   128
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   129
        static Cdaemonmt* NewL();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   130
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   131
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   132
        * Destructor.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   133
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   134
        virtual ~Cdaemonmt();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   135
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   136
    public: // New functions
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   137
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   138
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   139
        * ?member_description.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   140
        * @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   141
        * @param ?arg1 ?description
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   142
        * @return ?description
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   143
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   144
        //?type ?member_function( ?type ?arg1 );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   145
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   146
    public: // Functions from base classes
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   147
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   148
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   149
        * From CTestModuleBase InitL is used to initialize the 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   150
        *       daemonmt. It is called once for every instance of 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   151
        *       TestModuledaemonmt after its creation.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   152
        * @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   153
        * @param aIniFile Initialization file for the test module (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   154
        * @param aFirstTime Flag is true when InitL is executed for first 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   155
        *               created instance of daemonmt.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   156
        * @return Symbian OS error code
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   157
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   158
        TInt InitL( TFileName& aIniFile, TBool aFirstTime );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   159
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   160
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   161
        * From CTestModuleBase GetTestCasesL is used to inquiry test cases 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   162
        *   from daemonmt. 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   163
        * @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   164
        * @param aTestCaseFile Test case file (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   165
        * @param aTestCases  Array of TestCases returned to test framework
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   166
        * @return Symbian OS error code
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   167
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   168
        TInt GetTestCasesL( const TFileName& aTestCaseFile, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   169
                            RPointerArray<TTestCaseInfo>& aTestCases );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   170
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   171
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   172
        * From CTestModuleBase RunTestCaseL is used to run an individual 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   173
        *   test case. 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   174
        * @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   175
        * @param aCaseNumber Test case number
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   176
        * @param aTestCaseFile Test case file (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   177
        * @param aResult Test case result returned to test framework (PASS/FAIL)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   178
        * @return Symbian OS error code (test case execution error, which is 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   179
        *           not reported in aResult parameter as test case failure).
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   180
        */   
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   181
        TInt RunTestCaseL( const TInt aCaseNumber, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   182
                           const TFileName& aTestCaseFile,
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   183
                           TTestResult& aResult );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   184
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   185
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   186
        * From CTestModuleBase; OOMTestQueryL is used to specify is particular
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   187
        * test case going to be executed using OOM conditions
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   188
        * @param aTestCaseFile Test case file (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   189
        * @param aCaseNumber Test case number (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   190
        * @param aFailureType OOM failure type (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   191
        * @param aFirstMemFailure The first heap memory allocation failure value (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   192
        * @param aLastMemFailure The last heap memory allocation failure value (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   193
        * @return TBool
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   194
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   195
        virtual TBool OOMTestQueryL( const TFileName& /* aTestCaseFile */, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   196
                                     const TInt /* aCaseNumber */, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   197
                                     TOOMFailureType& aFailureType, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   198
                                     TInt& /* aFirstMemFailure */, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   199
                                     TInt& /* aLastMemFailure */ );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   200
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   201
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   202
        * From CTestModuleBase; OOMTestInitializeL may be used to initialize OOM
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   203
        * test environment
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   204
        * @param aTestCaseFile Test case file (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   205
        * @param aCaseNumber Test case number (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   206
        * @return None
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   207
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   208
        virtual void OOMTestInitializeL( const TFileName& /* aTestCaseFile */, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   209
                                    const TInt /* aCaseNumber */ ); 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   210
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   211
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   212
        * From CTestModuleBase; OOMHandleWarningL
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   213
        * @param aTestCaseFile Test case file (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   214
        * @param aCaseNumber Test case number (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   215
        * @param aFailNextValue FailNextValue for OOM test execution (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   216
        * @return None
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   217
        *
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   218
        * User may add implementation for OOM test warning handling. Usually no
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   219
        * implementation is required.           
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   220
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   221
        virtual void OOMHandleWarningL( const TFileName& /* aTestCaseFile */,
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   222
                                        const TInt /* aCaseNumber */, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   223
                                        TInt& /* aFailNextValue */); 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   224
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   225
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   226
        * From CTestModuleBase; OOMTestFinalizeL may be used to finalize OOM
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   227
        * test environment
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   228
        * @param aTestCaseFile Test case file (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   229
        * @param aCaseNumber Test case number (optional)
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   230
        * @return None
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   231
        *
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   232
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   233
        virtual void OOMTestFinalizeL( const TFileName& /* aTestCaseFile */, 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   234
                                       const TInt /* aCaseNumber */ );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   235
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   236
    protected:  // New functions
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   237
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   238
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   239
        * ?member_description.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   240
        * @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   241
        * @param ?arg1 ?description
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   242
        * @return ?description
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   243
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   244
        //?type ?member_function( ?type ?arg1 );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   245
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   246
    protected:  // Functions from base classes
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   247
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   248
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   249
        * From ?base_class ?member_description
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   250
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   251
        //?type ?member_function();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   252
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   253
    private:
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   254
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   255
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   256
        * C++ default constructor.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   257
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   258
        Cdaemonmt();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   259
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   260
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   261
        * By default Symbian 2nd phase constructor is private.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   262
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   263
        void ConstructL();
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   264
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   265
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   266
         * Callback for CPeriodic.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   267
         */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   268
        static TInt PeriodicTimerCallBack(TAny* aAny);
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   269
        
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   270
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   271
        * Function returning test case name and pointer to test case function.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   272
        * @since ?Series60_version
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   273
        * @param aCaseNumber test case number
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   274
        * @return TCaseInfo 
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   275
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   276
        const TCaseInfo Case ( const TInt aCaseNumber ) const;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   277
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   278
        /**
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   279
        * Actual Hardcoded test case functions are listed below.
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   280
        */
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   281
        
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   282
        TInt StartDaemon( TTestResult& aResult );
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   283
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   284
        
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   285
    private:    // Data
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   286
        // Pointer to test (function) to be executed
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   287
        TestFunction iMethod;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   288
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   289
        // Pointer to logger
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   290
        CStifLogger * iLog;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   291
        
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   292
        CActiveScheduler* iScheduler;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   293
        
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   294
        RProperty iProperty;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   295
        
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   296
        CBtSettings* iBtSettings;
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   297
    };
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   298
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   299
#endif      // DAEMONMT_H
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   300
4dc88a4ac6f4 201041_02
hgs
parents:
diff changeset
   301
// End of File