--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/bluetoothapitest/bluetoothsvs/T_BTSdpAPI/scripts/BTSDP-Agent-PublicApi-Active-Slave.script Fri Jan 15 08:13:17 2010 +0200
@@ -0,0 +1,2227 @@
+//
+// 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_BTSdpAPI
+//! @SYMScriptTestEnvironment This test script requires a basic ROM with bluetooth dongle.
+//! @SYMScriptDescription Tests all public elements of the RSdpDatabase 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 SDP related classes.
+//! Negative testing is performed to confirm that correct errors are returned
+//! when incorrect parameters are given. The tests are fully automated.
+//! @SYMAuthor Symbio
+//! @SYMCreationDate 21/09/2006
+///////////////////////////////////////////////////////////////////////////////
+
+RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\
+RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\sdp\
+RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\sdp\t_RSdpdatabase\
+
+LOAD_SUITE T_BTSdpAPI -SharedData
+DELAY 500
+
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-SetBTAddresses
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Passive-SetBTAddresses-0001
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CBluetoothSocket CBluetoothSocket1
+ CREATE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ COMMAND CBluetoothSocket1 RSocketServerConnect
+ COMMAND CBluetoothSocket1 NewL BTSDP-Agent-PublicApi-Active-SetBTAddresses-0001command2NewL
+ COMMAND TBTServiceSecurity1 Construct
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Passive-SetBTAddresses-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Passive-SetBTAddresses-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT TRfcommSockAddr TRfcommSockAddr1
+ CREATE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ COMMAND TBTDevAddrRemote Construct
+ COMMAND TBTDevAddrRemote OpenHostResolver BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command3OpenHostResolver
+ COMMAND TBTDevAddrRemote SetHostNameL BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command4SetHostNameL
+ COMMAND TBTDevAddrRemote GetDeviceAddress BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command5GetDeviceAddress
+ OUTSTANDING
+ COMMAND TRfcommSockAddr1 Construct
+ COMMAND TRfcommSockAddr1 SetSecurity BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command8SetSecurity
+ COMMAND TRfcommSockAddr1 SetBTAddr BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command9SetBTAddr
+ COMMAND TRfcommSockAddr1 BTAddr BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command10BTAddr
+ COMMAND TRfcommSockAddr1 SetPort BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command11SetPort
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Passive-SetBTAddresses-0002
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-SetBTAddresses
+
+// ****************************************************************************
+// CSdpAgent Tests
+// ****************************************************************************
+DELAY 2000
+
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0301
+//! @SYMTestCaseID BTSDP-Agent-PublicApi-Active-Slave-0301
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 13. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0301-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0301-0001
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0301-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-Agent-PublicApi-Active-0301-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-Agent-PublicApi-Active-0301-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-Agent-PublicApi-Active-0301-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewL BTSDP-Agent-PublicApi-Active-0301-0001command12NewL
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-Agent-PublicApi-Active-0301-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL BTSDP-Agent-PublicApi-Active-0301-0001command14NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-Agent-PublicApi-Active-0301-0001command20AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-Agent-PublicApi-Active-0301-0001command23AppendValueL
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-Agent-PublicApi-Active-0301-0001command24AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0301-0002
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0301-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0301-0003
+
+
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0301
+DELAY 2000
+
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0302
+//! @SYMTestCaseID BTSDP-Agent-PublicApi-Active-Slave-0302
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 13. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0302-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0302-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0302-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-Agent-PublicApi-Active-0302-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-Agent-PublicApi-Active-0302-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-Agent-PublicApi-Active-0302-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewL BTSDP-Agent-PublicApi-Active-0302-0001command12NewL
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-Agent-PublicApi-Active-0302-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-Agent-PublicApi-Active-0302-0001command20AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-Agent-PublicApi-Active-0302-0001command23AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0302-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0302-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0302-0003
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0302
+
+DELAY 2000
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0303
+//! @SYMTestCaseID BTSDP-Agent-PublicApi-Active-Slave-0303
+//! @SYMAPI CSdpAgent, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! @SYMTestActions 1. Construct a CSdpSearchPattern object
+//! 2. Add service UUID into searchpattern
+//! 3. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 4. Set the service record filter with the serchpattern
+//! 5. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 6. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 7. Search for a particular service attribute of the service
+//! 8. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 9. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 10. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 11. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0303-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0303-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0303-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-Agent-PublicApi-Active-0303-0001command4AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewL BTSDP-Agent-PublicApi-Active-0303-0001command8NewL
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-Agent-PublicApi-Active-0303-0001command9SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-Agent-PublicApi-Active-0303-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-Agent-PublicApi-Active-0303-0001command19AppendValueL
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-Agent-PublicApi-Active-0303-0001command20AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0303-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0303-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0303-0003
+
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0303
+DELAY 2000
+
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0304
+//! @SYMTestCaseID BTSDP-Agent-PublicApi-Active-Slave-0304
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for a particular service attribute of the service we've found
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. AcceptVisitorL() is called on the attribute we've got.
+//! Verify the resulting err code is KErrNone.
+//! 13. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0304-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0304-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0304-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-Agent-PublicApi-Active-0304-0001command4AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewL BTSDP-Agent-PublicApi-Active-0304-0001command8NewL
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-Agent-PublicApi-Active-0304-0001command9SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-Agent-PublicApi-Active-0304-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-Agent-PublicApi-Active-0304-0001command19AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0304-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0304-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0304-0003
+
+
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0304
+
+DELAY 2000
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0306
+//! @SYMTestCaseID BTSDP-Agent-PublicApi-Active-Slave-0306
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), Cancel(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//!
+//! @SYMTestActions 1. Construct a CSdpSearchPattern object
+//! 2. Add service UUID into searchpattern
+//! 3. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 4. Set the service record filter with the serchpattern
+//! 5. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 6. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 7. Search for a particular service attribute of the service
+//! 8. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 9. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 10. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 11. Check the result by comparing the result string generated by VisitAttributeValueL().
+//! 12. Make another service attribute request
+//! 13. Cancel the request
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults Service record and attributes are found as expected. AttributeRequest is cancelled as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0306-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0306-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0306-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-Agent-PublicApi-Active-0306-0001command4AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewL BTSDP-Agent-PublicApi-Active-0306-0001command8NewL
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-Agent-PublicApi-Active-0306-0001command9SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-Agent-PublicApi-Active-0306-0001command12AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-Agent-PublicApi-Active-0306-0001command15AppendValueL
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-Agent-PublicApi-Active-0306-0001command16AcceptVisitorL
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-Agent-PublicApi-Active-0306-0001command18AttributeRequestL
+ COMMAND TBTSdpagent Cancel
+ COMMAND TBTSdpagent ~
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0306-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0306-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0306-0003
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0306
+DELAY 2000
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0307
+//! @SYMTestCaseID BTSDP-Agent-PublicApi-Active-Slave-0307
+//! @SYMAPI CSdpAgent, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewLC(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! @SYMTestActions 1. Construct a CSdpSearchPattern object
+//! 2. Add service UUID into searchpattern
+//! 3. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 4. Set the service record filter with the serchpattern
+//! 5. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 6. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 7. Search for a particular service attribute of the service
+//! 8. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 9. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 10. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 11. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0307-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0307-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0307-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-Agent-PublicApi-Active-0307-0001command4AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-Agent-PublicApi-Active-0307-0001command8NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-Agent-PublicApi-Active-0307-0001command9SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-Agent-PublicApi-Active-0307-0001command12AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-Agent-PublicApi-Active-0307-0001command15AppendValueL
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-Agent-PublicApi-Active-0307-0001command16AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0307-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0307-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0307-0003
+
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0307
+DELAY 2000
+
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0309
+//! @SYMTestCaseID BTSDP-Agent-PublicApi-Active-Slave-0309
+//! @SYMAPI CSdpAgent, CSdpSearchPattern
+//! @SYMTestCaseDesc Negative test for CSdpAgent's AttributeRequestL()
+//! Uses API elements: NewL(), ConstructL(), AddL() from CSdpSearchPattern
+//! NewLC(), SetRecordFilterL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpSearchPattern object
+//! 2. Add service UUID into searchpattern
+//! 3. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 4. Set the service record filter with the serchpattern
+//! 6. Call AttributeRequestL() without calling NextRecordRequestL() first
+//! 7. AttributeRequestL() should fail
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults AttributeRequestL() should fail
+//! @SYMTestType CIT
+
+// START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+// SHARED_ACTIVE_SCHEDULER
+// CREATE_OBJECT CBluetoothSocket CBluetoothSocket1
+// CREATE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+// COMMAND CBluetoothSocket1 RSocketServerConnect
+// COMMAND CBluetoothSocket1 NewL BTSDP-Agent-PublicApi-Active-0309-0001command2NewL
+// COMMAND TBTServiceSecurity1 Construct
+// STORE CBluetoothSocket1
+// STORE TBTServiceSecurity1
+// STORE_ACTIVE_SCHEDULER
+// END_TEST_BLOCK
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0309-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0309-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0309-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-Agent-PublicApi-Active-0309-0001command4AddL
+ COMMAND TBTSdpagent NewLC BTSDP-Agent-PublicApi-Active-0309-0001command6NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-Agent-PublicApi-Active-0309-0001command7SetRecordFilterL
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-Agent-PublicApi-Active-0309-0001command8AttributeRequestL
+ OUTSTANDING 1000000
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0309-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0309-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0309-0003
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0309
+DELAY 2000
+START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0310
+//! @SYMTestCaseID BTSDP-Agent-PublicApi-Active-Slave-0310
+//! @SYMAPI CSdpAgent
+//! @SYMTestCaseDesc Uses API elements: MSAN_ExtensionInterfaceL() of interface class MSdpAgentNotifier.
+//! The function is implemented in the wrapper class of CSdpAgent.
+//! @SYMTestActions 1. Calls MSAN_ExtensionInterfaceL. Verify the resulting err code is KErrNone.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Function is executed without error
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0310-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0310-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0310-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ COMMAND TBTSdpagent MSAN_ExtensionInterfaceL
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0310-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0310-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Active-0310-0003
+END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-0310
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0001
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValBool-Active-Slave-0001
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 13. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0001-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0001-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0001-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValBool-Active-0001-0001command3AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValBool-Active-0001-0001command7AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValBool-Active-0001-0001command11NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValBool-Active-0001-0001command12SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValBool-Active-0001-0001command15AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValBool-Active-0001-0001command18AppendValueL
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValBool-Active-0001-0001command19AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0001-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0001-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0001-0003
+END_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0001
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0002
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValBool-Active-Slave-0002
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 13. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0002-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0002-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0002-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValBool-Active-0002-0001command3AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValBool-Active-0002-0001command7AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValBool-Active-0002-0001command11NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValBool-Active-0002-0001command12SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValBool-Active-0002-0001command15AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValBool-Active-0002-0001command18AppendValueL
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValBool-Active-0002-0001command19AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0002-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0002-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0002-0003
+END_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0002
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0003
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValBool-Active-Slave-0003
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 13. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0003-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0003-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0003-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValBool-Active-0003-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValBool-Active-0003-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValBool-Active-0003-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValBool-Active-0003-0001command12NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValBool-Active-0003-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL BTSDP-PublicApi-AttrValBool-Active-0003-0001command14NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValBool-Active-0003-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValBool-Active-0003-0001command19AppendValueL
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValBool-Active-0003-0001command20AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0003-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0003-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0003-0003
+END_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0003
+
+DELAY 2000
+START_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0004
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValBool-Active-Slave-0004
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0004-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0004-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0004-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValBool-Active-0004-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValBool-Active-0004-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValBool-Active-0004-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValBool-Active-0004-0001command12NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValBool-Active-0004-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL BTSDP-PublicApi-AttrValBool-Active-0004-0001command14NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValBool-Active-0004-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValBool-Active-0004-0001command19AppendValueL
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrValBool-Active-0004-0001command20DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValBool-Active-0004-0001command21AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0004-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0004-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0004-0003
+END_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0004
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0005
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValBool-Active-Slave-0005
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0005-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0005-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0005-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValBool-Active-0005-0001command3AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValBool-Active-0005-0001command7AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValBool-Active-0005-0001command11NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValBool-Active-0005-0001command12SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValBool-Active-0005-0001command15AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValBool-Active-0005-0001command18AppendValueL
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrValBool-Active-0005-0001command19DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValBool-Active-0005-0001command20AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0005-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0005-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValBool-Passive-0005-0003
+END_TESTCASE BTSDP-PublicApi-AttrValBool-Active-Slave-0005
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0101
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValNil-Active-Slave-0101
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0101-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0101-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0101-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0101-0001command3AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValNil-Active-0101-0001command7AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValNil-Active-0101-0001command11NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValNil-Active-0101-0001command12SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValNil-Active-0101-0001command15AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValNil-Active-0101-0001command18AppendValueL
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrValNil-Active-0101-0001command19DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValNil-Active-0101-0001command20AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0101-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0101-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0101-0003
+END_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0101
+
+DELAY 2000
+START_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0102
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValNil-Active-Slave-0102
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0102-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0102-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0102-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0102-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0102-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValNil-Active-0102-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValNil-Active-0102-0001command12NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValNil-Active-0102-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValNil-Active-0102-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrValNil-Active-0102-0001command19DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValNil-Active-0102-0001command20AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0102-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0102-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0102-0003
+END_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0102
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0103
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValNil-Active-Slave-0103
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0103-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0103-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0103-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0103-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0103-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValNil-Active-0103-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValNil-Active-0103-0001command12NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValNil-Active-0103-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValNil-Active-0103-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValNil-Active-0103-0001command19AppendValueL
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrValNil-Active-0103-0001command20DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValNil-Active-0103-0001command21AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0103-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0103-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0103-0003
+END_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0103
+
+DELAY 2000
+START_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0104
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValNil-Active-Slave-0104
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0104-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0104-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0104-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0104-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0104-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValNil-Active-0104-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValNil-Active-0104-0001command12NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValNil-Active-0104-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValNil-Active-0104-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValNil-Active-0104-0001command19AppendValueL
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrValNil-Active-0104-0001command20DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValNil-Active-0104-0001command21AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0104-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0104-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0104-0003
+END_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0104
+
+DELAY 2000
+START_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0105
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValNil-Active-Slave-0105
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0105-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0105-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0105-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0105-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0105-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValNil-Active-0105-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValNil-Active-0105-0001command12NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValNil-Active-0105-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValNil-Active-0105-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValNil-Active-0105-0001command19AppendValueL
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrValNil-Active-0105-0001command20DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValNil-Active-0105-0001command21AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0105-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0105-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0105-0003
+END_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0105
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0106
+//! @SYMTestCaseID BTSDP-PublicApi-AttrValNil-Active-Slave-0106
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
+//! Verify the resulting err code is KErrNone.
+//! 6. Set the service record filter with the serchpattern
+//! 7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
+//! Verify the resulting err code is KErrNone.
+//! 8. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify the number of service records being found.
+//! 9. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when
+//! the result of attribute request comes back in the form of a list.
+//! 11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
+//! Verify the resulting err code is KErrNone.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults Attribute values are retrieved from slave device and the result is as expected.
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0106-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0106-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0106-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0106-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrValNil-Active-0106-0001command4AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrValNil-Active-0106-0001command8AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrValNil-Active-0106-0001command12NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrValNil-Active-0106-0001command13SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrValNil-Active-0106-0001command16AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 AppendValueL BTSDP-PublicApi-AttrValNil-Active-0106-0001command19AppendValueL
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrValNil-Active-0106-0001command20DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrValNil-Active-0106-0001command21AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0106-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0106-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrValNil-Passive-0106-0003
+END_TESTCASE BTSDP-PublicApi-AttrValNil-Active-Slave-0106
+
+DELAY 2000
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0201
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0201
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command4AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command5AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command6AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command7AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command8AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command9AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command10AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command11AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command15AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command19NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command20SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command23AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command26DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command27AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0201
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0202
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0202
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add some attribute ids into the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command4AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command5AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command9AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command13NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command14SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command17AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command20DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command21AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0202
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0203
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0203
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add/Remove some attribute ids to/from the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command3AddL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command4RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command5RemoveL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command9AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command13NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command14SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command17AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command20DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command21AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0203
+
+DELAY 2000
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0204
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0204
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add/Remove some attribute ids to/from the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command3AddL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command4RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command5RemoveL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command9AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command13NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command14SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command17AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command20DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command21AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0204
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0205
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0205
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add/Remove some attribute ids to/from the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command4AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command5AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command6AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command7AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command8AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command9AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command10AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command11AddL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command12RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command13RemoveL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command17AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command21NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command22SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command25AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command28DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command29AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0205
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0206
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0206
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add/Remove some attribute ids to/from the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command4AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command5AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command6AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command7AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command8AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command9AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command10AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command11AddL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command12RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command13RemoveL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command14AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command18AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command22NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command23SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command26AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command29DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command30AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0003
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0206
+
+DELAY 2000
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0207
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0207
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add/Remove some attribute ids to/from the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command4AddL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command5RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command6RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command7RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command8RemoveL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command12AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command16NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command17SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command20AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command23DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command24AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0207
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0208
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0208
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add/Remove some attribute ids to/from the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command3AddL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command4AddL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command5RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command6RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command7RemoveL
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command8RemoveL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command9AddL
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command13AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command17NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command18SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command21AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command24DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command25AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0208
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0209
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0209
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add/Remove some attribute ids to/from the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command3AddL
+ COMMAND TBTAttridmatchlist1 Count BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command4Count
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command5RemoveL
+ COMMAND TBTAttridmatchlist1 Count BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command6Count
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command7RemoveL
+ COMMAND TBTAttridmatchlist1 Count BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command8Count
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command9AddL
+ COMMAND TBTAttridmatchlist1 Count BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command10Count
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command14AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command18NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command19SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command22AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command25DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command26AcceptVisitorL
+ STORE CBluetoothSocket1
+ STORE TBTServiceSecurity1
+ STORE TBTDevAddrRemote
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0209
+DELAY 2000
+
+START_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0210
+//! @SYMTestCaseID BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0210
+//! @SYMAPI CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
+//! @SYMTestCaseDesc Search for service on slave device, search for service attributes and retrieve attribute values
+//! Uses API elements: NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
+//! NewL(), ConstructL(), AddL from CSdpSearchPattern
+//! NewDESL() from CSdpAttrValueDES
+//! VisitAttributeValueL() from MSdpAttributeValueVisitor
+//! AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
+//! NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
+//!
+//! @SYMTestActions 1. Construct a CSdpAttrIdMatchList object
+//! 2. Add/Remove some attribute ids to/from the idmatchlist
+//! 3. Construct a CSdpSearchPattern object
+//! 4. Add service UUID into searchpattern
+//! 5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
+//! 6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
+//! Verify the resulting err code is KErrNone.
+//! 7. Set the service record filter with the serchpattern
+//! 8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
+//! Verify the resulting err code is KErrNone.
+//! 9. The call back function NextRecordRequestComplete() is executed if the results comes back.
+//! Verify that the service record has been retrieved.
+//! 10. Search for service attributes of the service we've found using the attridmatchlist.
+//! Verify the resulting err code is KErrNone.
+//! 11. The call back functions AttributeRequestComplete() is executed when
+//! the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
+//! 12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
+//! 13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values.
+//! Verify the resulting err code is KErrNone.
+//! 14. Check the result by comparing the result string generated by VisitAttributeValueL().
+//!
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Critical
+//! @SYMTestExpectedResults CSdpAgent object was created successfully
+//! @SYMTestType CIT
+
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0001
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0001
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0002
+ START_TEST_BLOCK 100 T_BTSdpAPI \bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
+ SHARED_ACTIVE_SCHEDULER
+ CREATE_OBJECT CSdpAgent TBTSdpagent
+ RESTORE_OBJECT TBTDevAddr TBTDevAddrRemote
+ RESTORE_OBJECT CBluetoothSocket CBluetoothSocket1
+ RESTORE_OBJECT TBTServiceSecurity TBTServiceSecurity1
+ CREATE_OBJECT CSdpAttrIdMatchList TBTAttridmatchlist1
+ CREATE_OBJECT CSdpSearchPattern TBTSearchpattern1
+ CREATE_OBJECT CSdpAttrValueDES TBTAttrValueDES1
+ COMMAND TBTAttridmatchlist1 NewL
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command3AddL
+ COMMAND TBTAttridmatchlist1 InMatchList BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command4InMatchList
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command5RemoveL
+ COMMAND TBTAttridmatchlist1 InMatchList BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command6InMatchList
+ COMMAND TBTAttridmatchlist1 RemoveL BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command7RemoveL
+ COMMAND TBTAttridmatchlist1 InMatchList BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command8InMatchList
+ COMMAND TBTAttridmatchlist1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command9AddL
+ COMMAND TBTAttridmatchlist1 InMatchList BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command10InMatchList
+ COMMAND TBTAttridmatchlist1 InMatchList BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command11InMatchList
+ COMMAND TBTAttridmatchlist1 InMatchList BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command12InMatchList
+ COMMAND TBTAttridmatchlist1 InMatchList BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command13InMatchList
+ COMMAND TBTSearchpattern1 NewL
+ COMMAND TBTSearchpattern1 ConstructL
+ COMMAND TBTSearchpattern1 AddL BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command17AddL
+ COMMAND TBTAttrValueDES1 NewDESL
+ COMMAND TBTSdpagent NewLC BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command21NewLC
+ COMMAND TBTSdpagent SetRecordFilterL BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command22SetRecordFilterL
+ COMMAND TBTSdpagent NextRecordRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTSdpagent AttributeRequestL BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command25AttributeRequestL
+ OUTSTANDING 1000000
+ COMMAND TBTAttrValueDES1 DataSize BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command28DataSize
+ COMMAND TBTAttrValueDES1 AcceptVisitorL BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command29AcceptVisitorL
+ STORE_ACTIVE_SCHEDULER
+ END_TEST_BLOCK
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0002
+ START_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0003
+ END_SYNCHRONISED_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0003
+
+END_TESTCASE BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0210
+
+DELAY 2000
+
+