bluetoothapitest/bluetoothsvs/T_BTUserAPI/scripts/BT-USER-RfcommRemotePortParams-PublicApi.script
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Fri, 15 Jan 2010 08:13:17 +0200
changeset 0 29b1cd4cb562
permissions -rw-r--r--
Revision: 200951_001

//
// 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:
//
///////////////////////////////////////////////////////////////////////////////
//! @file
//! @SYMTestSuiteName			T_BTUserAPI
//! @SYMScriptTestEnvironment	This test script requires a basic ROM with bluetooth dongle.
//! @SYMScriptDescription		Tests all public elements of the TRfcommRemotePortParams class
//!								as a means of confidence that the API works as expected. 
//!								The purpose is to provide a regression test suite of PublishedAll APIs for 
//!								BT USER related classes.
//!								Negative testing is performed to confirm that correct errors are returned 
//!								when incorrect parameters are given. The tests are fully automated.
//! @SYMAuthor					Cliff Chuang
//! @SYMCreationDate			08/03/2007
///////////////////////////////////////////////////////////////////////////////

RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\
RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\user\

LOAD_SUITE	T_BTUserAPI
DELAY		500


// ****************************************************************************
// TRfcommRemotePortParams
// **************************************************************************** 

START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9001
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9001
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Create a TRfcommRemotePortParams object
//!									Uses API elements: TRfcommRemotePortParams()
//! @SYMTestActions					Construct a new empty TRfcommRemotePortParams object
//!	
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			Object created
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9001


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9002
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9002
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Get a set of flags indicating which of the port parameters have been set
//!									Uses API elements: TRfcommRemotePortParams() and IsValid()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Get a set of flags indicating which of the port parameters have been set
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			Zero returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	IsValid		BT-USER-RfcommRemotePortParams-PublicApi-0002-0001command2IsValid
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9002


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9003
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9003
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set the XOFF character used with XON/XOFF flow control
//!									Uses API elements: TRfcommRemotePortParams(), SetXOffChar() and IsValid()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Set the TRfcommRemotePortParams XOFF character (decimal 19) to use with XON/XOFF flow control and return KErrNone
//!									3. Get a set of flags (EVMXOffChar of the TRPNValidityMask) indicating which of the port parameters have been set
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			KErrNone returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	SetXOffChar		BT-USER-RfcommRemotePortParams-PublicApi-0003-0001command2SetXOffChar
			COMMAND		RFCOMMRemotePortParams	IsValid		BT-USER-RfcommRemotePortParams-PublicApi-0003-0001command3IsValid
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9003


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9004
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9004
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set and get the XOFF character used with XON/XOFF flow control
//!									Uses API elements: TRfcommRemotePortParams(), SetXOffChar() and GetXOffChar()
//! @SYMTestActions					1. Create a new empty TRfcommRemotePortParams object
//!									2. Get the TRfcommRemotePortParams XOFF character. Verify that the result (False) is as expected (False)
//!									3. Set the TRfcommRemotePortParams XOFF character (decimal 19) and return KErrNone
//!									4. Get the TRfcommRemotePortParams XOFF character
//!									5. Verify that True if XOFF character (decimal 19) has been set with expected value (decimal 19)
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			True if XOFF character has been set, otherwise False
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	GetXOffChar		BT-USER-RfcommRemotePortParams-PublicApi-0004-0001command2GetXOffChar
			COMMAND		RFCOMMRemotePortParams	SetXOffChar		BT-USER-RfcommRemotePortParams-PublicApi-0004-0001command3SetXOffChar
			COMMAND		RFCOMMRemotePortParams	GetXOffChar		BT-USER-RfcommRemotePortParams-PublicApi-0004-0001command4GetXOffChar
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9004


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9005
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9005
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Sets the XON character used with XON/XOFF flow control
//!									Uses API elements: TRfcommRemotePortParams(), SetXOnChar() and IsValid()
//! @SYMTestActions					1. Create a new empty TRfcommRemotePortParams object
//!									2. Set the TRfcommRemotePortParams XON character (decimal 17) to use with XON/XOFF flow control and return KErrNone
//!									3. Get a set of flags (EVMXOnChar of the TRPNValidityMask) indicating which of the port parameters have been set
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			KErrNone returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	SetXOnChar		BT-USER-RfcommRemotePortParams-PublicApi-0005-0001command2SetXOnChar
			COMMAND		RFCOMMRemotePortParams	IsValid		BT-USER-RfcommRemotePortParams-PublicApi-0005-0001command3IsValid
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9005


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9006
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9006
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set and get the XON character used with XON/XOFF flow control
//!									Uses API elements: TRfcommRemotePortParams(), SetXOnChar() and GetXOnChar()
//! @SYMTestActions					1. Create a new empty TRfcommRemotePortParams object
//!									2. Get the TRfcommRemotePortParams XON character. Verify that the result (False) is as expected (False)
//!									3. Set the TRfcommRemotePortParams XON character(decimal 17) and return KErrNone
//!									4. Get the TRfcommRemotePortParams XON character.
//!									5. Verify that True if XON character (decimal 17) has been set with expected value (decimal 17)
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			True if XON character has been set, otherwise False
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	GetXOnChar		BT-USER-RfcommRemotePortParams-PublicApi-0006-0001command2GetXOnChar
			COMMAND		RFCOMMRemotePortParams	SetXOnChar		BT-USER-RfcommRemotePortParams-PublicApi-0006-0001command3SetXOnChar
			COMMAND		RFCOMMRemotePortParams	GetXOnChar		BT-USER-RfcommRemotePortParams-PublicApi-0006-0001command4GetXOnChar
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9006


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9007
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9007
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set the flow control methods for the port
//!									Uses API elements: TRfcommRemotePortParams(), SetFlowCtrl() and IsValid()
//! @SYMTestActions					1. Create a new empty TRfcommRemotePortParams object
//!									2. Set the TRfcommRemotePortParams RTR flow control for data output (decimal 8) and return KErrNone
//!									3. Get a set of flags (EVMFlowCtrl of the TRPNValidityMask)indicating which of the port parameters have been set
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			KErrNone returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	SetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0007-0001command2SetFlowCtrl
			COMMAND		RFCOMMRemotePortParams	IsValid		BT-USER-RfcommRemotePortParams-PublicApi-0007-0001command3IsValid
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9007


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9008
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9008
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Get and set the flow control method for the port
//!									Uses API elements: TRfcommRemotePortParams(), SetFlowCtrl() and GetFlowCtrl()
//! @SYMTestActions					1. Create a new empty TRfcommRemotePortParams object
//!									2. Get the flow control for the port. Verify that the result (False) is as expected (False)
//!									3. Set the TRfcommRemotePortParams RTR flow control for data output (decimal 1024) and return KErrNone
//!									4. Get the flow control for the port. 
//!									5. Verify that True if flow control (decimal 32) has been set with expected value (decimal 32)
//!									
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			True if Flow control has been set, otherwise False
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	GetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0008-0001command2GetFlowCtrl
			COMMAND		RFCOMMRemotePortParams	SetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0008-0001command3SetFlowCtrl
			COMMAND		RFCOMMRemotePortParams	GetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0008-0001command4GetFlowCtrl
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9008


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9009
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9009
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Update flow control value with new value
//!									Uses API elements: TRfcommRemotePortParams(), SetFlowCtrl(), GetFlowCtrl() and UpdateWholeFlowCtrl()
//! @SYMTestActions					1. Create a new empty TRfcommRemotePortParams object
//!									2. Set the TRfcommRemotePortParams RTR flow control for data input (decimal 1024) and return KErrNone
//!									3. Get the flow control for the port.
//!									4. Verify that True if flow control (decimal 1024) has been set with expected value (decimal 1024)
//!									5. Update flow control bit with flow mask (decimal 32) and a specified flow control bit (decimal 2) 
//!									6. Get the flow control for the port. 
//!									7. Verify that True if flow control (decimal 0) has been set with expected value (decimal 0)
//!									8. Update flow control bit with flow mask (decimal 1024) and a specified flow control bit (decimal 16) 
//!									9. Get the flow control for the port. 
//!									10. Verify that True if flow control (decimal 1024) has been set with expected value (decimal 1024)
//!									11. Update flow control bit with flow mask (decimal 8192) and a specified flow control bit (decimal 48) 
//!									12. Get the flow control for the port. 
//!									13. Verify that True if flow control (decimal 32) has been set with expected value (decimal 32)

