--- a/telephonyserver/etelsimtoolkit/tetel/Te_EtelSat/TE_EtelSatpcmds1c.cpp Mon May 03 13:37:20 2010 +0300
+++ b/telephonyserver/etelsimtoolkit/tetel/Te_EtelSat/TE_EtelSatpcmds1c.cpp Thu May 06 15:10:38 2010 +0100
@@ -1,667 +1,667 @@
-// Copyright (c) 2002-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:
-//
-
-#include "Te_EtelSatTestStepBase.h"
-#include "TE_EtelSatpcmds1c.h"
-
-CTestSatPCmds1c::CTestSatPCmds1c()
-/** Each test step initialises it's own name
-*/
- {
- // store the name of this test case
- // this is the name that is used by the script file
- SetTestStepName(_L("TestSatPCmds1c"));
- }
-
-enum TVerdict CTestSatPCmds1c::doTestStepL()
- {
- INFO_PRINTF1(_L("***********************************************"));
- INFO_PRINTF1(_L("RSat Proactive Commands Functionality suite - 2"));
- INFO_PRINTF1(_L("***********************************************"));
-
- TInt ret=phone.Open(iTelServer,DSATTSY_PHONE_NAME);
- TEST(ret==KErrNone);
-
- ret=sat.Open(phone);
- TEST(ret==KErrNone);
-
- // Send DTMF with V1
- RSat::TSendDtmfV1* sendDtmf = new (ELeave) RSat::TSendDtmfV1;
- CleanupStack::PushL(sendDtmf);
- RSat::TSendDtmfV1Pckg* sendDtmfPckg = new (ELeave) RSat::TSendDtmfV1Pckg(*sendDtmf);
- CleanupStack::PushL(sendDtmfPckg);
-
- sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(sendDtmf->PCmdNumber()==DSATTSY_SEND_DTMF_NUMBER);
-
- TEST(sendDtmf->iAlphaId.iStatus==DSATTSY_ALPHA_ID1_STATUS);
- TEST(sendDtmf->iAlphaId.iAlphaId==DSATTSY_ALPHA_ID1);
- TEST(sendDtmf->iDtmfString==DSATTSY_DTMF_STRING);
- TEST(sendDtmf->iIconId.iIdentifier==DSATTSY_ICON_ID1);
- TEST(sendDtmf->iIconId.iQualifier==DSATTSY_ICON_QUALIFIER1);
- INFO_PRINTF2(_L("Test %d - RSat::NotifySendDtmfPCmd with RSat::TSendDtmfV1 passed"),iTestCount++);
-
- // Send DTMF Cancel with V1
- sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfPckg);
- sat.CancelAsyncRequest(ESatNotifySendDtmfPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifySendDtmfPCmdCancel with RSat::TSendDtmfV1 passed"),iTestCount++);
-
- // Send DTMF with V5
- RSat::TSendDtmfV5* sendDtmfV5 = new (ELeave) RSat::TSendDtmfV5;
- CleanupStack::PushL(sendDtmfV5);
- RSat::TSendDtmfV5Pckg* sendDtmfV5Pckg = new (ELeave) RSat::TSendDtmfV5Pckg(*sendDtmfV5);
- CleanupStack::PushL(sendDtmfV5Pckg);
-
- TEST(sendDtmfV5->ExtensionId() == RSat::KSatV5);
- TEST(sendDtmfV5->iTextAttribute.iStatus == RSat::ETextAttributeNotSet);
-
- sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfV5Pckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(sendDtmfV5->PCmdNumber()==DSATTSY_SEND_DTMF_NUMBER);
-
- TEST(sendDtmfV5->iAlphaId.iStatus==DSATTSY_ALPHA_ID1_STATUS);
- TEST(sendDtmfV5->iAlphaId.iAlphaId==DSATTSY_ALPHA_ID1);
- TEST(sendDtmfV5->iDtmfString==DSATTSY_DTMF_STRING);
- TEST(sendDtmfV5->iIconId.iIdentifier==DSATTSY_ICON_ID1);
- TEST(sendDtmfV5->iIconId.iQualifier==DSATTSY_ICON_QUALIFIER1);
- // V5 parameters
- RSat::TTextAttribute textAttribute;
- textAttribute.iStatus = DSATTSY_TEXT_ATTRIBUTE_STATUS;
- const TUint8 textAttributeData[DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH] = DSATTSY_TEXT_ATTRIBUTE_DATA;
- textAttribute.iTextAttributeData.Append(textAttributeData, DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH);
-
- TEST(sendDtmfV5->iTextAttribute.iStatus == textAttribute.iStatus);
- TEST(sendDtmfV5->iTextAttribute.iTextAttributeData == textAttribute.iTextAttributeData);
-
- INFO_PRINTF2(_L("Test %d - RSat::NotifySendDtmfPCmd with RSat::TSendDtmfV5 passed"),iTestCount++);
-
- // Send DTMF Cancel with V5
- sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfV5Pckg);
- sat.CancelAsyncRequest(ESatNotifySendDtmfPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifySendDtmfPCmdCancel with RSat::TSendDtmfV5 passed"),iTestCount++);
-
- // Send Dtmf Terminal Rsp
- sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- RSat::TSendDtmfRspV1* sendDtmfRsp = new (ELeave) RSat::TSendDtmfRspV1;
- CleanupStack::PushL(sendDtmfRsp);
- RSat::TSendDtmfRspV1Pckg* sendDtmfRspPckg = new (ELeave) RSat::TSendDtmfRspV1Pckg(*sendDtmfRsp);
- CleanupStack::PushL(sendDtmfRspPckg);
-
- sendDtmfRsp->SetPCmdNumber(sendDtmf->PCmdNumber());
- sendDtmfRsp->iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
- sendDtmfRsp->iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
- sendDtmfRsp->iAdditionalInfo=DSATTSY_NULL_BUF;
-
- sat.TerminalRsp(reqStatus,RSat::ESendDtmf,*sendDtmfRspPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
- INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Send DTMF - passed"),iTestCount++);
-
- CleanupStack::PopAndDestroy(6, sendDtmf);
-
- // Perform Card APDU
- RSat::TPerformCardApduV2* performCardApdu = new (ELeave) RSat::TPerformCardApduV2;
- CleanupStack::PushL(performCardApdu);
- RSat::TPerformCardApduV2Pckg* performCardApduPckg = new (ELeave) RSat::TPerformCardApduV2Pckg(*performCardApdu);
- CleanupStack::PushL(performCardApduPckg);
-
- sat.NotifyPerformCardApduPCmd(reqStatus,*performCardApduPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(performCardApdu->PCmdNumber()==DSATTSY_PERFORM_CARD_APDU_NUMBER);
-
- TEST(performCardApdu->iDestination==DSATTSY_CARD_READER_1);
- TEST(performCardApdu->iCApdu.iCla==DSATTSY_CLA);
- TEST(performCardApdu->iCApdu.iIns==DSATTSY_INS);
- TEST(performCardApdu->iCApdu.iLc==DSATTSY_LC);
- TEST(performCardApdu->iCApdu.iLe==DSATTSY_LE);
- TEST(performCardApdu->iCApdu.iP1==DSATTSY_P1);
- TEST(performCardApdu->iCApdu.iP2==DSATTSY_P2);
- TEST(performCardApdu->iCApdu.iData==DSATTSY_CAPDU);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyPerformCardApduPCmd passed"),iTestCount++);
-
- // Perform Card APDU Cancel
- sat.NotifyPerformCardApduPCmd(reqStatus,*performCardApduPckg);
- sat.CancelAsyncRequest(ESatNotifyPerformCardApduPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyPerformCardApduCancel passed"),iTestCount++);
-
- // Perform Card APDU Terminal Rsp
- sat.NotifyPerformCardApduPCmd(reqStatus,*performCardApduPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- RSat::TPerformCardApduRspV2* performCardApduRsp = new (ELeave) RSat::TPerformCardApduRspV2;
- CleanupStack::PushL(performCardApduRsp);
- RSat::TPerformCardApduRspV2Pckg* performCardApduRspPckg = new (ELeave) RSat::TPerformCardApduRspV2Pckg(*performCardApduRsp);
- CleanupStack::PushL(performCardApduRspPckg);
-
- performCardApduRsp->SetPCmdNumber(performCardApdu->PCmdNumber());
- performCardApduRsp->iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
- performCardApduRsp->iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
- performCardApduRsp->iAdditionalInfo=DSATTSY_NULL_BUF;
-
- sat.TerminalRsp(reqStatus,RSat::EPerformCardApdu,*performCardApduRspPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
- INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Perform Card APDU - passed"),iTestCount++);
-
- CleanupStack::PopAndDestroy(4, performCardApdu);
-
- ExtendedTest1(reqStatus);
-
- sat.Close();
- phone.Close();
-
- return TestStepResult();
- }
-
-// Further tests, seperated to prevent stack overflow
-void CTestSatPCmds1c::ExtendedTest1(TRequestStatus& reqStatus)
- {
- // Notify Power Off Card
- RSat::TPowerOffCardV2 powerOffCard;
- RSat::TPowerOffCardV2Pckg powerOffCardPckg(powerOffCard);
-
- sat.NotifyPowerOffCardPCmd(reqStatus,powerOffCardPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(powerOffCard.PCmdNumber()==DSATTSY_POWER_OFF_CARD_NUMBER);
- TEST(powerOffCard.iDestination==DSATTSY_CARD_READER_1);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyPowerOffCardPCmd passed"),iTestCount++);
-
- // Power Off Card Cancel
- sat.NotifyPowerOffCardPCmd(reqStatus,powerOffCardPckg);
- sat.CancelAsyncRequest(ESatNotifyPowerOffCardPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyPowerOffCardPCmdCancel passed"),iTestCount++);
-
- // Power Off Card Terminal Rsp
- sat.NotifyPowerOffCardPCmd(reqStatus,powerOffCardPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- RSat::TPowerOffCardRspV2 powerOffCardRsp;
- RSat::TPowerOffCardRspV2Pckg powerOffCardRspPckg(powerOffCardRsp);
-
- powerOffCardRsp.SetPCmdNumber(powerOffCard.PCmdNumber());
- powerOffCardRsp.iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
- powerOffCardRsp.iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
- powerOffCardRsp.iAdditionalInfo=DSATTSY_NULL_BUF;
-
- sat.TerminalRsp(reqStatus,RSat::EPowerOffCard,powerOffCardRspPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
- INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Power Off Card - passed"),iTestCount++);
-
- // Power On Card
- RSat::TPowerOnCardV2 powerOnCard;
- RSat::TPowerOnCardV2Pckg powerOnCardPckg(powerOnCard);
-
- sat.NotifyPowerOnCardPCmd(reqStatus,powerOnCardPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(powerOnCard.PCmdNumber()==DSATTSY_POWER_ON_CARD_NUMBER);
- TEST(powerOnCard.iDestination==DSATTSY_CARD_READER_1);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyPowerOnCardPCmd passed"),iTestCount++);
-
- // Power On Card Cancel
- sat.NotifyPowerOnCardPCmd(reqStatus,powerOnCardPckg);
- sat.CancelAsyncRequest(ESatNotifyPowerOnCardPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyPowerOnCardPCmdCancel passed"),iTestCount++);
-
- // Power On Card Terminal Rsp
- sat.NotifyPowerOnCardPCmd(reqStatus,powerOnCardPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- RSat::TPowerOnCardRspV2 powerOnCardRsp;
- RSat::TPowerOnCardRspV2Pckg powerOnCardRspPckg(powerOnCardRsp);
-
- powerOnCardRsp.SetPCmdNumber(powerOnCard.PCmdNumber());
- powerOnCardRsp.iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
- powerOnCardRsp.iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
- powerOnCardRsp.iAdditionalInfo=DSATTSY_NULL_BUF;
-
- sat.TerminalRsp(reqStatus,RSat::EPowerOnCard,powerOnCardRspPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
- INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Power On Card - passed"),iTestCount++);
-
- // Get Reader Status
- RSat::TGetReaderStatusV2 getReaderStatus;
- RSat::TGetReaderStatusV2Pckg getReaderStatusPckg(getReaderStatus);
-
- sat.NotifyGetReaderStatusPCmd(reqStatus,getReaderStatusPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(getReaderStatus.PCmdNumber()==DSATTSY_GET_READER_STATUS_NUMBER);
- TEST(getReaderStatus.iDestination==DSATTSY_CARD_READER_1);
- TEST(getReaderStatus.iMode==DSATTSY_GET_READER_STATUS_MODE);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyGetReaderStatusPCmd passed"),iTestCount++);
-
- // Get Reader Status Cancel
- sat.NotifyGetReaderStatusPCmd(reqStatus,getReaderStatusPckg);
- sat.CancelAsyncRequest(ESatNotifyGetReaderStatusPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyGetReaderStatusPCmdCancel passed"),iTestCount++);
-
- // Get Reader Status Terminal Rsp
- sat.NotifyGetReaderStatusPCmd(reqStatus,getReaderStatusPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- RSat::TGetReaderStatusRspV2 getReaderStatusRsp;
- RSat::TGetReaderStatusRspV2Pckg getReaderStatusRspPckg(getReaderStatusRsp);
-
- getReaderStatusRsp.SetPCmdNumber(getReaderStatus.PCmdNumber());
- getReaderStatusRsp.iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
- getReaderStatusRsp.iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
- getReaderStatusRsp.iAdditionalInfo=DSATTSY_NULL_BUF;
- getReaderStatusRsp.iMode=DSATTSY_GET_READER_STATUS_MODE;
-
- sat.TerminalRsp(reqStatus,RSat::EGetReaderStatus,getReaderStatusRspPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
- INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Get Reader Status - passed"),iTestCount++);
-
- ExtendedTest2L(reqStatus);
-}
-
-void CTestSatPCmds1c::ExtendedTest2L(TRequestStatus& reqStatus)
- {
- // Run At Command with V2
- RSat::TRunAtCommandV2* runAtCommand = new (ELeave) RSat::TRunAtCommandV2;
- CleanupStack::PushL(runAtCommand);
- RSat::TRunAtCommandV2Pckg* runAtCommandPckg = new (ELeave) RSat::TRunAtCommandV2Pckg(*runAtCommand);
- CleanupStack::PushL(runAtCommandPckg);
-
- sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(runAtCommand->PCmdNumber()==DSATTSY_RUN_AT_COMMAND_NUMBER);
- TEST(runAtCommand->iAlphaId.iStatus==DSATTSY_ALPHA_ID1_STATUS);
- TEST(runAtCommand->iAlphaId.iAlphaId==DSATTSY_ALPHA_ID1);
- TEST(runAtCommand->iAtCommand==DSATTSY_AT_COMMAND);
- TEST(runAtCommand->iIconId.iIdentifier==DSATTSY_ICON_ID1);
- TEST(runAtCommand->iIconId.iQualifier==DSATTSY_ICON_QUALIFIER1);
-
- INFO_PRINTF2(_L("Test %d - RSat::NotifyRunAtCommandPCmd with RSat::TRunAtCommandV2 passed"),iTestCount++);
-
- // Run At Command Cancel with V2
- sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandPckg);
- sat.CancelAsyncRequest(ESatNotifyRunAtCommandPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyRunAtCommandPCmdCancel with RSat::TRunAtCommandV2 passed"),iTestCount++);
-
- // Run At Command with V5
- RSat::TRunAtCommandV5* runAtCommandV5 = new (ELeave) RSat::TRunAtCommandV5;
- CleanupStack::PushL(runAtCommandV5);
- RSat::TRunAtCommandV5Pckg* runAtCommandV5Pckg = new (ELeave) RSat::TRunAtCommandV5Pckg(*runAtCommandV5);
- CleanupStack::PushL(runAtCommandV5Pckg);
-
- TEST(runAtCommandV5->ExtensionId() == RSat::KSatV5);
- TEST(runAtCommandV5->iTextAttribute.iStatus == RSat::ETextAttributeNotSet);
-
- sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandV5Pckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(runAtCommandV5->PCmdNumber()==DSATTSY_RUN_AT_COMMAND_NUMBER);
- TEST(runAtCommandV5->iAlphaId.iStatus==DSATTSY_ALPHA_ID1_STATUS);
- TEST(runAtCommandV5->iAlphaId.iAlphaId==DSATTSY_ALPHA_ID1);
- TEST(runAtCommandV5->iAtCommand==DSATTSY_AT_COMMAND);
- TEST(runAtCommandV5->iIconId.iIdentifier==DSATTSY_ICON_ID1);
- TEST(runAtCommandV5->iIconId.iQualifier==DSATTSY_ICON_QUALIFIER1);
- // Version 5 parameters
- RSat::TTextAttribute textAttribute;
- textAttribute.iStatus = DSATTSY_TEXT_ATTRIBUTE_STATUS;
- const TUint8 textAttributeData[DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH] = DSATTSY_TEXT_ATTRIBUTE_DATA;
- textAttribute.iTextAttributeData.Append(textAttributeData, DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH);
-
- TEST(runAtCommandV5->iTextAttribute.iStatus == textAttribute.iStatus);
- TEST(runAtCommandV5->iTextAttribute.iTextAttributeData == textAttribute.iTextAttributeData);
-
- INFO_PRINTF2(_L("Test %d - RSat::NotifyRunAtCommandPCmd with RSat::TRunAtCommandV5 passed"),iTestCount++);
-
- // Run At Command Cancel with V2
- sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandV5Pckg);
- sat.CancelAsyncRequest(ESatNotifyRunAtCommandPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyRunAtCommandPCmdCancel with RSat::TRunAtCommandV5 passed"),iTestCount++);
-
- // Run At Command Terminal Rsp
- sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- RSat::TRunAtCommandRspV2* runAtCommandRsp = new (ELeave) RSat::TRunAtCommandRspV2;
- CleanupStack::PushL(runAtCommandRsp);
- RSat::TRunAtCommandRspV2Pckg* runAtCommandRspPckg = new (ELeave) RSat::TRunAtCommandRspV2Pckg(*runAtCommandRsp);
- CleanupStack::PushL(runAtCommandRspPckg);
-
- runAtCommandRsp->SetPCmdNumber(runAtCommand->PCmdNumber());
- runAtCommandRsp->iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
- runAtCommandRsp->iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
- runAtCommandRsp->iAdditionalInfo=DSATTSY_NULL_BUF;
-
- sat.TerminalRsp(reqStatus,RSat::ERunAtCommand,*runAtCommandRspPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
- INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Run AT Command - passed"),iTestCount++);
-
- CleanupStack::PopAndDestroy(6, runAtCommand);
-
- // Language Notification
- RSat::TLanguageNotificationV2 languageNotification;
- RSat::TLanguageNotificationV2Pckg languageNotificationPckg(languageNotification);
-
- sat.NotifyLanguageNotificationPCmd(reqStatus,languageNotificationPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(languageNotification.PCmdNumber()==DSATTSY_LANGUAGE_NOTIFICATION_NUMBER);
- TEST(languageNotification.iNotificationType==DSATTSY_SPECIFIC_LANGUAGE);
- TEST(languageNotification.iLanguage==DSATTSY_FRENCH);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyLanguageNotificationPCmd passed"),iTestCount++);
-
- // Language Notification Cancel
- sat.NotifyLanguageNotificationPCmd(reqStatus,languageNotificationPckg);
- sat.CancelAsyncRequest(ESatNotifyLanguageNotificationPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
- INFO_PRINTF2(_L("Test %d - RSat::NotifyLanguageNotificationPCmdCancel passed"),iTestCount++);
-
- // Language Notification Terminal Rsp
- sat.NotifyLanguageNotificationPCmd(reqStatus,languageNotificationPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- RSat::TLanguageNotificationRspV2 languageNotificationRsp;
- RSat::TLanguageNotificationRspV2Pckg languageNotificationRspPckg(languageNotificationRsp);
-
- languageNotificationRsp.SetPCmdNumber(languageNotification.PCmdNumber());
- languageNotificationRsp.iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
- languageNotificationRsp.iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
- languageNotificationRsp.iAdditionalInfo=DSATTSY_NULL_BUF;
-
- sat.TerminalRsp(reqStatus,RSat::ELanguageNotification,languageNotificationRspPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
- INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Language Notification - passed"),iTestCount++);
-
- ExtendedTest3L(reqStatus);
- }
-
-// Further tests, seperated to prevent stack overflow
-void CTestSatPCmds1c::ExtendedTest3L(TRequestStatus& reqStatus)
- {
- //
- // Launch Browser
- //
-
- // Test version 2 command
- RSat::TLaunchBrowserV2* launchBrowser = new (ELeave) RSat::TLaunchBrowserV2;
- CleanupStack::PushL(launchBrowser);
- RSat::TLaunchBrowserV2Pckg* launchBrowserPckg = new (ELeave) RSat::TLaunchBrowserV2Pckg(*launchBrowser);
- CleanupStack::PushL(launchBrowserPckg);
-
- TestLaunchBrowser(launchBrowserPckg);
-
- CleanupStack::PopAndDestroy(2, launchBrowser);
-
- // Continue tests
- ExtendedTest4L(reqStatus);
- }
-
-// Further tests, seperated to prevent stack overflow
-void CTestSatPCmds1c::ExtendedTest4L(TRequestStatus& reqStatus)
- {
- // Test version 5 command
- RSat::TLaunchBrowserV5* launchBrowserV5 = new (ELeave) RSat::TLaunchBrowserV5;
- CleanupStack::PushL(launchBrowserV5);
- RSat::TLaunchBrowserV5Pckg* launchBrowserV5Pckg = new (ELeave) RSat::TLaunchBrowserV5Pckg(*launchBrowserV5);
- CleanupStack::PushL(launchBrowserV5Pckg);
-
- TEST(launchBrowserV5->ExtensionId() == RSat::KSatV5);
- TEST(launchBrowserV5->iTextAttribute.iStatus == RSat::ETextAttributeNotSet);
- TestLaunchBrowser(launchBrowserV5Pckg);
-
- // Launch Browser Terminal Rsp
- RSat::TLaunchBrowserV2* launchBrowser = new (ELeave) RSat::TLaunchBrowserV2;
- CleanupStack::PushL(launchBrowser);
- RSat::TLaunchBrowserV2Pckg* launchBrowserPckg = new (ELeave) RSat::TLaunchBrowserV2Pckg(*launchBrowser);
- CleanupStack::PushL(launchBrowserPckg);
-
- sat.NotifyLaunchBrowserPCmd(reqStatus,*launchBrowserPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- RSat::TLaunchBrowserRspV2* launchBrowserRsp = new (ELeave) RSat::TLaunchBrowserRspV2;
- CleanupStack::PushL(launchBrowserRsp);
- RSat::TLaunchBrowserRspV2Pckg* launchBrowserRspPckg = new (ELeave) RSat::TLaunchBrowserRspV2Pckg(*launchBrowserRsp);
- CleanupStack::PushL(launchBrowserRspPckg);
-
- launchBrowserRsp->SetPCmdNumber(launchBrowser->PCmdNumber());
- launchBrowserRsp->iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
- launchBrowserRsp->iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
- launchBrowserRsp->iAdditionalInfo=DSATTSY_NULL_BUF;
-
- sat.TerminalRsp(reqStatus,RSat::ELaunchBrowser,*launchBrowserRspPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
- INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Launch Browser - passed"),iTestCount++);
-
- CleanupStack::PopAndDestroy(6, launchBrowserV5);
-
- // Continue tests
- ExtendedTest5(reqStatus);
- }
-
-// Further tests, seperated to prevent stack overflow
-void CTestSatPCmds1c::ExtendedTest5(TRequestStatus& reqStatus)
- {
- //
- // Get Provisioning File Ref
- //
-
- RSat::TProvisioningFileRef fileRef;
- TBuf8<256> retFile;
-
- // Get with valid file ref
-
- fileRef = DSATTSY_FILE_REF_DATA_1;
-
- sat.GetProvisioningRefFile(reqStatus, fileRef, retFile);
- User::WaitForRequest(reqStatus);
-
- TEST(reqStatus.Int()==KErrNone);
- TEST(retFile == DSATTSY_FILE1);
-
- INFO_PRINTF2(_L("Test %d - RSat::GetProvisioningRefFile(valid file) passed"),iTestCount++);
-
- sat.GetProvisioningRefFile(reqStatus, fileRef, retFile);
- sat.CancelAsyncRequest(ESatGetProvisioningRefFile);
- User::WaitForRequest(reqStatus);
-
- TEST(reqStatus.Int()==KErrCancel);
-
- INFO_PRINTF2(_L("Test %d - RSat::GetProvisioningRefFileCancel Cancel passed"),iTestCount++);
-
- // Get with invalid file ref
-
- fileRef = DSATTSY_INVALID_REF_FILE;
-
- sat.GetProvisioningRefFile(reqStatus, fileRef, retFile);
- User::WaitForRequest(reqStatus);
-
- TEST(reqStatus.Int()==KErrNotFound);
-
- INFO_PRINTF2(_L("Test %d - RSat::GetProvisioningRefFile(invalid file) passed"),iTestCount++);
-
- sat.GetProvisioningRefFile(reqStatus, fileRef, retFile);
- sat.CancelAsyncRequest(ESatGetProvisioningRefFile);
- User::WaitForRequest(reqStatus);
-
- TEST(reqStatus.Int()==KErrCancel);
-
- INFO_PRINTF2(_L("Test %d - RSat::GetProvisioningRefFileCancel Cancel passed"),iTestCount++);
- }
-
-void CTestSatPCmds1c::TestLaunchBrowser(TDes8* aLaunchBrowserPCmdPckg)
- {
- RSat::TLaunchBrowserV2Pckg* launchBrowserPckg = (RSat::TLaunchBrowserV2Pckg*)aLaunchBrowserPCmdPckg;
- RSat::TLaunchBrowserV2& launchBrowser = (*launchBrowserPckg)();
-
- RSat::TProvisioningFileRef file;
-
- // Perform 5 tests, check comment for each test to see the expected result for that test
- for (TInt browserTest = 0; browserTest < 5; ++browserTest) // Note start:end indices
- {
- sat.NotifyLaunchBrowserPCmd(reqStatus,*launchBrowserPckg);
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrNone);
-
- TEST(launchBrowser.PCmdNumber() == DSATTSY_LAUNCH_BROWSER_NUMBER);
- TEST(launchBrowser.iBrowserSel == DSATTSY_BROWSER_SELECTION_MODE);
- TEST(launchBrowser.iBrowserId == DSATTSY_BROWSER_ID);
- TEST(launchBrowser.iUrl == DSATTSY_URL);
- TEST(launchBrowser.iBearerList == DSATTSY_BEARER_LIST);
- TEST(launchBrowser.iText == DSATTSY_PROXY_NAME);
- TEST(launchBrowser.iAlphaId.iStatus == DSATTSY_ALPHA_ID1_STATUS);
- TEST(launchBrowser.iAlphaId.iAlphaId == DSATTSY_ALPHA_ID1);
- TEST(launchBrowser.iIconId.iIdentifier == DSATTSY_ICON_ID1);
- TEST(launchBrowser.iIconId.iQualifier == DSATTSY_ICON_QUALIFIER1);
-
- if (launchBrowser.ExtensionId() == RSat::KSatV5)
- {
- RSat::TLaunchBrowserV5Pckg* aV5PCmdPckg = (RSat::TLaunchBrowserV5Pckg*)aLaunchBrowserPCmdPckg;
- RSat::TLaunchBrowserV5& launchBrowserV5 = (*aV5PCmdPckg)();
-
- RSat::TTextAttribute textAttribute;
- textAttribute.iStatus = DSATTSY_TEXT_ATTRIBUTE_STATUS;
- const TUint8 textAttributeData[DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH] = DSATTSY_TEXT_ATTRIBUTE_DATA;
- textAttribute.iTextAttributeData.Append(textAttributeData, DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH);
-
- TEST(launchBrowserV5.iTextAttribute.iStatus == textAttribute.iStatus);
- TEST(launchBrowserV5.iTextAttribute.iTextAttributeData == textAttribute.iTextAttributeData);
- }
-
- // Provisioning file ref checks
-
- switch (browserTest)
- {
- case 0:
- // expect 1 file ref of 1 byte length
- TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_1);
- TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
- TEST(file == DSATTSY_FILE_REF_DATA_1);
- break;
-
- case 1:
- // expect 1 file ref of 128 bytes length
- TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_2);
- TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
- TEST(file == DSATTSY_FILE_REF_DATA_128);
- break;
-
- case 2:
- // expect 2 file refs, each of 1 byte length
- TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_3);
- TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
- TEST(file == DSATTSY_FILE_REF_DATA_1);
- TEST(launchBrowser.GetFileRef(2, file) == KErrNone);
- TEST(file == DSATTSY_FILE_REF_DATA_1);
- break;
-
- case 3:
- // 1 ref of 128 bytes, test TSY attempts to add 2 refs but 2nd too large so should be rejected
- TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_4);
- TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
- TEST(file == DSATTSY_FILE_REF_DATA_128);
- break;
-
- case 4:
- // 2 refs of 128 bytes & 1 byte
- TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_5);
- TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
- TEST(file == DSATTSY_FILE_REF_DATA_128);
- TEST(launchBrowser.GetFileRef(2, file) == KErrNone);
- TEST(file == DSATTSY_FILE_REF_DATA_1);
- // Ask for out-of-range file ref - greater than last index
- TEST(launchBrowser.GetFileRef(3, file) == KErrNotFound);
- // Ask for out-of-range file ref - bigger than max ref
- TEST(launchBrowser.GetFileRef(255, file) == KErrNotFound);
- break;
- }
-
- launchBrowser.ResetFileRef();
-
- if (launchBrowser.ExtensionId() == RSat::KSatV2)
- {
- INFO_PRINTF2(_L("Test %d - RSat::NotifyLaunchBrowserPCmd with RSat::TLaunchBrowserV2 passed"),iTestCount++);
- }
- else if (launchBrowser.ExtensionId() == RSat::KSatV5)
- {
- INFO_PRINTF2(_L("Test %d - RSat::NotifyLaunchBrowserPCmd with RSat::TLaunchBrowserV5 passed"),iTestCount++);
- }
-
- // Launch Browser Cancel
- sat.NotifyLaunchBrowserPCmd(reqStatus,*launchBrowserPckg);
- sat.CancelAsyncRequest(ESatNotifyLaunchBrowserPCmd);
-
- User::WaitForRequest(reqStatus);
- TEST(reqStatus.Int()==KErrCancel);
-
- if (launchBrowser.ExtensionId() == RSat::KSatV2)
- INFO_PRINTF2(_L("Test %d - RSat::NotifyLaunchBrowserPCmdCancel with RSat::TLaunchBrowserV2 passed"),iTestCount++);
- else if (launchBrowser.ExtensionId() == RSat::KSatV5)
- INFO_PRINTF2(_L("Test %d - RSat::NotifyLaunchBrowserPCmdCancel with RSat::TLaunchBrowserV5 passed"),iTestCount++);
-
- }
- }
+// Copyright (c) 2002-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:
+//
+
+#include "Te_EtelSatTestStepBase.h"
+#include "TE_EtelSatpcmds1c.h"
+
+CTestSatPCmds1c::CTestSatPCmds1c()
+/** Each test step initialises it's own name
+*/
+ {
+ // store the name of this test case
+ // this is the name that is used by the script file
+ SetTestStepName(_L("TestSatPCmds1c"));
+ }
+
+enum TVerdict CTestSatPCmds1c::doTestStepL()
+ {
+ INFO_PRINTF1(_L("***********************************************"));
+ INFO_PRINTF1(_L("RSat Proactive Commands Functionality suite - 2"));
+ INFO_PRINTF1(_L("***********************************************"));
+
+ TInt ret=phone.Open(iTelServer,DSATTSY_PHONE_NAME);
+ TEST(ret==KErrNone);
+
+ ret=sat.Open(phone);
+ TEST(ret==KErrNone);
+
+ // Send DTMF with V1
+ RSat::TSendDtmfV1* sendDtmf = new (ELeave) RSat::TSendDtmfV1;
+ CleanupStack::PushL(sendDtmf);
+ RSat::TSendDtmfV1Pckg* sendDtmfPckg = new (ELeave) RSat::TSendDtmfV1Pckg(*sendDtmf);
+ CleanupStack::PushL(sendDtmfPckg);
+
+ sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(sendDtmf->PCmdNumber()==DSATTSY_SEND_DTMF_NUMBER);
+
+ TEST(sendDtmf->iAlphaId.iStatus==DSATTSY_ALPHA_ID1_STATUS);
+ TEST(sendDtmf->iAlphaId.iAlphaId==DSATTSY_ALPHA_ID1);
+ TEST(sendDtmf->iDtmfString==DSATTSY_DTMF_STRING);
+ TEST(sendDtmf->iIconId.iIdentifier==DSATTSY_ICON_ID1);
+ TEST(sendDtmf->iIconId.iQualifier==DSATTSY_ICON_QUALIFIER1);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifySendDtmfPCmd with RSat::TSendDtmfV1 passed"),iTestCount++);
+
+ // Send DTMF Cancel with V1
+ sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfPckg);
+ sat.CancelAsyncRequest(ESatNotifySendDtmfPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifySendDtmfPCmdCancel with RSat::TSendDtmfV1 passed"),iTestCount++);
+
+ // Send DTMF with V5
+ RSat::TSendDtmfV5* sendDtmfV5 = new (ELeave) RSat::TSendDtmfV5;
+ CleanupStack::PushL(sendDtmfV5);
+ RSat::TSendDtmfV5Pckg* sendDtmfV5Pckg = new (ELeave) RSat::TSendDtmfV5Pckg(*sendDtmfV5);
+ CleanupStack::PushL(sendDtmfV5Pckg);
+
+ TEST(sendDtmfV5->ExtensionId() == RSat::KSatV5);
+ TEST(sendDtmfV5->iTextAttribute.iStatus == RSat::ETextAttributeNotSet);
+
+ sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfV5Pckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(sendDtmfV5->PCmdNumber()==DSATTSY_SEND_DTMF_NUMBER);
+
+ TEST(sendDtmfV5->iAlphaId.iStatus==DSATTSY_ALPHA_ID1_STATUS);
+ TEST(sendDtmfV5->iAlphaId.iAlphaId==DSATTSY_ALPHA_ID1);
+ TEST(sendDtmfV5->iDtmfString==DSATTSY_DTMF_STRING);
+ TEST(sendDtmfV5->iIconId.iIdentifier==DSATTSY_ICON_ID1);
+ TEST(sendDtmfV5->iIconId.iQualifier==DSATTSY_ICON_QUALIFIER1);
+ // V5 parameters
+ RSat::TTextAttribute textAttribute;
+ textAttribute.iStatus = DSATTSY_TEXT_ATTRIBUTE_STATUS;
+ const TUint8 textAttributeData[DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH] = DSATTSY_TEXT_ATTRIBUTE_DATA;
+ textAttribute.iTextAttributeData.Append(textAttributeData, DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH);
+
+ TEST(sendDtmfV5->iTextAttribute.iStatus == textAttribute.iStatus);
+ TEST(sendDtmfV5->iTextAttribute.iTextAttributeData == textAttribute.iTextAttributeData);
+
+ INFO_PRINTF2(_L("Test %d - RSat::NotifySendDtmfPCmd with RSat::TSendDtmfV5 passed"),iTestCount++);
+
+ // Send DTMF Cancel with V5
+ sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfV5Pckg);
+ sat.CancelAsyncRequest(ESatNotifySendDtmfPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifySendDtmfPCmdCancel with RSat::TSendDtmfV5 passed"),iTestCount++);
+
+ // Send Dtmf Terminal Rsp
+ sat.NotifySendDtmfPCmd(reqStatus,*sendDtmfPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ RSat::TSendDtmfRspV1* sendDtmfRsp = new (ELeave) RSat::TSendDtmfRspV1;
+ CleanupStack::PushL(sendDtmfRsp);
+ RSat::TSendDtmfRspV1Pckg* sendDtmfRspPckg = new (ELeave) RSat::TSendDtmfRspV1Pckg(*sendDtmfRsp);
+ CleanupStack::PushL(sendDtmfRspPckg);
+
+ sendDtmfRsp->SetPCmdNumber(sendDtmf->PCmdNumber());
+ sendDtmfRsp->iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
+ sendDtmfRsp->iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
+ sendDtmfRsp->iAdditionalInfo=DSATTSY_NULL_BUF;
+
+ sat.TerminalRsp(reqStatus,RSat::ESendDtmf,*sendDtmfRspPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+ INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Send DTMF - passed"),iTestCount++);
+
+ CleanupStack::PopAndDestroy(6, sendDtmf);
+
+ // Perform Card APDU
+ RSat::TPerformCardApduV2* performCardApdu = new (ELeave) RSat::TPerformCardApduV2;
+ CleanupStack::PushL(performCardApdu);
+ RSat::TPerformCardApduV2Pckg* performCardApduPckg = new (ELeave) RSat::TPerformCardApduV2Pckg(*performCardApdu);
+ CleanupStack::PushL(performCardApduPckg);
+
+ sat.NotifyPerformCardApduPCmd(reqStatus,*performCardApduPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(performCardApdu->PCmdNumber()==DSATTSY_PERFORM_CARD_APDU_NUMBER);
+
+ TEST(performCardApdu->iDestination==DSATTSY_CARD_READER_1);
+ TEST(performCardApdu->iCApdu.iCla==DSATTSY_CLA);
+ TEST(performCardApdu->iCApdu.iIns==DSATTSY_INS);
+ TEST(performCardApdu->iCApdu.iLc==DSATTSY_LC);
+ TEST(performCardApdu->iCApdu.iLe==DSATTSY_LE);
+ TEST(performCardApdu->iCApdu.iP1==DSATTSY_P1);
+ TEST(performCardApdu->iCApdu.iP2==DSATTSY_P2);
+ TEST(performCardApdu->iCApdu.iData==DSATTSY_CAPDU);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyPerformCardApduPCmd passed"),iTestCount++);
+
+ // Perform Card APDU Cancel
+ sat.NotifyPerformCardApduPCmd(reqStatus,*performCardApduPckg);
+ sat.CancelAsyncRequest(ESatNotifyPerformCardApduPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyPerformCardApduCancel passed"),iTestCount++);
+
+ // Perform Card APDU Terminal Rsp
+ sat.NotifyPerformCardApduPCmd(reqStatus,*performCardApduPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ RSat::TPerformCardApduRspV2* performCardApduRsp = new (ELeave) RSat::TPerformCardApduRspV2;
+ CleanupStack::PushL(performCardApduRsp);
+ RSat::TPerformCardApduRspV2Pckg* performCardApduRspPckg = new (ELeave) RSat::TPerformCardApduRspV2Pckg(*performCardApduRsp);
+ CleanupStack::PushL(performCardApduRspPckg);
+
+ performCardApduRsp->SetPCmdNumber(performCardApdu->PCmdNumber());
+ performCardApduRsp->iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
+ performCardApduRsp->iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
+ performCardApduRsp->iAdditionalInfo=DSATTSY_NULL_BUF;
+
+ sat.TerminalRsp(reqStatus,RSat::EPerformCardApdu,*performCardApduRspPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+ INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Perform Card APDU - passed"),iTestCount++);
+
+ CleanupStack::PopAndDestroy(4, performCardApdu);
+
+ ExtendedTest1(reqStatus);
+
+ sat.Close();
+ phone.Close();
+
+ return TestStepResult();
+ }
+
+// Further tests, seperated to prevent stack overflow
+void CTestSatPCmds1c::ExtendedTest1(TRequestStatus& reqStatus)
+ {
+ // Notify Power Off Card
+ RSat::TPowerOffCardV2 powerOffCard;
+ RSat::TPowerOffCardV2Pckg powerOffCardPckg(powerOffCard);
+
+ sat.NotifyPowerOffCardPCmd(reqStatus,powerOffCardPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(powerOffCard.PCmdNumber()==DSATTSY_POWER_OFF_CARD_NUMBER);
+ TEST(powerOffCard.iDestination==DSATTSY_CARD_READER_1);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyPowerOffCardPCmd passed"),iTestCount++);
+
+ // Power Off Card Cancel
+ sat.NotifyPowerOffCardPCmd(reqStatus,powerOffCardPckg);
+ sat.CancelAsyncRequest(ESatNotifyPowerOffCardPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyPowerOffCardPCmdCancel passed"),iTestCount++);
+
+ // Power Off Card Terminal Rsp
+ sat.NotifyPowerOffCardPCmd(reqStatus,powerOffCardPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ RSat::TPowerOffCardRspV2 powerOffCardRsp;
+ RSat::TPowerOffCardRspV2Pckg powerOffCardRspPckg(powerOffCardRsp);
+
+ powerOffCardRsp.SetPCmdNumber(powerOffCard.PCmdNumber());
+ powerOffCardRsp.iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
+ powerOffCardRsp.iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
+ powerOffCardRsp.iAdditionalInfo=DSATTSY_NULL_BUF;
+
+ sat.TerminalRsp(reqStatus,RSat::EPowerOffCard,powerOffCardRspPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+ INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Power Off Card - passed"),iTestCount++);
+
+ // Power On Card
+ RSat::TPowerOnCardV2 powerOnCard;
+ RSat::TPowerOnCardV2Pckg powerOnCardPckg(powerOnCard);
+
+ sat.NotifyPowerOnCardPCmd(reqStatus,powerOnCardPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(powerOnCard.PCmdNumber()==DSATTSY_POWER_ON_CARD_NUMBER);
+ TEST(powerOnCard.iDestination==DSATTSY_CARD_READER_1);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyPowerOnCardPCmd passed"),iTestCount++);
+
+ // Power On Card Cancel
+ sat.NotifyPowerOnCardPCmd(reqStatus,powerOnCardPckg);
+ sat.CancelAsyncRequest(ESatNotifyPowerOnCardPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyPowerOnCardPCmdCancel passed"),iTestCount++);
+
+ // Power On Card Terminal Rsp
+ sat.NotifyPowerOnCardPCmd(reqStatus,powerOnCardPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ RSat::TPowerOnCardRspV2 powerOnCardRsp;
+ RSat::TPowerOnCardRspV2Pckg powerOnCardRspPckg(powerOnCardRsp);
+
+ powerOnCardRsp.SetPCmdNumber(powerOnCard.PCmdNumber());
+ powerOnCardRsp.iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
+ powerOnCardRsp.iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
+ powerOnCardRsp.iAdditionalInfo=DSATTSY_NULL_BUF;
+
+ sat.TerminalRsp(reqStatus,RSat::EPowerOnCard,powerOnCardRspPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+ INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Power On Card - passed"),iTestCount++);
+
+ // Get Reader Status
+ RSat::TGetReaderStatusV2 getReaderStatus;
+ RSat::TGetReaderStatusV2Pckg getReaderStatusPckg(getReaderStatus);
+
+ sat.NotifyGetReaderStatusPCmd(reqStatus,getReaderStatusPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(getReaderStatus.PCmdNumber()==DSATTSY_GET_READER_STATUS_NUMBER);
+ TEST(getReaderStatus.iDestination==DSATTSY_CARD_READER_1);
+ TEST(getReaderStatus.iMode==DSATTSY_GET_READER_STATUS_MODE);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyGetReaderStatusPCmd passed"),iTestCount++);
+
+ // Get Reader Status Cancel
+ sat.NotifyGetReaderStatusPCmd(reqStatus,getReaderStatusPckg);
+ sat.CancelAsyncRequest(ESatNotifyGetReaderStatusPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyGetReaderStatusPCmdCancel passed"),iTestCount++);
+
+ // Get Reader Status Terminal Rsp
+ sat.NotifyGetReaderStatusPCmd(reqStatus,getReaderStatusPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ RSat::TGetReaderStatusRspV2 getReaderStatusRsp;
+ RSat::TGetReaderStatusRspV2Pckg getReaderStatusRspPckg(getReaderStatusRsp);
+
+ getReaderStatusRsp.SetPCmdNumber(getReaderStatus.PCmdNumber());
+ getReaderStatusRsp.iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
+ getReaderStatusRsp.iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
+ getReaderStatusRsp.iAdditionalInfo=DSATTSY_NULL_BUF;
+ getReaderStatusRsp.iMode=DSATTSY_GET_READER_STATUS_MODE;
+
+ sat.TerminalRsp(reqStatus,RSat::EGetReaderStatus,getReaderStatusRspPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+ INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Get Reader Status - passed"),iTestCount++);
+
+ ExtendedTest2L(reqStatus);
+}
+
+void CTestSatPCmds1c::ExtendedTest2L(TRequestStatus& reqStatus)
+ {
+ // Run At Command with V2
+ RSat::TRunAtCommandV2* runAtCommand = new (ELeave) RSat::TRunAtCommandV2;
+ CleanupStack::PushL(runAtCommand);
+ RSat::TRunAtCommandV2Pckg* runAtCommandPckg = new (ELeave) RSat::TRunAtCommandV2Pckg(*runAtCommand);
+ CleanupStack::PushL(runAtCommandPckg);
+
+ sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(runAtCommand->PCmdNumber()==DSATTSY_RUN_AT_COMMAND_NUMBER);
+ TEST(runAtCommand->iAlphaId.iStatus==DSATTSY_ALPHA_ID1_STATUS);
+ TEST(runAtCommand->iAlphaId.iAlphaId==DSATTSY_ALPHA_ID1);
+ TEST(runAtCommand->iAtCommand==DSATTSY_AT_COMMAND);
+ TEST(runAtCommand->iIconId.iIdentifier==DSATTSY_ICON_ID1);
+ TEST(runAtCommand->iIconId.iQualifier==DSATTSY_ICON_QUALIFIER1);
+
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyRunAtCommandPCmd with RSat::TRunAtCommandV2 passed"),iTestCount++);
+
+ // Run At Command Cancel with V2
+ sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandPckg);
+ sat.CancelAsyncRequest(ESatNotifyRunAtCommandPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyRunAtCommandPCmdCancel with RSat::TRunAtCommandV2 passed"),iTestCount++);
+
+ // Run At Command with V5
+ RSat::TRunAtCommandV5* runAtCommandV5 = new (ELeave) RSat::TRunAtCommandV5;
+ CleanupStack::PushL(runAtCommandV5);
+ RSat::TRunAtCommandV5Pckg* runAtCommandV5Pckg = new (ELeave) RSat::TRunAtCommandV5Pckg(*runAtCommandV5);
+ CleanupStack::PushL(runAtCommandV5Pckg);
+
+ TEST(runAtCommandV5->ExtensionId() == RSat::KSatV5);
+ TEST(runAtCommandV5->iTextAttribute.iStatus == RSat::ETextAttributeNotSet);
+
+ sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandV5Pckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(runAtCommandV5->PCmdNumber()==DSATTSY_RUN_AT_COMMAND_NUMBER);
+ TEST(runAtCommandV5->iAlphaId.iStatus==DSATTSY_ALPHA_ID1_STATUS);
+ TEST(runAtCommandV5->iAlphaId.iAlphaId==DSATTSY_ALPHA_ID1);
+ TEST(runAtCommandV5->iAtCommand==DSATTSY_AT_COMMAND);
+ TEST(runAtCommandV5->iIconId.iIdentifier==DSATTSY_ICON_ID1);
+ TEST(runAtCommandV5->iIconId.iQualifier==DSATTSY_ICON_QUALIFIER1);
+ // Version 5 parameters
+ RSat::TTextAttribute textAttribute;
+ textAttribute.iStatus = DSATTSY_TEXT_ATTRIBUTE_STATUS;
+ const TUint8 textAttributeData[DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH] = DSATTSY_TEXT_ATTRIBUTE_DATA;
+ textAttribute.iTextAttributeData.Append(textAttributeData, DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH);
+
+ TEST(runAtCommandV5->iTextAttribute.iStatus == textAttribute.iStatus);
+ TEST(runAtCommandV5->iTextAttribute.iTextAttributeData == textAttribute.iTextAttributeData);
+
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyRunAtCommandPCmd with RSat::TRunAtCommandV5 passed"),iTestCount++);
+
+ // Run At Command Cancel with V2
+ sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandV5Pckg);
+ sat.CancelAsyncRequest(ESatNotifyRunAtCommandPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyRunAtCommandPCmdCancel with RSat::TRunAtCommandV5 passed"),iTestCount++);
+
+ // Run At Command Terminal Rsp
+ sat.NotifyRunAtCommandPCmd(reqStatus,*runAtCommandPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ RSat::TRunAtCommandRspV2* runAtCommandRsp = new (ELeave) RSat::TRunAtCommandRspV2;
+ CleanupStack::PushL(runAtCommandRsp);
+ RSat::TRunAtCommandRspV2Pckg* runAtCommandRspPckg = new (ELeave) RSat::TRunAtCommandRspV2Pckg(*runAtCommandRsp);
+ CleanupStack::PushL(runAtCommandRspPckg);
+
+ runAtCommandRsp->SetPCmdNumber(runAtCommand->PCmdNumber());
+ runAtCommandRsp->iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
+ runAtCommandRsp->iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
+ runAtCommandRsp->iAdditionalInfo=DSATTSY_NULL_BUF;
+
+ sat.TerminalRsp(reqStatus,RSat::ERunAtCommand,*runAtCommandRspPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+ INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Run AT Command - passed"),iTestCount++);
+
+ CleanupStack::PopAndDestroy(6, runAtCommand);
+
+ // Language Notification
+ RSat::TLanguageNotificationV2 languageNotification;
+ RSat::TLanguageNotificationV2Pckg languageNotificationPckg(languageNotification);
+
+ sat.NotifyLanguageNotificationPCmd(reqStatus,languageNotificationPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(languageNotification.PCmdNumber()==DSATTSY_LANGUAGE_NOTIFICATION_NUMBER);
+ TEST(languageNotification.iNotificationType==DSATTSY_SPECIFIC_LANGUAGE);
+ TEST(languageNotification.iLanguage==DSATTSY_FRENCH);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyLanguageNotificationPCmd passed"),iTestCount++);
+
+ // Language Notification Cancel
+ sat.NotifyLanguageNotificationPCmd(reqStatus,languageNotificationPckg);
+ sat.CancelAsyncRequest(ESatNotifyLanguageNotificationPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyLanguageNotificationPCmdCancel passed"),iTestCount++);
+
+ // Language Notification Terminal Rsp
+ sat.NotifyLanguageNotificationPCmd(reqStatus,languageNotificationPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ RSat::TLanguageNotificationRspV2 languageNotificationRsp;
+ RSat::TLanguageNotificationRspV2Pckg languageNotificationRspPckg(languageNotificationRsp);
+
+ languageNotificationRsp.SetPCmdNumber(languageNotification.PCmdNumber());
+ languageNotificationRsp.iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
+ languageNotificationRsp.iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
+ languageNotificationRsp.iAdditionalInfo=DSATTSY_NULL_BUF;
+
+ sat.TerminalRsp(reqStatus,RSat::ELanguageNotification,languageNotificationRspPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+ INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Language Notification - passed"),iTestCount++);
+
+ ExtendedTest3L(reqStatus);
+ }
+
+// Further tests, seperated to prevent stack overflow
+void CTestSatPCmds1c::ExtendedTest3L(TRequestStatus& reqStatus)
+ {
+ //
+ // Launch Browser
+ //
+
+ // Test version 2 command
+ RSat::TLaunchBrowserV2* launchBrowser = new (ELeave) RSat::TLaunchBrowserV2;
+ CleanupStack::PushL(launchBrowser);
+ RSat::TLaunchBrowserV2Pckg* launchBrowserPckg = new (ELeave) RSat::TLaunchBrowserV2Pckg(*launchBrowser);
+ CleanupStack::PushL(launchBrowserPckg);
+
+ TestLaunchBrowser(launchBrowserPckg);
+
+ CleanupStack::PopAndDestroy(2, launchBrowser);
+
+ // Continue tests
+ ExtendedTest4L(reqStatus);
+ }
+
+// Further tests, seperated to prevent stack overflow
+void CTestSatPCmds1c::ExtendedTest4L(TRequestStatus& reqStatus)
+ {
+ // Test version 5 command
+ RSat::TLaunchBrowserV5* launchBrowserV5 = new (ELeave) RSat::TLaunchBrowserV5;
+ CleanupStack::PushL(launchBrowserV5);
+ RSat::TLaunchBrowserV5Pckg* launchBrowserV5Pckg = new (ELeave) RSat::TLaunchBrowserV5Pckg(*launchBrowserV5);
+ CleanupStack::PushL(launchBrowserV5Pckg);
+
+ TEST(launchBrowserV5->ExtensionId() == RSat::KSatV5);
+ TEST(launchBrowserV5->iTextAttribute.iStatus == RSat::ETextAttributeNotSet);
+ TestLaunchBrowser(launchBrowserV5Pckg);
+
+ // Launch Browser Terminal Rsp
+ RSat::TLaunchBrowserV2* launchBrowser = new (ELeave) RSat::TLaunchBrowserV2;
+ CleanupStack::PushL(launchBrowser);
+ RSat::TLaunchBrowserV2Pckg* launchBrowserPckg = new (ELeave) RSat::TLaunchBrowserV2Pckg(*launchBrowser);
+ CleanupStack::PushL(launchBrowserPckg);
+
+ sat.NotifyLaunchBrowserPCmd(reqStatus,*launchBrowserPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ RSat::TLaunchBrowserRspV2* launchBrowserRsp = new (ELeave) RSat::TLaunchBrowserRspV2;
+ CleanupStack::PushL(launchBrowserRsp);
+ RSat::TLaunchBrowserRspV2Pckg* launchBrowserRspPckg = new (ELeave) RSat::TLaunchBrowserRspV2Pckg(*launchBrowserRsp);
+ CleanupStack::PushL(launchBrowserRspPckg);
+
+ launchBrowserRsp->SetPCmdNumber(launchBrowser->PCmdNumber());
+ launchBrowserRsp->iGeneralResult=DSATTSY_PCMD_RESULT_SUCCESS;
+ launchBrowserRsp->iInfoType=DSATTSY_PCMD_RSP_NO_INFO;
+ launchBrowserRsp->iAdditionalInfo=DSATTSY_NULL_BUF;
+
+ sat.TerminalRsp(reqStatus,RSat::ELaunchBrowser,*launchBrowserRspPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+ INFO_PRINTF2(_L("Test %d - RSat::TerminalRsp - Launch Browser - passed"),iTestCount++);
+
+ CleanupStack::PopAndDestroy(6, launchBrowserV5);
+
+ // Continue tests
+ ExtendedTest5(reqStatus);
+ }
+
+// Further tests, seperated to prevent stack overflow
+void CTestSatPCmds1c::ExtendedTest5(TRequestStatus& reqStatus)
+ {
+ //
+ // Get Provisioning File Ref
+ //
+
+ RSat::TProvisioningFileRef fileRef;
+ TBuf8<256> retFile;
+
+ // Get with valid file ref
+
+ fileRef = DSATTSY_FILE_REF_DATA_1;
+
+ sat.GetProvisioningRefFile(reqStatus, fileRef, retFile);
+ User::WaitForRequest(reqStatus);
+
+ TEST(reqStatus.Int()==KErrNone);
+ TEST(retFile == DSATTSY_FILE1);
+
+ INFO_PRINTF2(_L("Test %d - RSat::GetProvisioningRefFile(valid file) passed"),iTestCount++);
+
+ sat.GetProvisioningRefFile(reqStatus, fileRef, retFile);
+ sat.CancelAsyncRequest(ESatGetProvisioningRefFile);
+ User::WaitForRequest(reqStatus);
+
+ TEST(reqStatus.Int()==KErrCancel);
+
+ INFO_PRINTF2(_L("Test %d - RSat::GetProvisioningRefFileCancel Cancel passed"),iTestCount++);
+
+ // Get with invalid file ref
+
+ fileRef = DSATTSY_INVALID_REF_FILE;
+
+ sat.GetProvisioningRefFile(reqStatus, fileRef, retFile);
+ User::WaitForRequest(reqStatus);
+
+ TEST(reqStatus.Int()==KErrNotFound);
+
+ INFO_PRINTF2(_L("Test %d - RSat::GetProvisioningRefFile(invalid file) passed"),iTestCount++);
+
+ sat.GetProvisioningRefFile(reqStatus, fileRef, retFile);
+ sat.CancelAsyncRequest(ESatGetProvisioningRefFile);
+ User::WaitForRequest(reqStatus);
+
+ TEST(reqStatus.Int()==KErrCancel);
+
+ INFO_PRINTF2(_L("Test %d - RSat::GetProvisioningRefFileCancel Cancel passed"),iTestCount++);
+ }
+
+void CTestSatPCmds1c::TestLaunchBrowser(TDes8* aLaunchBrowserPCmdPckg)
+ {
+ RSat::TLaunchBrowserV2Pckg* launchBrowserPckg = (RSat::TLaunchBrowserV2Pckg*)aLaunchBrowserPCmdPckg;
+ RSat::TLaunchBrowserV2& launchBrowser = (*launchBrowserPckg)();
+
+ RSat::TProvisioningFileRef file;
+
+ // Perform 5 tests, check comment for each test to see the expected result for that test
+ for (TInt browserTest = 0; browserTest < 5; ++browserTest) // Note start:end indices
+ {
+ sat.NotifyLaunchBrowserPCmd(reqStatus,*launchBrowserPckg);
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrNone);
+
+ TEST(launchBrowser.PCmdNumber() == DSATTSY_LAUNCH_BROWSER_NUMBER);
+ TEST(launchBrowser.iBrowserSel == DSATTSY_BROWSER_SELECTION_MODE);
+ TEST(launchBrowser.iBrowserId == DSATTSY_BROWSER_ID);
+ TEST(launchBrowser.iUrl == DSATTSY_URL);
+ TEST(launchBrowser.iBearerList == DSATTSY_BEARER_LIST);
+ TEST(launchBrowser.iText == DSATTSY_PROXY_NAME);
+ TEST(launchBrowser.iAlphaId.iStatus == DSATTSY_ALPHA_ID1_STATUS);
+ TEST(launchBrowser.iAlphaId.iAlphaId == DSATTSY_ALPHA_ID1);
+ TEST(launchBrowser.iIconId.iIdentifier == DSATTSY_ICON_ID1);
+ TEST(launchBrowser.iIconId.iQualifier == DSATTSY_ICON_QUALIFIER1);
+
+ if (launchBrowser.ExtensionId() == RSat::KSatV5)
+ {
+ RSat::TLaunchBrowserV5Pckg* aV5PCmdPckg = (RSat::TLaunchBrowserV5Pckg*)aLaunchBrowserPCmdPckg;
+ RSat::TLaunchBrowserV5& launchBrowserV5 = (*aV5PCmdPckg)();
+
+ RSat::TTextAttribute textAttribute;
+ textAttribute.iStatus = DSATTSY_TEXT_ATTRIBUTE_STATUS;
+ const TUint8 textAttributeData[DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH] = DSATTSY_TEXT_ATTRIBUTE_DATA;
+ textAttribute.iTextAttributeData.Append(textAttributeData, DSATTSY_TEXT_ATTRIBUTE_DATA_LENGTH);
+
+ TEST(launchBrowserV5.iTextAttribute.iStatus == textAttribute.iStatus);
+ TEST(launchBrowserV5.iTextAttribute.iTextAttributeData == textAttribute.iTextAttributeData);
+ }
+
+ // Provisioning file ref checks
+
+ switch (browserTest)
+ {
+ case 0:
+ // expect 1 file ref of 1 byte length
+ TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_1);
+ TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
+ TEST(file == DSATTSY_FILE_REF_DATA_1);
+ break;
+
+ case 1:
+ // expect 1 file ref of 128 bytes length
+ TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_2);
+ TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
+ TEST(file == DSATTSY_FILE_REF_DATA_128);
+ break;
+
+ case 2:
+ // expect 2 file refs, each of 1 byte length
+ TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_3);
+ TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
+ TEST(file == DSATTSY_FILE_REF_DATA_1);
+ TEST(launchBrowser.GetFileRef(2, file) == KErrNone);
+ TEST(file == DSATTSY_FILE_REF_DATA_1);
+ break;
+
+ case 3:
+ // 1 ref of 128 bytes, test TSY attempts to add 2 refs but 2nd too large so should be rejected
+ TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_4);
+ TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
+ TEST(file == DSATTSY_FILE_REF_DATA_128);
+ break;
+
+ case 4:
+ // 2 refs of 128 bytes & 1 byte
+ TEST(launchBrowser.NumberOfFileRef() == DSATTSY_REF_COUNT_5);
+ TEST(launchBrowser.GetFileRef(1, file) == KErrNone);
+ TEST(file == DSATTSY_FILE_REF_DATA_128);
+ TEST(launchBrowser.GetFileRef(2, file) == KErrNone);
+ TEST(file == DSATTSY_FILE_REF_DATA_1);
+ // Ask for out-of-range file ref - greater than last index
+ TEST(launchBrowser.GetFileRef(3, file) == KErrNotFound);
+ // Ask for out-of-range file ref - bigger than max ref
+ TEST(launchBrowser.GetFileRef(255, file) == KErrNotFound);
+ break;
+ }
+
+ launchBrowser.ResetFileRef();
+
+ if (launchBrowser.ExtensionId() == RSat::KSatV2)
+ {
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyLaunchBrowserPCmd with RSat::TLaunchBrowserV2 passed"),iTestCount++);
+ }
+ else if (launchBrowser.ExtensionId() == RSat::KSatV5)
+ {
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyLaunchBrowserPCmd with RSat::TLaunchBrowserV5 passed"),iTestCount++);
+ }
+
+ // Launch Browser Cancel
+ sat.NotifyLaunchBrowserPCmd(reqStatus,*launchBrowserPckg);
+ sat.CancelAsyncRequest(ESatNotifyLaunchBrowserPCmd);
+
+ User::WaitForRequest(reqStatus);
+ TEST(reqStatus.Int()==KErrCancel);
+
+ if (launchBrowser.ExtensionId() == RSat::KSatV2)
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyLaunchBrowserPCmdCancel with RSat::TLaunchBrowserV2 passed"),iTestCount++);
+ else if (launchBrowser.ExtensionId() == RSat::KSatV5)
+ INFO_PRINTF2(_L("Test %d - RSat::NotifyLaunchBrowserPCmdCancel with RSat::TLaunchBrowserV5 passed"),iTestCount++);
+
+ }
+ }