bluetoothapitest/bluetoothsvs/T_BTUserAPI/scripts/BT-USER-PhysicalLinks-PublicApi-Active-Master.script
changeset 0 29b1cd4cb562
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bluetoothapitest/bluetoothsvs/T_BTUserAPI/scripts/BT-USER-PhysicalLinks-PublicApi-Active-Master.script	Fri Jan 15 08:13:17 2010 +0200
@@ -0,0 +1,928 @@
+//
+// 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 CBluetoothPhysicalLinks 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					Sherry Ho and Zoe Chen
+//! @SYMCreationDate			16/08/2007
+///////////////////////////////////////////////////////////////////////////////
+
+RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\
+RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\user\
+
+LOAD_SUITE	UCCControlTE
+LOAD_SUITE	T_BTUserAPI	-SharedData
+DELAY		2000
+
+RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartSyncService
+RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartTDService
+RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini BuildRunPhysicalLinksPassiveSlave
+
+DELAY		5000
+// ****************************************************************************
+// CBluetoothPhysicalLinks Master
+// **************************************************************************** 
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0001
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0001
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier, CBluetoothSocket, 
+//!								MBluetoothSocketNotifier, TBTServiceSecurity, TL2CAPSockAddr, TBTDevAddr
+//! @SYMTestCaseDesc			Bring a new member to a piconet with waiting for 10000000 micro secs
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), CreateConnection(), Enumerate() and destructor from CBluetoothPhysicalLinks
+//!													HandleCreateConnectionCompleteL() from MBluetoothPhysicalLinksNotifier
+//!													NewL()1, Connect()1, Shutdown()1 and destructor from CBluetoothSocket
+//!													HandleConnectCompleteL() and HandleShutdownCompleteL() from MBluetoothSocketNotifier
+//!													TBTServiceSecurity() from TBTServiceSecurity
+//!													TL2CAPSockAddr(), SetSecurity(), SetBTAddr(), BTAddr() and SetPort() from TL2CAPSockAddr
+//!													TBTDevAddr() from TBTDevAddr
+//!													Open() and SetHostName() from RHostResolver
+//! @SYMTestActions				1. Order slave to set up connection
+//!								2. Get result from slave to wait for it to be ready
+//!								3. Create a connection to the RSocket server
+//!								4. Create the CBluetoothSocket object using NewL()1 (Standard constructor)
+//!								5. Create an empty TBTServiceSecurity object
+//!								6. Create an empty TBTDevAddr object (slave)
+//!								7. Create and initialise an RHostResolver
+//!								8. Set Hostname (MasterDevice) of the device
+//!								9. Get the slave device address
+//!								10. Create a TL2CAPSockAddr object
+//!								11. Set the Security of the TL2CAPSockAddr (Use default/empty as on server)
+//!								12. Set the BT address of the TL2CAPSockAddr to the one of the Casira pod of the slave that we connect to
+//!								13. Verify the set BT Address
+//!								14. Set the port to the specific one of the protocol we use
+//!								15. Create and start a session on the socket server
+//!								16. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								17. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								18. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								19. Bring in a new member to the piconet with the slave device address using 
+//!								    CreateConnection() function. Return KErrNone if successful
+//!								20. Return callback HandleCreateConnectionCompleteL() function
+//!								21. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								22. Waiting for 10000000 micro secs
+//!								23. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								24. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								25. Use the TL2CAPSockAddr in the connect of the CBluetooth object
+//!								26. HandleConnectCompleteL gets called indicating that connecting the BT connection completed
+//!								27. Get result from slave
+//!								28. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								29. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								30. Do socket cleanup by calling Shutdown()1
+//!								31. HandleShutdownCompleteL gets called verify error code
+//!								32. delete CBluetoothSocket object
+//!								33. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								34. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								35. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		KErrNone returned from HandleCreateConnectionCompleteL() callback
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	100	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			CREATE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
+			COMMAND		CBluetoothSocket1	RSocketServerConnect		
+			COMMAND		CBluetoothSocket1	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0001-0001command2NewL
+			COMMAND		TBTServiceSecurity1	Construct		
+			STORE	CBluetoothSocket1	
+			STORE	TBTServiceSecurity1	
+			STORE_ACTIVE_SCHEDULER
+	END_TEST_BLOCK
+	DELAY 2000
+
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartSyncTestCase
+	START_TEST_BLOCK	500	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			CREATE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
+			COMMAND		TBTDevAddrRemote	Construct		
+			COMMAND		TBTDevAddrRemote	OpenHostResolver		BT-USER-PhysicalLinks-PublicApi-Active-0001-0002command3OpenHostResolver
+			COMMAND		TBTDevAddrRemote	SetHostNameL		BT-USER-PhysicalLinks-PublicApi-Active-0001-0002command4SetHostNameL
+			COMMAND		TBTDevAddrRemote	GetDeviceAddress		BT-USER-PhysicalLinks-PublicApi-Active-0001-0002command5GetDeviceAddress
+			OUTSTANDING
+			COMMAND		TL2CAPSockAddr1	TL2CAPSockAddr		
+			COMMAND		TL2CAPSockAddr1	SetSecurity		BT-USER-PhysicalLinks-PublicApi-Active-0001-0002command8SetSecurity
+			COMMAND		TL2CAPSockAddr1	SetBTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0001-0002command9SetBTAddr
+			COMMAND		TL2CAPSockAddr1	BTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0001-0002command10BTAddr
+			COMMAND		TL2CAPSockAddr1	SetPort		BT-USER-PhysicalLinks-PublicApi-Active-0001-0002command11SetPort
+			STORE	CBluetoothSocket1
+			STORE	TL2CAPSockAddr1
+			STORE	TBTDevAddrRemote	
+			STORE_ACTIVE_SCHEDULER	
+	END_TEST_BLOCK
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini RetrieveSyncTestCaseResult
+
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartSyncTestCase
+	DELAY 5000
+	START_TEST_BLOCK	2000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			RESTORE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0001-0003command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0001-0003command6Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	CreateConnection		BT-USER-PhysicalLinks-PublicApi-Active-0001-0003command7CreateConnection
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0001-0003command9Enumerate
+			COMMAND		CBluetoothSocket1	Connect		BT-USER-PhysicalLinks-PublicApi-Active-0001-0003command11Connect
+			OUTSTANDING				
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0001-0003command13Enumerate
+			COMMAND		CBluetoothSocket1	Shutdown		BT-USER-PhysicalLinks-PublicApi-Active-0001-0003command15Shutdown
+			OUTSTANDING	
+			COMMAND		CBluetoothSocket1	~		
+			COMMAND		CBluetoothSocket1	RSocketServerClose		
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0001-0003command20Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+			STORE	TBTDevAddrRemote	
+	END_TEST_BLOCK
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini RetrieveSyncTestCaseResult
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0001
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0002
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0002
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier, CBluetoothSocket, 
+//!								MBluetoothSocketNotifier, TBTServiceSecurity
+//! @SYMTestCaseDesc			Disconnect a single member of piconet
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), CreateConnection(), Enumerate(), Disconnect() and destructor from CBluetoothPhysicalLinks
+//!													HandleCreateConnectionCompleteL() and HandleDisconnectCompleteL() from MBluetoothPhysicalLinksNotifier
+//!													NewL()1, Connect()1, Shutdown()1 and destructor from CBluetoothSocket
+//!													HandleConnectCompleteL() and HandleShutdownCompleteL() from MBluetoothSocketNotifier
+//!													TBTServiceSecurity() from TBTServiceSecurity
+//!													TL2CAPSockAddr(), SetSecurity(), SetBTAddr(), BTAddr() and SetPort() from TL2CAPSockAddr
+//! @SYMTestActions				1. Order slave to set up connection
+//!								2. Get result from slave to wait for it to be ready
+//!								3. Create a connection to the RSocket server
+//!								4. Create the CBluetoothSocket object using NewL()1 (Standard constructor)
+//!								5. Create an empty TBTServiceSecurity object
+//!								6. Create a TL2CAPSockAddr object
+//!								7. Set the Security of the TL2CAPSockAddr (Use default/empty as on server)
+//!								8. Set the BT address of the TL2CAPSockAddr to the one of the Casira pod of the slave that we connect to
+//!								9. Verify the set BT Address
+//!								10. Set the port to the specific one of the protocol we use
+//!								11. Create and start a session on the socket server
+//!								12. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								13. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								14. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								15. Bring in a new member to the piconet with the slave device address using 
+//!								    CreateConnection() function. Return KErrNone if successful
+//!								16. Return callback HandleCreateConnectionCompleteL() function
+//!								17. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								18. Waiting for 10000000 micro secs
+//!								19. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								20. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								21. Use the TL2CAPSockAddr in the connect of the CBluetooth object
+//!								22. HandleConnectCompleteL gets called indicating that connecting the BT connection completed
+//!								23. Get result from slave
+//!								24. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								25. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								26. Do socket cleanup by calling Shutdown()1
+//!								27. HandleShutdownCompleteL gets called verify error code
+//!								28. delete CBluetoothSocket object
+//!								29. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								30. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								31. Disconnect a single member of piconet with the slave device address using Disconnect() function. 
+//!								    Return KErrNone if successful
+//!								32. Return callback HandleDisconnectCompleteL() function
+//!								33. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								34. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		KErrNone returned from HandleDisconnectCompleteL() callback
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	100	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			CREATE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
+			CREATE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			COMMAND		CBluetoothSocket1	RSocketServerConnect		
+			COMMAND		CBluetoothSocket1	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0002-0001command2NewL
+			COMMAND		TBTServiceSecurity1	Construct		
+			COMMAND		TL2CAPSockAddr1	TL2CAPSockAddr		
+			COMMAND		TL2CAPSockAddr1	SetSecurity		BT-USER-PhysicalLinks-PublicApi-Active-0002-0001command7SetSecurity
+			COMMAND		TL2CAPSockAddr1	SetBTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0002-0001command8SetBTAddr
+			COMMAND		TL2CAPSockAddr1	BTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0002-0001command9BTAddr
+			COMMAND		TL2CAPSockAddr1	SetPort		BT-USER-PhysicalLinks-PublicApi-Active-0002-0001command10SetPort
+			STORE	CBluetoothSocket1	
+			STORE	TBTDevAddrRemote	
+			STORE	TL2CAPSockAddr1	
+			STORE_ACTIVE_SCHEDULER
+	END_TEST_BLOCK
+	DELAY 2000
+
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartSyncTestCase
+	DELAY 5000
+	START_TEST_BLOCK	1000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			RESTORE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command6Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	CreateConnection		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command7CreateConnection
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command9Enumerate
+			COMMAND		CBluetoothSocket1	Connect		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command11Connect
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command13Enumerate
+			COMMAND		CBluetoothSocket1	Shutdown		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command15Shutdown
+			OUTSTANDING	
+			COMMAND		CBluetoothSocket1	~		
+			COMMAND		CBluetoothSocket1	RSocketServerClose		
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command20Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	Disconnect		BT-USER-PhysicalLinks-PublicApi-Active-0002-0002command21Disconnect
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+			STORE	TBTDevAddrRemote	
+	END_TEST_BLOCK
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini RetrieveSyncTestCaseResult
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0002
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0003
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0003
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier, CBluetoothSocket, 
+//!								MBluetoothSocketNotifier, TBTServiceSecurity
+//! @SYMTestCaseDesc			Disconnect all members of piconet
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), CreateConnection(), Enumerate(), DisconnectAll() and destructor from CBluetoothPhysicalLinks
+//!													HandleCreateConnectionCompleteL() and HandleDisconnectAllCompleteL() from MBluetoothPhysicalLinksNotifier
+//!													NewL()1, Connect()1, Shutdown()1 and destructor from CBluetoothSocket
+//!													HandleConnectCompleteL() and HandleShutdownCompleteL() from MBluetoothSocketNotifier
+//!													TBTServiceSecurity() from TBTServiceSecurity
+//!													TL2CAPSockAddr(), SetSecurity(), SetBTAddr(), BTAddr() and SetPort() from TL2CAPSockAddr
+//! @SYMTestActions				1. Order slave to set up connection
+//!								2. Get result from slave to wait for it to be ready
+//!								3. Create a connection to the RSocket server
+//!								4. Create the CBluetoothSocket object using NewL()1 (Standard constructor)
+//!								5. Create an empty TBTServiceSecurity object
+//!								6. Create a TL2CAPSockAddr object
+//!								7. Set the Security of the TL2CAPSockAddr (Use default/empty as on server)
+//!								8. Set the BT address of the TL2CAPSockAddr to the one of the Casira pod of the slave that we connect to
+//!								9. Verify the set BT Address
+//!								10. Set the port to the specific one of the protocol we use
+//!								11. Create and start a session on the socket server
+//!								12. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								13. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								14. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								15. Bring in a new member to the piconet with the slave device address using 
+//!								    CreateConnection() function. Return KErrNone if successful
+//!								16. Return callback HandleCreateConnectionCompleteL() function
+//!								17. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								18. Waiting for 10000000 micro secs
+//!								19. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								20. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								21. Use the TL2CAPSockAddr in the connect of the CBluetooth object
+//!								22. HandleConnectCompleteL gets called indicating that connecting the BT connection completed
+//!								23. Get result from slave
+//!								24. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								25. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								26. Do socket cleanup by calling Shutdown()1
+//!								27. HandleShutdownCompleteL gets called verify error code
+//!								28. delete CBluetoothSocket object
+//!								29. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								30. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								31. Disconnect all members of piconet using DisconnectAll() function. Return KErrNone if successful
+//!								32. Return callback HandleDisconnectAllCompleteL() function
+//!								33. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								34. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		KErrNone Returned from HandleDisconnectAllCompleteL() callback
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	100	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			CREATE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
+			CREATE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			COMMAND		CBluetoothSocket1	RSocketServerConnect		
+			COMMAND		CBluetoothSocket1	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0003-0001command2NewL
+			COMMAND		TBTServiceSecurity1	Construct		
+			COMMAND		TL2CAPSockAddr1	TL2CAPSockAddr		
+			COMMAND		TL2CAPSockAddr1	SetSecurity		BT-USER-PhysicalLinks-PublicApi-Active-0003-0001command7SetSecurity
+			COMMAND		TL2CAPSockAddr1	SetBTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0003-0001command8SetBTAddr
+			COMMAND		TL2CAPSockAddr1	BTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0003-0001command9BTAddr
+			COMMAND		TL2CAPSockAddr1	SetPort		BT-USER-PhysicalLinks-PublicApi-Active-0003-0001command10SetPort
+			STORE	CBluetoothSocket1	
+			STORE	TBTDevAddrRemote	
+			STORE	TL2CAPSockAddr1	
+			STORE_ACTIVE_SCHEDULER
+	END_TEST_BLOCK
+	DELAY 5000
+
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartSyncTestCase
+	DELAY 5000
+	START_TEST_BLOCK	1000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			RESTORE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command6Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	CreateConnection		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command7CreateConnection
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command9Enumerate
+			COMMAND		CBluetoothSocket1	Connect		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command11Connect
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command13Enumerate
+			COMMAND		CBluetoothSocket1	Shutdown		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command15Shutdown
+			OUTSTANDING	
+			COMMAND		CBluetoothSocket1	~		
+			COMMAND		CBluetoothSocket1	RSocketServerClose		
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command20Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	DisconnectAll		BT-USER-PhysicalLinks-PublicApi-Active-0003-0002command21DisconnectAll
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+			STORE	TBTDevAddrRemote	
+	END_TEST_BLOCK
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini RetrieveSyncTestCaseResult
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0003
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0004
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0004
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier, CBluetoothSocket, 
+//!								MBluetoothSocketNotifier, TBTServiceSecurity
+//! @SYMTestCaseDesc			Disconnect a single member (invalid bluetooth address) of piconet
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), CreateConnection(), Enumerate(), Disconnect() and destructor from CBluetoothPhysicalLinks
+//!													HandleCreateConnectionCompleteL() and HandleDisconnectCompleteL() from MBluetoothPhysicalLinksNotifier
+//!													NewL()1, Connect()1, Shutdown()1 and destructor from CBluetoothSocket
+//!													HandleConnectCompleteL() and HandleShutdownCompleteL() from MBluetoothSocketNotifier
+//!													TBTServiceSecurity() from TBTServiceSecurity
+//!													TL2CAPSockAddr(), SetSecurity(), SetBTAddr(), BTAddr() and SetPort() from TL2CAPSockAddr
+//! @SYMTestActions				1. Order slave to set up connection
+//!								2. Get result from slave to wait for it to be ready
+//!								3. Create a connection to the RSocket server
+//!								4. Create the CBluetoothSocket object using NewL()1 (Standard constructor)
+//!								5. Create an empty TBTServiceSecurity object
+//!								6. Create a TL2CAPSockAddr object
+//!								7. Set the Security of the TL2CAPSockAddr (Use default/empty as on server)
+//!								8. Set the BT address of the TL2CAPSockAddr to the one of the Casira pod of the slave that we connect to
+//!								9. Verify the set BT Address
+//!								10. Set the port to the specific one of the protocol we use
+//!								11. Create and start a session on the socket server
+//!								12. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								13. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								14. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								15. Bring in a new member to the piconet with the slave device address using 
+//!								    CreateConnection() function. Return KErrNone if successful
+//!								16. Return callback HandleCreateConnectionCompleteL() function
+//!								17. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								18. Waiting for 10000000 micro secs
+//!								19. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								20. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								21. Use the TL2CAPSockAddr in the connect of the CBluetooth object
+//!								22. HandleConnectCompleteL gets called indicating that connecting the BT connection completed
+//!								23. Get result from slave
+//!								24. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								25. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								26. Do socket cleanup by calling Shutdown()1
+//!								27. HandleShutdownCompleteL gets called verify error code
+//!								28. delete CBluetoothSocket object
+//!								29. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								30. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								31. Disconnect a single member of piconet with an invalid device address using CreateConnection() 
+//!								    function. Return KErrNone if successful
+//!								32. Return callback HandleDisconnectCompleteL() function
+//!								33. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								34. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		Returned KErrNone from HandleDisconnectCompleteL() callback
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	100	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			CREATE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
+			CREATE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			COMMAND		CBluetoothSocket1	RSocketServerConnect		
+			COMMAND		CBluetoothSocket1	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0004-0001command2NewL
+			COMMAND		TBTServiceSecurity1	Construct		
+			COMMAND		TL2CAPSockAddr1	TL2CAPSockAddr		
+			COMMAND		TL2CAPSockAddr1	SetSecurity		BT-USER-PhysicalLinks-PublicApi-Active-0004-0001command7SetSecurity
+			COMMAND		TL2CAPSockAddr1	SetBTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0004-0001command8SetBTAddr
+			COMMAND		TL2CAPSockAddr1	BTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0004-0001command9BTAddr
+			COMMAND		TL2CAPSockAddr1	SetPort		BT-USER-PhysicalLinks-PublicApi-Active-0004-0001command10SetPort
+			STORE	CBluetoothSocket1	
+			STORE	TBTDevAddrRemote	
+			STORE	TL2CAPSockAddr1	
+			STORE_ACTIVE_SCHEDULER
+	END_TEST_BLOCK
+	DELAY 5000
+
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartSyncTestCase
+	DELAY 5000
+	START_TEST_BLOCK	1000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			CREATE_OBJECT	TBTDevAddr	TBTDevAddrData	
+			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			RESTORE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			COMMAND		TBTDevAddrData	Construct		
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command7NewL
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command8Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	CreateConnection		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command9CreateConnection
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command11Enumerate
+			COMMAND		CBluetoothSocket1	Connect		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command13Connect
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command15Enumerate
+			COMMAND		CBluetoothSocket1	Shutdown		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command17Shutdown
+			OUTSTANDING	
+			COMMAND		CBluetoothSocket1	~		
+			COMMAND		CBluetoothSocket1	RSocketServerClose		
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command22Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	Disconnect		BT-USER-PhysicalLinks-PublicApi-Active-0004-0002command23Disconnect
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+			STORE	TBTDevAddrRemote	
+	END_TEST_BLOCK
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini RetrieveSyncTestCaseResult
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0004
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0005
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0005
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier, CBluetoothSocket, 
+//!								MBluetoothSocketNotifier, TBTServiceSecurity
+//! @SYMTestCaseDesc			Enumerate connected members of the piconet while defining the upper limit on numbers of members to be returned as 0
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), CreateConnection(), Enumerate() and destructor from CBluetoothPhysicalLinks
+//!													HandleCreateConnectionCompleteL() from MBluetoothPhysicalLinksNotifier
+//!													NewL()1, Connect()1, Shutdown()1 and destructor from CBluetoothSocket
+//!													HandleConnectCompleteL() and HandleShutdownCompleteL() from MBluetoothSocketNotifier
+//!													TBTServiceSecurity() from TBTServiceSecurity
+//!													TL2CAPSockAddr(), SetSecurity(), SetBTAddr(), BTAddr() and SetPort() from TL2CAPSockAddr
+//! @SYMTestActions				1. Order slave to set up connection
+//!								2. Get result from slave to wait for it to be ready
+//!								3. Create a connection to the RSocket server
+//!								4. Create the CBluetoothSocket object using NewL()1 (Standard constructor)
+//!								5. Create an empty TBTServiceSecurity object
+//!								6. Create a TL2CAPSockAddr object
+//!								7. Set the Security of the TL2CAPSockAddr (Use default/empty as on server)
+//!								8. Set the BT address of the TL2CAPSockAddr to the one of the Casira pod of the slave that we connect to
+//!								9. Verify the set BT Address
+//!								10. Set the port to the specific one of the protocol we use
+//!								11. Create and start a session on the socket server
+//!								12. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								13. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								14. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								15. Bring in a new member to the piconet with the slave device address using 
+//!								    CreateConnection() function. Return KErrNone if successful
+//!								16. Return callback HandleCreateConnectionCompleteL() function
+//!								17. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								18. Waiting for 1 micro secs
+//!								19. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								20. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								21. Use the TL2CAPSockAddr in the connect of the CBluetooth object
+//!								22. HandleConnectCompleteL gets called indicating that connecting the BT connection completed
+//!								23. Get result from slave
+//!								24. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								25. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								26. Do socket cleanup by calling Shutdown()1
+//!								27. HandleShutdownCompleteL gets called verify error code
+//!								28. delete CBluetoothSocket object
+//!								29. Enumerate connected members of the piconet with given maximum number of members (decimal 0) to be returned.
+//!								    Return KErrNone if successful
+//!								30. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								31. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		KErrArgument returned
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	100	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			CREATE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
+			CREATE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			COMMAND		CBluetoothSocket1	RSocketServerConnect		
+			COMMAND		CBluetoothSocket1	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0005-0001command2NewL
+			COMMAND		TBTServiceSecurity1	Construct		
+			COMMAND		TL2CAPSockAddr1	TL2CAPSockAddr		
+			COMMAND		TL2CAPSockAddr1	SetSecurity		BT-USER-PhysicalLinks-PublicApi-Active-0005-0001command7SetSecurity
+			COMMAND		TL2CAPSockAddr1	SetBTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0005-0001command8SetBTAddr
+			COMMAND		TL2CAPSockAddr1	BTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0005-0001command9BTAddr
+			COMMAND		TL2CAPSockAddr1	SetPort		BT-USER-PhysicalLinks-PublicApi-Active-0005-0001command10SetPort
+			STORE	CBluetoothSocket1	
+			STORE	TBTDevAddrRemote	
+			STORE	TL2CAPSockAddr1	
+			STORE_ACTIVE_SCHEDULER
+	END_TEST_BLOCK
+	DELAY 5000
+
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartSyncTestCase
+	DELAY 5000
+	START_TEST_BLOCK	1000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			RESTORE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0005-0002command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0005-0002command6Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	CreateConnection		BT-USER-PhysicalLinks-PublicApi-Active-0005-0002command7CreateConnection
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0005-0002command9Enumerate
+			COMMAND		CBluetoothSocket1	Connect		BT-USER-PhysicalLinks-PublicApi-Active-0005-0002command11Connect
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0005-0002command13Enumerate
+			COMMAND		CBluetoothSocket1	Shutdown		BT-USER-PhysicalLinks-PublicApi-Active-0005-0002command15Shutdown
+			OUTSTANDING	
+			COMMAND		CBluetoothSocket1	~		
+			COMMAND		CBluetoothSocket1	RSocketServerClose		
+			COMMAND	!Error=-6		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0005-0002command20Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+			STORE	TBTDevAddrRemote	
+	END_TEST_BLOCK
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini RetrieveSyncTestCaseResult
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0005
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0006
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0006
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier, CBluetoothSocket, 
+//!								MBluetoothSocketNotifier, TBTServiceSecurity
+//! @SYMTestCaseDesc			Bring a new member to a piconet with waiting for 1 micro secs
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), CreateConnection(), Enumerate() and destructor from CBluetoothPhysicalLinks
+//!													HandleCreateConnectionCompleteL() from MBluetoothPhysicalLinksNotifier
+//!													NewL()1, Connect()1, Shutdown()1 and destructor from CBluetoothSocket
+//!													HandleConnectCompleteL() and HandleShutdownCompleteL() from MBluetoothSocketNotifier
+//!													TBTServiceSecurity() from TBTServiceSecurity
+//!													TL2CAPSockAddr(), SetSecurity(), SetBTAddr(), BTAddr() and SetPort() from TL2CAPSockAddr
+//! @SYMTestActions				1. Order slave to set up connection
+//!								2. Get result from slave to wait for it to be ready
+//!								3. Create a connection to the RSocket server
+//!								4. Create the CBluetoothSocket object using NewL()1 (Standard constructor)
+//!								5. Create an empty TBTServiceSecurity object
+//!								6. Create a TL2CAPSockAddr object
+//!								7. Set the Security of the TL2CAPSockAddr (Use default/empty as on server)
+//!								8. Set the BT address of the TL2CAPSockAddr to the one of the Casira pod of the slave that we connect to
+//!								9. Verify the set BT Address
+//!								10. Set the port to the specific one of the protocol we use
+//!								11. Create and start a session on the socket server
+//!								12. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								13. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								14. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								15. Bring in a new member to the piconet with the slave device address using 
+//!								    CreateConnection() function. Return KErrNone if successful
+//!								16. Return callback HandleCreateConnectionCompleteL() function
+//!								17. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								18. Waiting for 1 micro secs
+//!								19. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								20. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								21. Use the TL2CAPSockAddr in the connect of the CBluetooth object
+//!								22. HandleConnectCompleteL gets called indicating that connecting the BT connection completed
+//!								23. Get result from slave
+//!								24. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								25. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								26. Do socket cleanup by calling Shutdown()1
+//!								27. HandleShutdownCompleteL gets called verify error code
+//!								28. delete CBluetoothSocket object
+//!								29. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								    Return KErrNone if successful
+//!								30. Verify that if return RBTDevAddrArray size (decimal 1) is as expected (decimal 1)
+//!								31. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		Returned KErrNone from HandleCreateConnectionCompleteL() callback
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	100	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			CREATE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
+			CREATE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			COMMAND		CBluetoothSocket1	RSocketServerConnect		
+			COMMAND		CBluetoothSocket1	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0006-0001command2NewL
+			COMMAND		TBTServiceSecurity1	Construct		
+			COMMAND		TL2CAPSockAddr1	TL2CAPSockAddr		
+			COMMAND		TL2CAPSockAddr1	SetSecurity		BT-USER-PhysicalLinks-PublicApi-Active-0006-0001command7SetSecurity
+			COMMAND		TL2CAPSockAddr1	SetBTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0006-0001command8SetBTAddr
+			COMMAND		TL2CAPSockAddr1	BTAddr		BT-USER-PhysicalLinks-PublicApi-Active-0006-0001command9BTAddr
+			COMMAND		TL2CAPSockAddr1	SetPort		BT-USER-PhysicalLinks-PublicApi-Active-0006-0001command10SetPort
+			STORE	CBluetoothSocket1	
+			STORE	TBTDevAddrRemote	
+			STORE	TL2CAPSockAddr1	
+			STORE_ACTIVE_SCHEDULER
+	END_TEST_BLOCK
+	DELAY 5000
+
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StartSyncTestCase
+	DELAY 5000
+	START_TEST_BLOCK	1000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
+			RESTORE_OBJECT	TL2CAPSockAddr	TL2CAPSockAddr1	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0006-0002command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0006-0002command6Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	CreateConnection		BT-USER-PhysicalLinks-PublicApi-Active-0006-0002command7CreateConnection
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0006-0002command9Enumerate
+			COMMAND		CBluetoothSocket1	Connect		BT-USER-PhysicalLinks-PublicApi-Active-0006-0002command11Connect
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0006-0002command13Enumerate
+			COMMAND		CBluetoothSocket1	Shutdown		BT-USER-PhysicalLinks-PublicApi-Active-0006-0002command15Shutdown
+			OUTSTANDING	
+			COMMAND		CBluetoothSocket1	~		
+			COMMAND		CBluetoothSocket1	RSocketServerClose		
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0006-0002command20Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+			STORE	TBTDevAddrRemote	
+			STORE_ACTIVE_SCHEDULER
+	END_TEST_BLOCK
+	RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini RetrieveSyncTestCaseResult
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0006
+
+DELAY 5000
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0007
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0007
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier
+//! @SYMTestCaseDesc			Cancel bringing a new member to a piconet
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), CreateConnection(), CancelCreateConnection() and destructor from CBluetoothPhysicalLinks
+//!													HandleCreateConnectionCompleteL() from MBluetoothPhysicalLinksNotifier
+//! @SYMTestActions				1. Create and start a session on the socket server
+//!								2. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								3. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								   Return KErrNone if successful
+//!								4. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								5. Bring in a new member to the piconet with the slave device address using 
+//!								   CreateConnection() function. Return KErrNone if successful
+//!								6. Return callback HandleCreateConnectionCompleteL() function
+//!								7. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								8. Waiting for 10000000 micro secs
+//!								9. Cancel bringing in a new member to the piconet with the slave device address using 
+//!								   CancelCreateConnection() function
+//!								10. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		Cancel succeeded
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	1000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0007-0001command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	Enumerate		BT-USER-PhysicalLinks-PublicApi-Active-0007-0001command6Enumerate
+			COMMAND		CBluetoothPhysicalLinksData	CreateConnection		BT-USER-PhysicalLinks-PublicApi-Active-0007-0001command7CreateConnection
+			COMMAND		CBluetoothPhysicalLinksData	CancelCreateConnection		
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+			STORE	TBTDevAddrRemote	
+	END_TEST_BLOCK
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0007
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0008
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0008
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier
+//! @SYMTestCaseDesc			Bring in a new member to the piconet with a invalid device address
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), CreateConnection() and destructor from CBluetoothPhysicalLinks
+//!													HandleCreateConnectionCompleteL() from MBluetoothPhysicalLinksNotifier
+//! @SYMTestActions				1. Create and start a session on the socket server
+//!								2. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								3. Bring in a new member to the piconet with a invalid device address using 
+//!								   CreateConnection() function. Return KErrNone if successful
+//!								4. Return callback HandleCreateConnectionCompleteL() function
+//!								5. Verify that if return result (Error -6004) from callback function is as expected (Error -6004)
+//!								6. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		EPageTimedOut (-6004) returned as expected at step 4
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	2000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0008-0001command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	CreateConnection		BT-USER-PhysicalLinks-PublicApi-Active-0008-0001command6CreateConnection
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+	END_TEST_BLOCK
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0008
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0009
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0009
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks
+//! @SYMTestCaseDesc			Cancel brining a new member to piconet without bring in a new member to the piconet
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewLC(), CancelCreateConnection(), and destructor from CBluetoothPhysicalLinks
+//! @SYMTestActions				1. Create and start a session on the socket server
+//!								2. Open a Bluetooth socket using NewLC() function. Return KErrNone if successful
+//!								3. Cancel bringing in a new member to the piconet with a device address using 
+//!								   CancelCreateConnection() function
+//!								4. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		Cancel succeeded
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	1000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewLC		BT-USER-PhysicalLinks-PublicApi-Active-0009-0001command5NewLC
+			COMMAND		CBluetoothPhysicalLinksData	CancelCreateConnection		
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+	END_TEST_BLOCK
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0009
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0010
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0010
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier
+//! @SYMTestCaseDesc			Disconnect all members of piconet without bringing in a new member to the piconet
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), DisconnectAll(), and destructor from CBluetoothPhysicalLinks
+//!													HandleDisconnectAllCompleteL() from MBluetoothPhysicalLinksNotifier
+//! @SYMTestActions				1. Create and start a session on the socket server
+//!								2. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								3. Disconnect all members of piconet using DisconnectAll() function. Return KErrNone if successful
+//!								4. Return callback HandleDisconnectAllCompleteL() function
+//!								5. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								6. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		Returned KErrNone from HandleDisconnectAllCompleteL() callback
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	2000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0010-0001command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	DisconnectAll		BT-USER-PhysicalLinks-PublicApi-Active-0010-0001command6DisconnectAll
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+	END_TEST_BLOCK
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0010
+
+
+START_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0011
+//! @SYMTestCaseID				BT-USER-PhysicalLinks-PublicApi-Active-Master-0011
+//! @SYMAPI						RSocketServ, CBluetoothPhysicalLinks, MBluetoothPhysicalLinksNotifier
+//! @SYMTestCaseDesc			Disconnect a single member of piconet without bringing in a new member to the piconet
+//!								Uses API elements: 	RSocketServ(), Connect() and Close() from RSocketServ
+//!													NewL(), Disconnect(), Enumerate() and destructor from CBluetoothPhysicalLinks
+//!													HandleDisconnectCompleteL() from MBluetoothPhysicalLinksNotifier
+//! @SYMTestActions				1. Create and start a session on the socket server
+//!								2. Open a Bluetooth socket using NewL() function. Return KErrNone if successful
+//!								3. Disconnect a single member of piconet using Disconnect() function. Return KErrNone if successful
+//!								4. Return callback HandleDisconnectCompleteL() function
+//!								5. Verify that if return result (decimal 0) from callback function is as expected (decimal 0)
+//!								6. Enumerate connected members of the piconet with given maximum number of members (decimal 7) to be returned.
+//!								   Return KErrNone if successful
+//!								7. Verify that if return RBTDevAddrArray size (decimal 0) is as expected (decimal 0)
+//!								8. Delete the Bluetooth socket using destructor
+//!
+//! @SYMTestStatus				Implemented
+//! @SYMTestPriority			Critical
+//! @SYMTestExpectedResults		Returned KErrNone from HandleDisconnectCompleteL() callback
+//! @SYMTestType				CIT
+
+	START_TEST_BLOCK	2000	T_BTUserAPI	\bluetooth\user\BT-USER-PhysicalLinks-PublicApi-Active-Master.ini
+			SHARED_ACTIVE_SCHEDULER
+			CREATE_OBJECT	CBluetoothPhysicalLinks	CBluetoothPhysicalLinksData	
+			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
+			CREATE_OBJECT	RSocketServ	RSocketServData	
+			COMMAND		RSocketServData	RSocketServ		
+			COMMAND		RSocketServData	Connect		
+			COMMAND		CBluetoothPhysicalLinksData	NewL		BT-USER-PhysicalLinks-PublicApi-Active-0011-0001command5NewL
+			COMMAND		CBluetoothPhysicalLinksData	Disconnect		BT-USER-PhysicalLinks-PublicApi-Active-0011-0001command6Disconnect
+			OUTSTANDING	
+			COMMAND		CBluetoothPhysicalLinksData	~		
+			COMMAND		RSocketServData	Close		
+	END_TEST_BLOCK
+
+END_TESTCASE BT-USER-PhysicalLinks-PublicApi-Active-Master-0011
+
+
+RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini RetrieveExecutionResultPhysicalLinksPassiveSlave
+RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StopTDService
+RUN_TEST_STEP -1 UCCControlTE RunCommand \bluetooth\user\UccControlChannelConfig.ini StopSyncService
+