kerneltest/e32test/domainmgr/domainpolicytest.h
author hgs
Mon, 04 Oct 2010 12:03:52 +0100
changeset 279 957c583b417b
parent 245 647ab20fee2e
permissions -rw-r--r--
201039_07
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
     1
// Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies).
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
     2
// All rights reserved.
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
     3
// This component and the accompanying materials are made available
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
     4
// under the terms of the License "Eclipse Public License v1.0"
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
     5
// which accompanies this distribution, and is available
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
     7
//
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
     8
// Initial Contributors:
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    10
//
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    11
// Contributors:
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    12
//
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    13
// Description:
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    14
//
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    15
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    16
#ifndef __DOMAIN_POLICY_TEST_H__
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    17
#define __DOMAIN_POLICY_TEST_H__
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    18
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    19
#include <domainpolicy.h>
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    20
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    21
// Policy Domain Timeout
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    22
const TInt KDomainTimeout = 2000000; /* 2000ms */
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    23
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    24
// The original test domain hierarchy id
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    25
static const TDmHierarchyId	KDmHierarchyIdTest = 99;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    26
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    27
// The test domain hierarchy Id for V2 policy with V2 features enabled
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    28
static const TDmHierarchyId	KDmHierarchyIdTestV2 = 98;
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    29
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    30
// The original test domain hierarchy id but as a V2 policy with V1 functionality
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    31
static const TDmHierarchyId	KDmHierarchyIdTestV2_97 = 97;
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    32
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    33
// The original test domain hierarchy id but as a V2 policy with V1 functionality, null state spec
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    34
static const TDmHierarchyId	KDmHierarchyIdTestV2_96 = 96;
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    35
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    36
//  The test domain hierarchy Id for V2 policy with V2 features enabled but botched
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    37
static const TDmHierarchyId	KDmHierarchyIdTestV2_95 = 95;
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    38
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    39
//  The test domain hierarchy Id for V2 policy with V2 features enabled but botched
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    40
static const TDmHierarchyId	KDmHierarchyIdTestV2_94 = 94;
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    41
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    42
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    43
/*
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    44
Domains defined in this hierarchy.
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    45
The hierarchy desribed here looks like this:
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    46
		Root
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    47
		A				B				C
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    48
		AA	AB			BA				CA
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    49
			ABA	ABB						CAA
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    50
			
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    51
This hierarchy is used in V1 and V2 policies. 
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    52
*/
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    53
static const TDmDomainId	KDmIdTestA		= 0x02;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    54
static const TDmDomainId	KDmIdTestB		= 0x03;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    55
static const TDmDomainId	KDmIdTestC		= 0x04;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    56
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    57
static const TDmDomainId	KDmIdTestAA		= 0x05;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    58
static const TDmDomainId	KDmIdTestAB		= 0x06;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    59
static const TDmDomainId	KDmIdTestBA		= 0x07;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    60
static const TDmDomainId	KDmIdTestCA		= 0x08;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    61
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    62
static const TDmDomainId	KDmIdTestABA	= 0x09;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    63
static const TDmDomainId	KDmIdTestABB	= 0x0A;
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    64
static const TDmDomainId	KDmIdTestCAA	= 0x0B;
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    65
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    66
static const TInt KTestDomains = 0x0B;	// number of domains including root
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    67
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    68
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    69
/*
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    70
Simulated system-wide states for test purposes.
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    71
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    72
The typical state transitions expected in this model:
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    73
	EStartupCriticalStatic 	-> EStartupCriticalDynamic
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    74
	EStartupCriticalDynamic -> EStartupNonCritical
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    75
	EStartupNonCritical 	-> ENormalRunning
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    76
	ENormalRunning 			-> EBackupMode
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    77
	EBackupMode				-> ENormalRunning
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    78
	ENormalRunning			-> EShutdownCritical
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    79
	EShutdownCritical 		-> EShutdownNonCritical
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    80
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    81
However, that does not stop tests from transition from/to any state as required
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    82
for test cases. Further states can be added through numbering e.g. EBackupMode1
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    83
if required.
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    84
*/
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    85
enum TSystemState
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    86
	{
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    87
	/** Device starting up initialising ROM based components/resources */
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    88
	EStartupCriticalStatic,
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    89
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    90
	/** Device continuing start up initisliaing non-ROM based components/resoruces */
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    91
	EStartupCriticalDynamic,
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    92
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    93
	/** Device continues start up initialising non-critical components/resoruces */
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
    94
	EStartupNonCritical,
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    95
	
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    96
	/** Device running normally */
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    97
	ENormalRunning,
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    98
		
957c583b417b 201039_07
hgs
parents: 245
diff changeset
    99
	/** Device about to start system wide backup operation */
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   100
	EBackupMode,
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
   101
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   102
	/** Device about to start system wide restore operation */
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   103
	ERestoreMode,
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   104
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   105
	/** Device starting shutdown perform critical shutdown actions */
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   106
	EShutdownCritical,
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   107
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   108
	/** Device performing non-critical shutdown actions */
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   109
	EShutdownNonCritical,
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   110
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   111
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   112
	/** An integer that is strictly greater than any legal system state value */
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   113
	ESystemStateLimit
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
   114
	};
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
   115
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   116
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   117
// Externs for test policy data
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   118
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   119
extern const TDmDomainSpec DomainHierarchy[];
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   120
extern const TDmHierarchyPolicy HierarchyPolicy;
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   121
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   122
extern const SDmStateSpecV1 StateSpecification[];
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   123
extern const TUint StateSpecificationSize;
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   124
extern const TInt StateSpecificationVersion;
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   125
0
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
   126
#endif
a41df078684a Convert Kernelhwsrv package from SFL to EPL
John Imhofe
parents:
diff changeset
   127
279
957c583b417b 201039_07
hgs
parents: 245
diff changeset
   128