// Copyright (c) 2005-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:
//
#ifndef __SMCMSTEPBASE_H__
#define __SMCMSTEPBASE_H__
#include "smcmserver.h"
#include <mtmdef.h>
#include <stdlib.h>
#include <smsclnt.h>
#include <systemmonitor/systemmonitor.h>
#include <test/testexecutestepbase.h>
#include <txtfmlyr.h>
#include <txtrich.h>
// User Data
_LIT( KUserDataOriginal, "Welcome to the Forward and Reply test harness" );
_LIT( KUserDataReply, "This is the reply to the original message" );
_LIT( KUserDataForward, "This is the text added to the forward message" );
_LIT( KUserDataFind, "This is a send test.\näöå\n Cheers, Mico\n" );
// Phone numbers
_LIT( KScriptItemSC1, "SC" );
_LIT( KScriptItemSC1Def, "+447785016005" );
_LIT( KScriptItemSC2, "radiolinja0" );
_LIT( KScriptItemSC2Def, "+358508771010" );
_LIT( KScriptItemSC3, "radiolinja1" );
_LIT( KScriptItemSC3Def, "+358508771010" );
const TInt KMaxBodyLength = KMsvMaxFindTextLength ;
const TInt KUTC0 = 0;
const TInt KUTCMin8 = -8;
enum TMessageOperation
{
EOperationNone,
EOperationReply,
EOperationForward
};
class TMessageSettings
{
public:
TMessageOperation iOperation;
TMsvId iOriginalBoxId;
CSmsPDU::TSmsPDUType iOriginalSmsPDUType;
TInt iOriginalBioType;
};
class CSMCMStepBase : public CTestStep
{
public:
virtual ~CSMCMStepBase( );
CSMCMStepBase( );
virtual TVerdict doTestStepPreambleL( );
protected:
void ChangeLocale( TInt aHours );
TMsvId CreateEmailSmsMessageL( const TDesC& aEmailMessageData );
TMsvId CreateMessageAndEntryL( const TDesC& aUserData, TMessageSettings aSettings );
HBufC* CreateRandomLC( TInt aLen ) const;
TVerdict PerformTestL( TMsvId aOriginalMessageId,
const TDesC& aNewText,
const TMessageSettings& aSettings );
TVerdict CompareMessagesL( TMsvId aOriginalMessageId,
TMsvId aTargetMessageId,
const TMessageSettings& aSettings );
void SetSettingsL( );
private:
TMsvId PerformForwardOrReplyOperationL( TMessageOperation aOperation,
TMsvId aInFolder );
protected:
CClientMtmRegistry* iClientMtmRegistry;
TMsvDummyObserver* iDummyObserver;
CMsvSession* iServerSession;
CSmsClientMtm* iSmsClientMtm;
CMsvEntry* iMsvEntry;
TMsvId iSmsServiceId;
CSmsTestUtils* iSmsTestUtils;
CActiveScheduler* iScheduler;
};
#endif // __SMCMSTEPBASE_H__