blob: 9681ea07b3624618d689d9b6f8f7313300090f86 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
/*
* Copyright (c) 2006-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:
*
*/
/**
@file
@publishedAll
@released
*/
#ifndef __NOTIFICATION_STEP_H__
#define __NOTIFICATION_STEP_H__
#include <test/testexecutestepbase.h>
#include "performancefunctionalitybase.h"
class CNotificationStep : public CPerformanceFunctionalityBase
{
class CNotificationActive;
friend class CNotificationActive;
public:
CNotificationStep();
~CNotificationStep();
virtual TVerdict doTestStepL();
private:
void PreTestL();
void InitializeL();
void Cleanup();
void ClearNotifications();
void ResetArrays();
void AddEventL(const TInt aEvent);
void AddContactL(const TInt aCid);
void EndTransactionL(const TBool aRevert);
void UnkownChangeTestL();
TBool UnkownChangeCheck();
void TransactionUnkownChangeTestL(const TBool aRevert);
TBool TransactionUnkownChangeCheck();
void PlusTransactionUnkownChangeTestL(const TBool aRevert);
private:
TTime iStart;
TTime iEnd;
TInt iMessageCount;
CContactChangeNotifier* iNotifier;
RArray<TInt>* iSharedContacts;
RArray<TInt>* iSharedEvents;
RArray<TInt>* iDBContacts;
RArray<TInt>* iDBEvents;
CNotificationStep::CNotificationActive* iMyActive;
private:
class CNotificationActive : public CActive, MContactDbObserver
{
friend class CNotificationStep;
public:
CNotificationActive(CNotificationStep* aStep) : CActive(EPriorityIdle),
iStep(aStep){}
private:
void Activate();
private: // From CActive.
void RunL();
void DoCancel();
TInt RunError(TInt aError);
private: // from MContactDbObserver
void HandleDatabaseEventL(TContactDbObserverEvent aEvent);
private:
CNotificationStep* iStep;
TBool (CNotificationStep::* iCheck)();
private:
TBool iClear;//If true expect to receive non test related notificationa for adding contacts in preamble / constructor
};
};
_LIT(KNotificationStep,"NotificationStep");
#endif
|