//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			Flow control value updated
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	SetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0009-0001command2SetFlowCtrl
			COMMAND		RFCOMMRemotePortParams	GetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0009-0001command3GetFlowCtrl
			COMMAND		RFCOMMRemotePortParams	UpdateWholeFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0009-0001command4UpdateWholeFlowCtrl
			COMMAND		RFCOMMRemotePortParams	GetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0009-0001command5GetFlowCtrl
			COMMAND		RFCOMMRemotePortParams	UpdateWholeFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0009-0001command6UpdateWholeFlowCtrl
			COMMAND		RFCOMMRemotePortParams	GetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0009-0001command7GetFlowCtrl
			COMMAND		RFCOMMRemotePortParams	UpdateWholeFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0009-0001command8UpdateWholeFlowCtrl
			COMMAND		RFCOMMRemotePortParams	GetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0009-0001command9GetFlowCtrl
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9009


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9010
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9010
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Constructor Set the flow control bit specified by TRPNFlowCtrlMask to the same value it has in a flow ctrol bit
//!									Uses API elements: TRfcommRemotePortParams(), GetFlowCtrl() and UpdateFlowCtrlBit()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Construct the TRfcommRemotePortParams flow control bit (decimal 33) as EFCRTOutput
//!									3. Get the TRfcommRemotePortParams flow control bit. Verify that True if flow control has been set with 
//!									   expected value (decimal 32)
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			Set the flow control bit successfully
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	UpdateFlowCtrlBit		BT-USER-RfcommRemotePortParams-PublicApi-0010-0001command2UpdateFlowCtrlBit
			COMMAND		RFCOMMRemotePortParams	GetFlowCtrl		BT-USER-RfcommRemotePortParams-PublicApi-0010-0001command3GetFlowCtrl
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9010


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9011
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9011
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set the number of stop bits transmitted
//!									Uses API elements: TRfcommRemotePortParams() and SetStopBit()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Set the number of stop bits transmitted (EStop1) and return KErrNone
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			KErrNone returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	SetStopBit		BT-USER-RfcommRemotePortParams-PublicApi-0011-0001command2SetStopBit
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9011


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9012
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9012
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Get and set the stop bit
//!									Uses API elements: TRfcommRemotePortParams(), SetStopBit(), and GetStopBit()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Get the number of bits transmitted. Verify that the result (False) is as expected (False)
//!									2. Set the number of stop bits transmitted (EStop2) and return KErrNone
//!									3. Get the number of bits transmitted. 
//!									4. Verify that True if stop bits(EStop2) has been set with expected value (EStop2)
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			True if Stop bit has been set, otherwise False
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	GetStopBit		BT-USER-RfcommRemotePortParams-PublicApi-0012-0001command2GetStopBit
			COMMAND		RFCOMMRemotePortParams	SetStopBit		BT-USER-RfcommRemotePortParams-PublicApi-0012-0001command3SetStopBit
			COMMAND		RFCOMMRemotePortParams	GetStopBit		BT-USER-RfcommRemotePortParams-PublicApi-0012-0001command4GetStopBit
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9012


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9013
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9013
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set the parity type
//!									Uses API elements: TRfcommRemotePortParams() and SetParity()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Set the parity type (EParityNone) and return KErrNone
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			KErrNone returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	SetParity		BT-USER-RfcommRemotePortParams-PublicApi-0013-0001command2SetParity
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9013


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9014
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9014
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Get and set the parity
//!									Uses API elements: TRfcommRemotePortParams(), SetParity(), and GetParity()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Get the parity type. Verify that the result (False) is as expected (False)
//!									3. Set the parity type (EParitySpace) and return KErrNone
//!									4. Get the parity type. 
//!									5. Verify that true if parity bits (EParitySpace) has been set with expected value (EParitySpace)
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			True fi Parity has been set, otherwise False
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	GetParity		BT-USER-RfcommRemotePortParams-PublicApi-0014-0001command2GetParity
			COMMAND		RFCOMMRemotePortParams	SetParity		BT-USER-RfcommRemotePortParams-PublicApi-0014-0001command3SetParity
			COMMAND		RFCOMMRemotePortParams	GetParity		BT-USER-RfcommRemotePortParams-PublicApi-0014-0001command4GetParity
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9014


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9015
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9015
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set the number of bits transmitted per character
//!									Uses API elements: TRfcommRemotePortParams() and SetDataBits()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Set the number of bits transmitted per character (EData6) and return KErrNone
//!									3. Set the number of bits transmitted per character (EData5) and return KErrNone
//!									4. Set the number of bits transmitted per character (EData7) and return KErrNone
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			KErrNone returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	SetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0015-0001command2SetDataBits
			COMMAND		RFCOMMRemotePortParams	SetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0015-0001command2SetDataBits
			COMMAND		RFCOMMRemotePortParams	SetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0015-0001command3SetDataBits
			COMMAND		RFCOMMRemotePortParams	SetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0015-0001command4SetDataBits
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9015


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9016
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9016
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Get and set the data bits
//!									Uses API elements: TRfcommRemotePortParams(), SetDataBits(), and GetDataBits()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Get the number of bits transmitted per character. Verify that the result (False) is as expected (False)
//!									3. Set the number of bits transmitted per character (EData8) and return KErrNone
//!									4. Get the number of bits transmitted per character
//!                                 5. Verify that True if data bits (EData8) has been set with expected value (EData8)
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			True if Data bits have been set, otherwise False
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	GetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0016-0001command2GetDataBits
			COMMAND		RFCOMMRemotePortParams	SetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0016-0001command3SetDataBits
			COMMAND		RFCOMMRemotePortParams	GetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0016-0001command4GetDataBits
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9016


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9017
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9017
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set the bit rate for the port
//!									Uses API elements: TRfcommRemotePortParams() and SetBitRate()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Set the bit rate for the port (EBps38400) and return KErrNone
//!									3. Set the bit rate for the port (EBps19200) and return KErrNone
//!									4. Set the bit rate for the port (EBps57600) and return KErrNone
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults         KErrNone returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	SetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0017-0001command2SetBitRate
			COMMAND		RFCOMMRemotePortParams	SetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0017-0001command3SetBitRate
			COMMAND		RFCOMMRemotePortParams	SetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0017-0001command4SetBitRate
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9017


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9018
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9018
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set and get the bit rate for the port
//!									Uses API elements: TRfcommRemotePortParams(), SetBitRate(), and GetBitRate()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Get the bit rate for the port. Verify that the result (False) is as expected (False)
//!									3. Set the bit rate for the port (EBps38400) and return KErrNone
//!									4. Get the bit rate for the port
//!									5. Verify that true if bit rate (EBps38400) has been set as expected value (EBps38400) 
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			True if Bit Rate has been set, otherwise False
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams	GetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0018-0001command2GetBitRate
			COMMAND		RFCOMMRemotePortParams	SetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0018-0001command3SetBitRate
			COMMAND		RFCOMMRemotePortParams	GetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0018-0001command4GetBitRate
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9018


