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 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152
|
/*
* 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 __PERFORMANCEFUNCTIONALITY_BASE__
#define __PERFORMANCEFUNCTIONALITY_BASE__
#include <test/testexecutestepbase.h>
#include <cntdb.h>
#include <cntitem.h>
#include "rcntlist.h"
#include "performancefunctionalityserver.h"
class CPerformanceFunctionalityBase;
class TActiveRecoverObserver : public MContactUiCompactObserver
{
//from MContactUiCompactObserver
public:
TActiveRecoverObserver(CPerformanceFunctionalityBase *aTestStep);
void Step(TInt );
void HandleError(TInt aError);
public:
TInt iCompressOrRecoverError;//active recover/compress error
CPerformanceFunctionalityBase* iTestStep;
};
class CPerformanceFunctionalityBase : public CTestStep
{
public:
virtual TVerdict doTestStepPreambleL();
virtual TVerdict doTestStepPostambleL();
~CPerformanceFunctionalityBase();
protected:
virtual void PreTestL() = 0;
CPerformanceFunctionalityBase(const TInt aContacts)
: iContacts(aContacts), iParent(NULL), iActiveRecoverObserver(this)
{
}
CPerformanceFunctionalityBase(const TInt aContacts, CPerformanceFunctionalityTestsSuite &aParent)
: iContacts(aContacts), iParent(&aParent), iActiveRecoverObserver(this)
{
}
virtual void InitializeL();
virtual void Cleanup();
void AddEmptyContactsL(const TInt aNumber, const TBool aTrans);
void DeleteContactL(const TContactItemId aCid, const TBool aTrans);
TPtrC GetNextFieldL(const TDesC &aConfigSection, const TDesC &aName, const TBool aNewSection);
TPtrC GetFieldL(const TDesC &aConfigSection, const TDesC &aName, const TInt aIndex);
void OpenL( const TContactItemId aCid );
void CommitL(const TBool aTrans);
void ReadL( const TContactItemId aCid );
void CloseL(const TBool aClose);
void SetFieldL(const TInt aPos, const TDesC& aText);
TBool CompareFieldL(const TInt aPos, const TDesC& aText);
void SetAllFieldsL(const TDesC& aText);
void SetManyFieldsL(const TDesC& aText, const TInt aMany);
TBool CheckAllFieldsL(const TDesC& aText);
void ExportVcardL(const TBool aDelete, const TDesC &aVCard);
void ImportVcardL(const TInt aMany, RFileReadStream &aRfrs);
TInt GetSharedIntL(const TDesC &aShare);
void ShareIntL(const TDesC & aShare, const TInt aInt, const TBool aAppend=EFalse, const TDesC &aSeperator=KNullDesC);
void SetSharedTextL(const TDesC &aShare, const TDesC &aText, const TBool aAppend);
TInt SharedCountL(const TDesC &aShare);
void MissingTestPanic() const;
const TText* PrintNotification(const TInt aNotification) const;
void PrintNotifications(const TDesC &aType, const RArray<TInt> &aEvents,
const RArray<TInt> &aContacts);
void WaitForServerToExitL();
void PrintTestComparison( const TBool aResult,
const TText *aCompare,
const TInt aLine,
const TText *aFile);
void PrintTestComparisonIteration( const TBool aResult,
const TInt aIteration,
const TText *aCompare,
const TInt aLine,
const TText *aFile);
TBool StringComparisonTestPrint( const TDesC &aCompareL,
const TText *aCompareOperator,
const TDesC &aCompareR,
const TBool aResult,
const TInt aIteration,
const TInt aSubIteration,
const TInt aLine,
const TText *aFile);
TBool IntegerComparisonTestPrint( const TInt aCompareL,
const TText *aCompareOperator,
const TInt aCompareR,
const TBool aResult,
const TInt aIteration,
const TInt aSubIteration,
const TInt aLine,
const TText *aFile);
//utitilty functions
protected:
void StartCompressL();
void EndCompressL();
void StartRecoverL();
void EndRecoverL();
private:
void CloseProcessL(const TDesC& aProcessName, const TInt aIteration);
protected:
// number of contacts created / used by this test
TInt iContacts;
CContactDatabase* iContactsDatabase;
CContactItemViewDef* iViewAll;
CContactItem* iContactItem;
CContactItemFieldSet* iFields;
RCntList* iIterate;
CPerformanceFunctionalityTestsSuite* iParent;
CContactTemplate* iTemplate;
TBool iConcurrent;
TBool iUnclean;
//complete active compress/recover, as opposed to cancelling
TBool iCompleteSteps;
TActiveRecoverObserver iActiveRecoverObserver;
private:
TInt iNextFieldPosition;
CContactActiveRecover* iRecover;
CContactActiveCompress* iCompress;
};
#endif
|