--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/cbsref/telephonyrefplugins/atltsy/integrationtest/src/testltsysmsstore.cpp Tue Aug 31 16:23:08 2010 +0300
@@ -0,0 +1,150 @@
+// Copyright (c) 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:
+//
+//
+
+//user include
+#include "testltsysmsstore.h"
+#include "testltsysmsatutil.h"
+
+CTestLtsySmsStore::CTestLtsySmsStore(CTestLtsyModel& aTestModel)
+ : CTestLtsySmsBase(aTestModel)
+ {
+
+ }
+
+CTestLtsySmsStore::~CTestLtsySmsStore()
+ {
+ }
+
+CTestLtsySmsStore* CTestLtsySmsStore::NewLC(CTestLtsyModel& aTestModel)
+ {
+ CTestLtsySmsStore* self = new (ELeave)CTestLtsySmsStore(aTestModel);
+ CleanupStack::PushL(self);
+ self->ConstructL();
+ return self;
+ }
+
+CTestLtsySmsStore* CTestLtsySmsStore::NewL(CTestLtsyModel& aTestModel)
+ {
+ CTestLtsySmsStore* self=CTestLtsySmsStore::NewLC(aTestModel);
+ CleanupStack::Pop(self);
+ return self;
+ }
+
+void CTestLtsySmsStore::ConstructL()
+ {
+
+ }
+
+TVerdict CTestLtsySmsStore::doTestStepPreambleL()
+ {
+ INFO_PRINTF1(_L("CTestLtsySmsStore::doTestStepPreambleL called"));
+ SetTestStepResult(EPass);
+ return TestStepResult();
+ }
+
+TVerdict CTestLtsySmsStore::doTestStepL()
+ {
+ INFO_PRINTF1(_L("CTestLtsySmsStore::doTestStepL called"));
+ TRAPD(err,StoreSmsL());
+ if(err != KErrNone)
+ {
+ INFO_PRINTF2(_L("The error was returned %d!! when store sms"),err);
+ SetTestStepResult(EFail);
+ }
+ return TestStepResult();
+ }
+
+TVerdict CTestLtsySmsStore::doTestStepPostambleL()
+ {
+ INFO_PRINTF1(_L("CTestLtsySmsStore::doTestStepPostambleL called"));
+ return TestStepResult();
+ }
+void CTestLtsySmsStore::StoreSmsL()
+ {
+ ReceiveSmsL();
+ TRAPD(err,WriteSmsL());
+ if(err != KErrNone)
+ {
+ NackSmsStoredL();
+ }
+ else
+ {
+ AckSmsStoredL();
+ }
+ }
+
+void CTestLtsySmsStore::ReceiveSmsL()
+ {
+ TRequestStatus status;
+ RMobileSmsMessaging::TMobileSmsReceiveAttributesV1Pckg receiveAttrPckg(iReceiveAttr);
+ Sms().ReceiveMessage(status, iRecvMsg, receiveAttrPckg);
+ User::WaitForRequest(status);
+ TInt r = status.Int();
+ TBuf<200> outReceive;
+ outReceive.Copy(iRecvMsg);
+ INFO_PRINTF2(_L("Receiveing TPDU=%S"),&outReceive);
+ INFO_PRINTF2(_L("ReceiveMessage() request status = %d"),r);
+ }
+
+void CTestLtsySmsStore::WriteSmsL()
+ {
+ TRequestStatus status;
+ RMobilePhone::TMobileAddress smsWriteAddr;
+ smsWriteAddr.iTypeOfNumber = iReceiveAttr.iGsmServiceCentre.iTypeOfNumber;
+ smsWriteAddr.iNumberPlan = iReceiveAttr.iGsmServiceCentre.iNumberPlan;
+ smsWriteAddr.iTelNumber = iReceiveAttr.iGsmServiceCentre.iTelNumber;
+
+ //For GsmTpdu
+ TBuf8<400> writePduData;
+ writePduData = iRecvMsg;
+ FillWriteSmsAttibutesL(writePduData,smsWriteAddr);
+ }
+
+void CTestLtsySmsStore::AckSmsStoredL()
+ {
+ TBool full(EFalse);
+ TRequestStatus status;
+ _LIT8(KNullAck,"00");
+ Sms().AckSmsStored(status,KNullAck(),full);
+ User::WaitForRequest(status);
+ TInt r=status.Int();
+ INFO_PRINTF2(_L("AckSmsStored() request status = %d"),r);
+ }
+
+void CTestLtsySmsStore::NackSmsStoredL()
+ {
+ TRequestStatus status;
+ TInt rpCause(2);
+
+ Sms().NackSmsStored(status,iRecvMsg,rpCause);
+ User::WaitForRequest(status);
+ TInt r=status.Int();
+ INFO_PRINTF2(_L("AckSmsStored() request status = %d"),r);
+ }
+
+void CTestLtsySmsStore::FillWriteSmsAttibutesL(TBuf8<400> aTpdu,RMobilePhone::TMobileAddress aMsgSca)
+ {
+ TRequestStatus status;
+ RMobileSmsStore::TMobileGsmSmsEntryV1 smsEntry;
+ RMobileSmsStore::TMobileGsmSmsEntryV1Pckg smsEntryPckg(smsEntry);
+ smsEntry.iMsgStatus=RMobileSmsStore::EStoredMessageUnsent;
+ smsEntry.iMsgData = aTpdu;
+ smsEntry.iServiceCentre = aMsgSca;
+ SmsStore().Write(status, smsEntryPckg);
+ User::WaitForRequest(status);
+ TInt r = status.Int();
+ INFO_PRINTF2(_L("Write() request status = %d"),r);
+ }