START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9019
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9019
//! @SYMAPI							TRfcommRemotePortParams and TRfcommRPNTransaction
//! @SYMTestCaseDesc				Update all port parameters through a TRfcommRPNTransaction value
//!									Uses API elements:	TRfcommRemotePortParams::TRfcommRemotePortParams() 
//!														SetXOffChar(), SetXOnChar(), SetStopBit(), SetParity(),
//!														SetDataBits(), SetBitRate(), GetXOffChar(), GetXOnChar(),
//!														GetStopBit(), GetParity(), GetDataBits(), GetBitRate() 
//!														and UpdateFromPRNTransaction()
//!														TRfcommRPNTransaction::TRfcommRPNTransaction()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Set the TRfcommRemotePortParams XOFF character (decimal 19) and return KErrNone
//!									3. Set the TRfcommRemotePortParams XON character(decimal 17) and return KErrNone
//!									4. Set the number of stop bits transmitted (EStop1) and return KErrNone
//!									5. Set the parity type (EParitySpace) and return KErrNone
//!									6. Set the number of bits transmitted per character (EData8) and return KErrNone
//!									7. Set the bit rate for the port (EBps38400) and return KErrNone
//!									8. Construct a new empty TRfcommRPNTransaction object
//!									9. Set iParaMask with a flow mask (decimal 111) and set iPortParams with
//!									   TRfcommRemotePortParams object to TRfcommRPNTransaction object
//!									10. Construct another new empty TRfcommRemotePortParams object
//!									11. Update using the TRfcommRPNTransaction value
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			The internal values are updated
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams1	
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams2	
			CREATE_OBJECT	TRfcommRPNTransaction	RFCOMMRPNTransaction	
			COMMAND		RFCOMMRemotePortParams1	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams1	SetXOffChar		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command3SetXOffChar
			COMMAND		RFCOMMRemotePortParams1	SetXOnChar		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command4SetXOnChar
			COMMAND		RFCOMMRemotePortParams1	SetStopBit		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command5SetStopBit
			COMMAND		RFCOMMRemotePortParams1	SetParity		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command6SetParity
			COMMAND		RFCOMMRemotePortParams1	SetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command7SetDataBits
			COMMAND		RFCOMMRemotePortParams1	SetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command8SetBitRate
			COMMAND		RFCOMMRPNTransaction	TRfcommRPNTransaction		
			COMMAND		RFCOMMRPNTransaction	SetParamMask		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command11SetParamMask
			COMMAND		RFCOMMRPNTransaction	SetPortParams		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command12SetPortParams
			COMMAND		RFCOMMRemotePortParams2	TRfcommRemotePortParams		
			COMMAND		RFCOMMRemotePortParams2	UpdateFromRPNTransaction		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command15UpdateFromRPNTransaction
			COMMAND		RFCOMMRemotePortParams2	GetXOffChar		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command16GetXOffChar
			COMMAND		RFCOMMRemotePortParams2	GetXOnChar		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command17GetXOnChar
			COMMAND		RFCOMMRemotePortParams2	GetStopBit		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command18GetStopBit
			COMMAND		RFCOMMRemotePortParams2	GetParity		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command19GetParity
			COMMAND		RFCOMMRemotePortParams2	GetDataBits		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command20GetDataBits
			COMMAND		RFCOMMRemotePortParams2	GetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0019-0001command21GetBitRate
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9019


// ****************************************************************************
// Negative test cases
// ****************************************************************************

START_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9020
//! @SYMTestCaseID					BT-USER-RfcommRemotePortParams-PublicApi-9020
//! @SYMAPI							TRfcommRemotePortParams
//! @SYMTestCaseDesc				Set the bit rate for the port
//!									Uses API elements: TRfcommRemotePortParams() and SetBitRate()
//! @SYMTestActions					1. Construct a new empty TRfcommRemotePortParams object
//!									2. Set the bit rate for the port (EBpsAutobaud) and return KErrArgument
//!
//! @SYMTestStatus					Implemented
//! @SYMTestPriority				Low
//! @SYMTestExpectedResults			KErrArgument returned
//! @SYMTestType					CIT

	START_TEST_BLOCK	10	T_BTUserAPI	\bluetooth\user\BT-USER-RfcommRemotePortParams-PublicApi.ini
			CREATE_OBJECT	TRfcommRemotePortParams	RFCOMMRemotePortParams	
			COMMAND		RFCOMMRemotePortParams	TRfcommRemotePortParams		
			COMMAND	!Error=-6	RFCOMMRemotePortParams	SetBitRate		BT-USER-RfcommRemotePortParams-PublicApi-0020-0001command2SetBitRate
	END_TEST_BLOCK

END_TESTCASE BT-USER-RfcommRemotePortParams-PublicApi-9020

DELAY		2000