bluetoothapitest/bluetoothsvs/T_BTSdpAPI/scripts/BTSDP-Agent-PublicApi-Active-Slave.script
changeset 0 29b1cd4cb562
equal deleted inserted replaced
-1:000000000000 0:29b1cd4cb562
       
     1 //
       
     2 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     3 // All rights reserved.
       
     4 // This component and the accompanying materials are made available
       
     5 // under the terms of "Eclipse Public License v1.0"
       
     6 // which accompanies this distribution, and is available
       
     7 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 //
       
     9 // Initial Contributors:
       
    10 // Nokia Corporation - initial contribution.
       
    11 //
       
    12 // Contributors:
       
    13 //
       
    14 // Description:
       
    15 //
       
    16 ///////////////////////////////////////////////////////////////////////////////
       
    17 //! @file
       
    18 //! @SYMTestSuiteName			T_BTSdpAPI
       
    19 //! @SYMScriptTestEnvironment	This test script requires a basic ROM with bluetooth dongle.
       
    20 //! @SYMScriptDescription		Tests all public elements of the RSdpDatabase class
       
    21 //!								as a means of confidence that the API works as expected. 
       
    22 //!								The purpose is to provide a regression test suite of PublishedAll APIs for 
       
    23 //!								BT SDP related classes.
       
    24 //!								Negative testing is performed to confirm that correct errors are returned 
       
    25 //!								when incorrect parameters are given. The tests are fully automated.
       
    26 //! @SYMAuthor					Symbio
       
    27 //! @SYMCreationDate			21/09/2006
       
    28 ///////////////////////////////////////////////////////////////////////////////
       
    29 
       
    30 RUN_UTILS	MkDir	${SYSDRIVE}\bluetooth\
       
    31 RUN_UTILS	MkDir	${SYSDRIVE}\bluetooth\sdp\
       
    32 RUN_UTILS	MkDir	${SYSDRIVE}\bluetooth\sdp\t_RSdpdatabase\
       
    33 
       
    34 LOAD_SUITE	T_BTSdpAPI	-SharedData
       
    35 DELAY		500
       
    36 
       
    37 START_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-SetBTAddresses
       
    38 	START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Passive-SetBTAddresses-0001
       
    39 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
    40 			SHARED_ACTIVE_SCHEDULER
       
    41 			CREATE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
    42 			CREATE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
    43 			COMMAND		CBluetoothSocket1	RSocketServerConnect
       
    44 			COMMAND		CBluetoothSocket1	NewL		BTSDP-Agent-PublicApi-Active-SetBTAddresses-0001command2NewL
       
    45 			COMMAND		TBTServiceSecurity1	Construct
       
    46 			STORE	CBluetoothSocket1	
       
    47 			STORE	TBTServiceSecurity1	
       
    48 			STORE_ACTIVE_SCHEDULER
       
    49 	END_TEST_BLOCK
       
    50 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Passive-SetBTAddresses-0001	
       
    51 	START_SYNCHRONISED_TESTCASE BTSDP-Agent-PublicApi-Passive-SetBTAddresses-0002		
       
    52 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
    53 			SHARED_ACTIVE_SCHEDULER
       
    54 			CREATE_OBJECT	TRfcommSockAddr	TRfcommSockAddr1	
       
    55 			CREATE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
    56 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
    57 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
    58 			COMMAND		TBTDevAddrRemote	Construct
       
    59 			COMMAND		TBTDevAddrRemote	OpenHostResolver		BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command3OpenHostResolver
       
    60 			COMMAND		TBTDevAddrRemote	SetHostNameL		BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command4SetHostNameL
       
    61 			COMMAND		TBTDevAddrRemote	GetDeviceAddress		BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command5GetDeviceAddress
       
    62 			OUTSTANDING
       
    63 			COMMAND		TRfcommSockAddr1	Construct
       
    64 			COMMAND		TRfcommSockAddr1	SetSecurity		BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command8SetSecurity
       
    65 			COMMAND		TRfcommSockAddr1	SetBTAddr		BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command9SetBTAddr
       
    66 			COMMAND		TRfcommSockAddr1	BTAddr		BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command10BTAddr
       
    67 			COMMAND		TRfcommSockAddr1	SetPort		BTSDP-Agent-PublicApi-Active-SetBTAddresses-0002command11SetPort
       
    68 			STORE	CBluetoothSocket1	
       
    69 			STORE	TBTServiceSecurity1	
       
    70 			STORE	TBTDevAddrRemote	
       
    71 	END_TEST_BLOCK
       
    72 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Passive-SetBTAddresses-0002		
       
    73 END_TESTCASE BTSDP-Agent-PublicApi-Active-Slave-SetBTAddresses
       
    74 
       
    75 // ****************************************************************************
       
    76 // CSdpAgent Tests
       
    77 // ****************************************************************************
       
    78 DELAY		2000
       
    79 
       
    80 START_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0301
       
    81 //! @SYMTestCaseID				BTSDP-Agent-PublicApi-Active-Slave-0301
       
    82 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
    83 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
    84 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
    85 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
    86 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
    87 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
    88 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
    89 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
    90 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
    91 //!								2. Add some attribute ids into the idmatchlist
       
    92 //!								3. Construct a CSdpSearchPattern object
       
    93 //!								4. Add service UUID into searchpattern
       
    94 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
    95 //!								   Verify the resulting err code is KErrNone.
       
    96 //!								6. Set the service record filter with the serchpattern
       
    97 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
    98 //!								   Verify the resulting err code is KErrNone.
       
    99 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   100 //!								   Verify the number of service records being found.
       
   101 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
   102 //!								   Verify the resulting err code is KErrNone.
       
   103 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   104 //!									the result of attribute request comes back in the form of a list. 
       
   105 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   106 //!									Verify the resulting err code is KErrNone.
       
   107 //!								12. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   108 //!								13. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   109 //!
       
   110 //! @SYMTestStatus				Implemented
       
   111 //! @SYMTestPriority			Critical
       
   112 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   113 //! @SYMTestType				CIT
       
   114 
       
   115 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0301-0001
       
   116 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0301-0001
       
   117 
       
   118 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0301-0002
       
   119 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   120 			SHARED_ACTIVE_SCHEDULER
       
   121 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   122 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   123 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   124 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   125 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
   126 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   127 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   128 			COMMAND		TBTAttridmatchlist1	NewL
       
   129 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-Agent-PublicApi-Active-0301-0001command3AddL
       
   130 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-Agent-PublicApi-Active-0301-0001command4AddL
       
   131 			COMMAND		TBTSearchpattern1	NewL
       
   132 			COMMAND		TBTSearchpattern1	ConstructL
       
   133 			COMMAND		TBTSearchpattern1	AddL		BTSDP-Agent-PublicApi-Active-0301-0001command8AddL
       
   134 			COMMAND		TBTAttrValueDES1	NewDESL
       
   135 			COMMAND		TBTSdpagent	NewL		BTSDP-Agent-PublicApi-Active-0301-0001command12NewL
       
   136 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-Agent-PublicApi-Active-0301-0001command13SetRecordFilterL
       
   137 			COMMAND		TBTSdpagent	NextRecordRequestL		BTSDP-Agent-PublicApi-Active-0301-0001command14NextRecordRequestL
       
   138 			OUTSTANDING	1000000
       
   139 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   140 			OUTSTANDING	1000000
       
   141 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   142 			OUTSTANDING	1000000
       
   143 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-Agent-PublicApi-Active-0301-0001command20AttributeRequestL
       
   144 			OUTSTANDING	1000000
       
   145 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-Agent-PublicApi-Active-0301-0001command23AppendValueL
       
   146 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-Agent-PublicApi-Active-0301-0001command24AcceptVisitorL
       
   147 			STORE	CBluetoothSocket1	
       
   148 			STORE	TBTServiceSecurity1	
       
   149 			STORE	TBTDevAddrRemote	
       
   150 			STORE_ACTIVE_SCHEDULER
       
   151 	END_TEST_BLOCK
       
   152 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0301-0002
       
   153 
       
   154 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0301-0003
       
   155 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0301-0003
       
   156 
       
   157 
       
   158 END_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0301
       
   159 DELAY		2000
       
   160 
       
   161 START_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0302
       
   162 //! @SYMTestCaseID				BTSDP-Agent-PublicApi-Active-Slave-0302
       
   163 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
   164 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   165 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
   166 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   167 //!													NewDESL() from CSdpAttrValueDES
       
   168 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   169 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   170 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   171 //!													
       
   172 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
   173 //!								2. Add some attribute ids into the idmatchlist
       
   174 //!								3. Construct a CSdpSearchPattern object
       
   175 //!								4. Add service UUID into searchpattern
       
   176 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
   177 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
   178 //!								   Verify the resulting err code is KErrNone.
       
   179 //!								7. Set the service record filter with the serchpattern
       
   180 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
   181 //!								   Verify the resulting err code is KErrNone.
       
   182 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   183 //!								   Verify that the service record has been retrieved.
       
   184 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
   185 //!									Verify the resulting err code is KErrNone.
       
   186 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
   187 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
   188 //!								12. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
   189 //!									Verify the resulting err code is KErrNone.
       
   190 //!								13. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   191 //!
       
   192 //! @SYMTestStatus				Implemented
       
   193 //! @SYMTestPriority			Critical
       
   194 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
   195 //! @SYMTestType				CIT
       
   196 
       
   197 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0302-0001
       
   198 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0302-0001
       
   199 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0302-0002
       
   200 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   201 			SHARED_ACTIVE_SCHEDULER
       
   202 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   203 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   204 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   205 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   206 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
   207 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   208 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   209 			COMMAND		TBTAttridmatchlist1	NewL
       
   210 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-Agent-PublicApi-Active-0302-0001command3AddL
       
   211 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-Agent-PublicApi-Active-0302-0001command4AddL
       
   212 			COMMAND		TBTSearchpattern1	NewL
       
   213 			COMMAND		TBTSearchpattern1	ConstructL
       
   214 			COMMAND		TBTSearchpattern1	AddL		BTSDP-Agent-PublicApi-Active-0302-0001command8AddL
       
   215 			COMMAND		TBTAttrValueDES1	NewDESL
       
   216 			COMMAND		TBTSdpagent	NewL		BTSDP-Agent-PublicApi-Active-0302-0001command12NewL
       
   217 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-Agent-PublicApi-Active-0302-0001command13SetRecordFilterL
       
   218 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   219 			OUTSTANDING	1000000
       
   220 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   221 			OUTSTANDING	1000000
       
   222 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   223 			OUTSTANDING	1000000
       
   224 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-Agent-PublicApi-Active-0302-0001command20AttributeRequestL
       
   225 			OUTSTANDING	1000000
       
   226 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-Agent-PublicApi-Active-0302-0001command23AcceptVisitorL
       
   227 			STORE	CBluetoothSocket1	
       
   228 			STORE	TBTServiceSecurity1	
       
   229 			STORE	TBTDevAddrRemote	
       
   230 			STORE_ACTIVE_SCHEDULER
       
   231 	END_TEST_BLOCK
       
   232 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0302-0002
       
   233 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0302-0003
       
   234 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0302-0003
       
   235 END_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0302
       
   236 
       
   237 DELAY		2000
       
   238 START_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0303
       
   239 //! @SYMTestCaseID				BTSDP-Agent-PublicApi-Active-Slave-0303
       
   240 //! @SYMAPI						CSdpAgent, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
   241 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   242 //!								Uses API elements: 	NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   243 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   244 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   245 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   246 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   247 //! @SYMTestActions				1. Construct a CSdpSearchPattern object
       
   248 //!								2. Add service UUID into searchpattern
       
   249 //!								3. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
   250 //!								   Verify the resulting err code is KErrNone.
       
   251 //!								4. Set the service record filter with the serchpattern
       
   252 //!								5. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
   253 //!								   Verify the resulting err code is KErrNone.
       
   254 //!								6. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   255 //!								   Verify that the service record has been retrieved.
       
   256 //!								7. Search for a particular service attribute of the service
       
   257 //!								8. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   258 //!								   the result of attribute request comes back in the form of a list.
       
   259 //!								9. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   260 //!								   Verify the resulting err code is KErrNone.
       
   261 //!								10. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   262 //!								11. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   263 //!
       
   264 //! @SYMTestStatus				Implemented
       
   265 //! @SYMTestPriority			Critical
       
   266 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   267 //! @SYMTestType				CIT
       
   268 
       
   269 
       
   270 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0303-0001
       
   271 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0303-0001
       
   272 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0303-0002
       
   273 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   274 			SHARED_ACTIVE_SCHEDULER
       
   275 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   276 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   277 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   278 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   279 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   280 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   281 			COMMAND		TBTSearchpattern1	NewL
       
   282 			COMMAND		TBTSearchpattern1	ConstructL
       
   283 			COMMAND		TBTSearchpattern1	AddL		BTSDP-Agent-PublicApi-Active-0303-0001command4AddL
       
   284 			COMMAND		TBTAttrValueDES1	NewDESL
       
   285 			COMMAND		TBTSdpagent	NewL		BTSDP-Agent-PublicApi-Active-0303-0001command8NewL
       
   286 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-Agent-PublicApi-Active-0303-0001command9SetRecordFilterL
       
   287 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   288 			OUTSTANDING	1000000
       
   289 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   290 			OUTSTANDING	1000000
       
   291 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   292 			OUTSTANDING	1000000
       
   293 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-Agent-PublicApi-Active-0303-0001command16AttributeRequestL
       
   294 			OUTSTANDING	1000000
       
   295 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-Agent-PublicApi-Active-0303-0001command19AppendValueL
       
   296 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-Agent-PublicApi-Active-0303-0001command20AcceptVisitorL
       
   297 			STORE	CBluetoothSocket1	
       
   298 			STORE	TBTServiceSecurity1	
       
   299 			STORE	TBTDevAddrRemote	
       
   300 			STORE_ACTIVE_SCHEDULER
       
   301 	END_TEST_BLOCK
       
   302 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0303-0002
       
   303 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0303-0003
       
   304 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0303-0003
       
   305 
       
   306 END_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0303
       
   307 DELAY		2000
       
   308 
       
   309 START_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0304
       
   310 //! @SYMTestCaseID				BTSDP-Agent-PublicApi-Active-Slave-0304
       
   311 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
   312 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   313 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
   314 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   315 //!													NewDESL() from CSdpAttrValueDES
       
   316 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   317 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   318 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   319 //!													
       
   320 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
   321 //!								2. Add some attribute ids into the idmatchlist
       
   322 //!								3. Construct a CSdpSearchPattern object
       
   323 //!								4. Add service UUID into searchpattern
       
   324 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
   325 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
   326 //!								   Verify the resulting err code is KErrNone.
       
   327 //!								7. Set the service record filter with the serchpattern
       
   328 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
   329 //!								   Verify the resulting err code is KErrNone.
       
   330 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   331 //!								   Verify that the service record has been retrieved.
       
   332 //!								10. Search for a particular service attribute of the service we've found
       
   333 //!									Verify the resulting err code is KErrNone.
       
   334 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
   335 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
   336 //!								12. AcceptVisitorL() is called on the attribute we've got. 
       
   337 //!									Verify the resulting err code is KErrNone.
       
   338 //!								13. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   339 //!
       
   340 //! @SYMTestStatus				Implemented
       
   341 //! @SYMTestPriority			Critical
       
   342 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   343 //! @SYMTestType				CIT
       
   344 
       
   345 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0304-0001
       
   346 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0304-0001
       
   347 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0304-0002
       
   348 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   349 			SHARED_ACTIVE_SCHEDULER
       
   350 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   351 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   352 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   353 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   354 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   355 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   356 			COMMAND		TBTSearchpattern1	NewL
       
   357 			COMMAND		TBTSearchpattern1	ConstructL
       
   358 			COMMAND		TBTSearchpattern1	AddL		BTSDP-Agent-PublicApi-Active-0304-0001command4AddL
       
   359 			COMMAND		TBTAttrValueDES1	NewDESL
       
   360 			COMMAND		TBTSdpagent	NewL		BTSDP-Agent-PublicApi-Active-0304-0001command8NewL
       
   361 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-Agent-PublicApi-Active-0304-0001command9SetRecordFilterL
       
   362 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   363 			OUTSTANDING	1000000
       
   364 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   365 			OUTSTANDING	1000000
       
   366 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   367 			OUTSTANDING	1000000
       
   368 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-Agent-PublicApi-Active-0304-0001command16AttributeRequestL
       
   369 			OUTSTANDING	1000000
       
   370 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-Agent-PublicApi-Active-0304-0001command19AcceptVisitorL
       
   371 			STORE	CBluetoothSocket1	
       
   372 			STORE	TBTServiceSecurity1	
       
   373 			STORE	TBTDevAddrRemote	
       
   374 			STORE_ACTIVE_SCHEDULER
       
   375 	END_TEST_BLOCK
       
   376 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0304-0002
       
   377 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0304-0003
       
   378 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0304-0003
       
   379 
       
   380 
       
   381 END_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0304
       
   382 
       
   383 DELAY		2000
       
   384 START_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0306
       
   385 //! @SYMTestCaseID				BTSDP-Agent-PublicApi-Active-Slave-0306
       
   386 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAgentNotifier 
       
   387 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   388 //!								Uses API elements: 	NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   389 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   390 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   391 //!													NewL(), Cancel(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   392 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   393 //!
       
   394 //! @SYMTestActions				1. Construct a CSdpSearchPattern object
       
   395 //!								2. Add service UUID into searchpattern
       
   396 //!								3. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
   397 //!								   Verify the resulting err code is KErrNone.
       
   398 //!								4. Set the service record filter with the serchpattern
       
   399 //!								5. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
   400 //!								   Verify the resulting err code is KErrNone.
       
   401 //!								6. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   402 //!								   Verify that the service record has been retrieved.
       
   403 //!								7. Search for a particular service attribute of the service
       
   404 //!								8. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   405 //!								   the result of attribute request comes back in the form of a list.
       
   406 //!								9. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   407 //!								   Verify the resulting err code is KErrNone.
       
   408 //!								10. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   409 //!								11. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   410 //!								12. Make another service attribute request
       
   411 //!								13. Cancel the request 
       
   412 //!
       
   413 //! @SYMTestStatus				Implemented
       
   414 //! @SYMTestPriority			Medium
       
   415 //! @SYMTestExpectedResults		Service record and attributes are found as expected. AttributeRequest is cancelled as expected.
       
   416 //! @SYMTestType				CIT
       
   417 
       
   418 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0306-0001
       
   419 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0306-0001
       
   420 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0306-0002
       
   421 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   422 			SHARED_ACTIVE_SCHEDULER
       
   423 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   424 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   425 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   426 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   427 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   428 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   429 			COMMAND		TBTSearchpattern1	NewL
       
   430 			COMMAND		TBTSearchpattern1	ConstructL
       
   431 			COMMAND		TBTSearchpattern1	AddL		BTSDP-Agent-PublicApi-Active-0306-0001command4AddL
       
   432 			COMMAND		TBTAttrValueDES1	NewDESL
       
   433 			COMMAND		TBTSdpagent	NewL		BTSDP-Agent-PublicApi-Active-0306-0001command8NewL
       
   434 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-Agent-PublicApi-Active-0306-0001command9SetRecordFilterL
       
   435 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   436 			OUTSTANDING	1000000
       
   437 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-Agent-PublicApi-Active-0306-0001command12AttributeRequestL
       
   438 			OUTSTANDING	1000000
       
   439 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-Agent-PublicApi-Active-0306-0001command15AppendValueL
       
   440 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-Agent-PublicApi-Active-0306-0001command16AcceptVisitorL
       
   441 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-Agent-PublicApi-Active-0306-0001command18AttributeRequestL
       
   442 			COMMAND		TBTSdpagent	Cancel
       
   443 			COMMAND		TBTSdpagent	~
       
   444 			STORE	CBluetoothSocket1	
       
   445 			STORE	TBTServiceSecurity1	
       
   446 			STORE	TBTDevAddrRemote	
       
   447 			STORE_ACTIVE_SCHEDULER
       
   448 	END_TEST_BLOCK
       
   449 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0306-0002
       
   450 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0306-0003
       
   451 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0306-0003
       
   452 END_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0306
       
   453 DELAY		2000
       
   454 START_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0307
       
   455 //! @SYMTestCaseID				BTSDP-Agent-PublicApi-Active-Slave-0307
       
   456 //! @SYMAPI						CSdpAgent, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
   457 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   458 //!								Uses API elements: 	NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   459 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   460 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   461 //!													NewLC(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   462 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   463 //! @SYMTestActions				1. Construct a CSdpSearchPattern object
       
   464 //!								2. Add service UUID into searchpattern
       
   465 //!								3. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
   466 //!								   Verify the resulting err code is KErrNone.
       
   467 //!								4. Set the service record filter with the serchpattern
       
   468 //!								5. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
   469 //!								   Verify the resulting err code is KErrNone.
       
   470 //!								6. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   471 //!								   Verify that the service record has been retrieved.
       
   472 //!								7. Search for a particular service attribute of the service
       
   473 //!								8. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   474 //!								   the result of attribute request comes back in the form of a list.
       
   475 //!								9. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   476 //!								   Verify the resulting err code is KErrNone.
       
   477 //!								10. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   478 //!								11. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   479 //!
       
   480 //! @SYMTestStatus				Implemented
       
   481 //! @SYMTestPriority			Medium
       
   482 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   483 //! @SYMTestType				CIT
       
   484 
       
   485 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0307-0001
       
   486 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0307-0001
       
   487 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0307-0002
       
   488 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   489 			SHARED_ACTIVE_SCHEDULER
       
   490 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   491 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   492 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   493 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   494 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   495 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   496 			COMMAND		TBTSearchpattern1	NewL
       
   497 			COMMAND		TBTSearchpattern1	ConstructL
       
   498 			COMMAND		TBTSearchpattern1	AddL		BTSDP-Agent-PublicApi-Active-0307-0001command4AddL
       
   499 			COMMAND		TBTAttrValueDES1	NewDESL
       
   500 			COMMAND		TBTSdpagent	NewLC		BTSDP-Agent-PublicApi-Active-0307-0001command8NewLC
       
   501 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-Agent-PublicApi-Active-0307-0001command9SetRecordFilterL
       
   502 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   503 			OUTSTANDING	1000000
       
   504 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-Agent-PublicApi-Active-0307-0001command12AttributeRequestL
       
   505 			OUTSTANDING	1000000
       
   506 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-Agent-PublicApi-Active-0307-0001command15AppendValueL
       
   507 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-Agent-PublicApi-Active-0307-0001command16AcceptVisitorL
       
   508 			STORE	CBluetoothSocket1	
       
   509 			STORE	TBTServiceSecurity1	
       
   510 			STORE	TBTDevAddrRemote	
       
   511 			STORE_ACTIVE_SCHEDULER
       
   512 	END_TEST_BLOCK
       
   513 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0307-0002
       
   514 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0307-0003
       
   515 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0307-0003
       
   516 
       
   517 END_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0307
       
   518 DELAY		2000
       
   519 
       
   520 START_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0309
       
   521 //! @SYMTestCaseID				BTSDP-Agent-PublicApi-Active-Slave-0309
       
   522 //! @SYMAPI						CSdpAgent, CSdpSearchPattern
       
   523 //! @SYMTestCaseDesc			Negative test for CSdpAgent's AttributeRequestL()
       
   524 //!								Uses API elements: 	NewL(), ConstructL(), AddL() from CSdpSearchPattern
       
   525 //!													NewLC(), SetRecordFilterL(), AttributeRequestL() from CSdpAgent
       
   526 //! @SYMTestActions				1. Construct a CSdpSearchPattern object
       
   527 //!								2. Add service UUID into searchpattern
       
   528 //!								3. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
   529 //!								   Verify the resulting err code is KErrNone.
       
   530 //!								4. Set the service record filter with the serchpattern
       
   531 //!								6. Call AttributeRequestL() without calling NextRecordRequestL() first 
       
   532 //!								7. AttributeRequestL() should fail
       
   533 //!
       
   534 //! @SYMTestStatus				Implemented
       
   535 //! @SYMTestPriority			Medium
       
   536 //! @SYMTestExpectedResults		AttributeRequestL() should fail
       
   537 //! @SYMTestType				CIT
       
   538 
       
   539 //	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   540 //			SHARED_ACTIVE_SCHEDULER
       
   541 //			CREATE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   542 //			CREATE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   543 //			COMMAND		CBluetoothSocket1	RSocketServerConnect
       
   544 //			COMMAND		CBluetoothSocket1	NewL		BTSDP-Agent-PublicApi-Active-0309-0001command2NewL
       
   545 //			COMMAND		TBTServiceSecurity1	Construct
       
   546 //			STORE	CBluetoothSocket1	
       
   547 //			STORE	TBTServiceSecurity1	
       
   548 //			STORE_ACTIVE_SCHEDULER
       
   549 //	END_TEST_BLOCK
       
   550 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0309-0001
       
   551 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0309-0001
       
   552 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0309-0002
       
   553 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   554 			SHARED_ACTIVE_SCHEDULER
       
   555 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   556 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   557 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   558 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   559 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   560 			COMMAND		TBTSearchpattern1	NewL
       
   561 			COMMAND		TBTSearchpattern1	ConstructL
       
   562 			COMMAND		TBTSearchpattern1	AddL		BTSDP-Agent-PublicApi-Active-0309-0001command4AddL
       
   563 			COMMAND		TBTSdpagent	NewLC		BTSDP-Agent-PublicApi-Active-0309-0001command6NewLC
       
   564 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-Agent-PublicApi-Active-0309-0001command7SetRecordFilterL
       
   565 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-Agent-PublicApi-Active-0309-0001command8AttributeRequestL
       
   566 			OUTSTANDING	1000000
       
   567 			STORE	CBluetoothSocket1	
       
   568 			STORE	TBTServiceSecurity1	
       
   569 			STORE	TBTDevAddrRemote	
       
   570 			STORE_ACTIVE_SCHEDULER
       
   571 	END_TEST_BLOCK
       
   572 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0309-0002
       
   573 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0309-0003
       
   574 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0309-0003
       
   575 END_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0309
       
   576 DELAY		2000
       
   577 START_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0310
       
   578 //! @SYMTestCaseID				BTSDP-Agent-PublicApi-Active-Slave-0310
       
   579 //! @SYMAPI						CSdpAgent
       
   580 //! @SYMTestCaseDesc			Uses API elements: MSAN_ExtensionInterfaceL() of interface class MSdpAgentNotifier.
       
   581 //!								The function is implemented in the wrapper class of CSdpAgent.
       
   582 //! @SYMTestActions				1. Calls MSAN_ExtensionInterfaceL. Verify the resulting err code is KErrNone.
       
   583 //! @SYMTestStatus				Implemented
       
   584 //! @SYMTestPriority			Low
       
   585 //! @SYMTestExpectedResults		Function is executed without error
       
   586 //! @SYMTestType				CIT
       
   587 
       
   588 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0310-0001
       
   589 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0310-0001
       
   590 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0310-0002
       
   591 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   592 			SHARED_ACTIVE_SCHEDULER
       
   593 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   594 			COMMAND		TBTSdpagent	MSAN_ExtensionInterfaceL
       
   595 			STORE_ACTIVE_SCHEDULER
       
   596 	END_TEST_BLOCK
       
   597 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0310-0002
       
   598 	START_SYNCHRONISED_TESTCASE 	BTSDP-Agent-PublicApi-Active-0310-0003
       
   599 	END_SYNCHRONISED_TESTCASE	BTSDP-Agent-PublicApi-Active-0310-0003
       
   600 END_TESTCASE	BTSDP-Agent-PublicApi-Active-Slave-0310
       
   601 DELAY		2000
       
   602 
       
   603 START_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0001
       
   604 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValBool-Active-Slave-0001
       
   605 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
   606 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   607 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
   608 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   609 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   610 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   611 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   612 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   613 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
   614 //!								2. Add some attribute ids into the idmatchlist
       
   615 //!								3. Construct a CSdpSearchPattern object
       
   616 //!								4. Add service UUID into searchpattern
       
   617 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
   618 //!								   Verify the resulting err code is KErrNone.
       
   619 //!								6. Set the service record filter with the serchpattern
       
   620 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
   621 //!								   Verify the resulting err code is KErrNone.
       
   622 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   623 //!								   Verify the number of service records being found.
       
   624 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
   625 //!								   Verify the resulting err code is KErrNone.
       
   626 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   627 //!									the result of attribute request comes back in the form of a list. 
       
   628 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   629 //!									Verify the resulting err code is KErrNone.
       
   630 //!								12. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   631 //!								13. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   632 //!
       
   633 //! @SYMTestStatus				Implemented
       
   634 //! @SYMTestPriority			Critical
       
   635 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   636 //! @SYMTestType				CIT
       
   637 
       
   638 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0001-0001
       
   639 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0001-0001
       
   640 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0001-0002
       
   641 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   642 			SHARED_ACTIVE_SCHEDULER
       
   643 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   644 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   645 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   646 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   647 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
   648 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   649 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   650 			COMMAND		TBTAttridmatchlist1	NewL
       
   651 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValBool-Active-0001-0001command3AddL
       
   652 			COMMAND		TBTSearchpattern1	NewL
       
   653 			COMMAND		TBTSearchpattern1	ConstructL
       
   654 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValBool-Active-0001-0001command7AddL
       
   655 			COMMAND		TBTAttrValueDES1	NewDESL
       
   656 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValBool-Active-0001-0001command11NewLC
       
   657 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValBool-Active-0001-0001command12SetRecordFilterL
       
   658 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   659 			OUTSTANDING	1000000
       
   660 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValBool-Active-0001-0001command15AttributeRequestL
       
   661 			OUTSTANDING	1000000
       
   662 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValBool-Active-0001-0001command18AppendValueL
       
   663 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValBool-Active-0001-0001command19AcceptVisitorL
       
   664 			STORE	CBluetoothSocket1	
       
   665 			STORE	TBTServiceSecurity1	
       
   666 			STORE	TBTDevAddrRemote	
       
   667 			STORE_ACTIVE_SCHEDULER
       
   668 	END_TEST_BLOCK
       
   669 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0001-0002
       
   670 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0001-0003
       
   671 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0001-0003
       
   672 END_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0001
       
   673 DELAY		2000
       
   674 
       
   675 START_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0002
       
   676 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValBool-Active-Slave-0002
       
   677 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
   678 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   679 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
   680 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   681 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   682 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   683 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   684 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   685 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
   686 //!								2. Add some attribute ids into the idmatchlist
       
   687 //!								3. Construct a CSdpSearchPattern object
       
   688 //!								4. Add service UUID into searchpattern
       
   689 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
   690 //!								   Verify the resulting err code is KErrNone.
       
   691 //!								6. Set the service record filter with the serchpattern
       
   692 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
   693 //!								   Verify the resulting err code is KErrNone.
       
   694 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   695 //!								   Verify the number of service records being found.
       
   696 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
   697 //!								   Verify the resulting err code is KErrNone.
       
   698 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   699 //!									the result of attribute request comes back in the form of a list. 
       
   700 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   701 //!									Verify the resulting err code is KErrNone.
       
   702 //!								12. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   703 //!								13. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   704 //!
       
   705 //! @SYMTestStatus				Implemented
       
   706 //! @SYMTestPriority			Critical
       
   707 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   708 //! @SYMTestType				CIT
       
   709 
       
   710 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0002-0001
       
   711 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0002-0001
       
   712 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0002-0002
       
   713 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   714 			SHARED_ACTIVE_SCHEDULER
       
   715 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   716 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   717 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   718 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   719 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
   720 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   721 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   722 			COMMAND		TBTAttridmatchlist1	NewL
       
   723 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValBool-Active-0002-0001command3AddL
       
   724 			COMMAND		TBTSearchpattern1	NewL
       
   725 			COMMAND		TBTSearchpattern1	ConstructL
       
   726 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValBool-Active-0002-0001command7AddL
       
   727 			COMMAND		TBTAttrValueDES1	NewDESL
       
   728 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValBool-Active-0002-0001command11NewLC
       
   729 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValBool-Active-0002-0001command12SetRecordFilterL
       
   730 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   731 			OUTSTANDING	1000000
       
   732 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValBool-Active-0002-0001command15AttributeRequestL
       
   733 			OUTSTANDING	1000000
       
   734 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValBool-Active-0002-0001command18AppendValueL
       
   735 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValBool-Active-0002-0001command19AcceptVisitorL
       
   736 			STORE	CBluetoothSocket1	
       
   737 			STORE	TBTServiceSecurity1	
       
   738 			STORE	TBTDevAddrRemote	
       
   739 			STORE_ACTIVE_SCHEDULER
       
   740 	END_TEST_BLOCK
       
   741 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0002-0002
       
   742 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0002-0003
       
   743 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0002-0003
       
   744 END_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0002
       
   745 DELAY		2000
       
   746 
       
   747 START_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0003
       
   748 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValBool-Active-Slave-0003
       
   749 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
   750 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   751 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
   752 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   753 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   754 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   755 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   756 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   757 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
   758 //!								2. Add some attribute ids into the idmatchlist
       
   759 //!								3. Construct a CSdpSearchPattern object
       
   760 //!								4. Add service UUID into searchpattern
       
   761 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
   762 //!								   Verify the resulting err code is KErrNone.
       
   763 //!								6. Set the service record filter with the serchpattern
       
   764 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
   765 //!								   Verify the resulting err code is KErrNone.
       
   766 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   767 //!								   Verify the number of service records being found.
       
   768 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
   769 //!								   Verify the resulting err code is KErrNone.
       
   770 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   771 //!									the result of attribute request comes back in the form of a list. 
       
   772 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   773 //!									Verify the resulting err code is KErrNone.
       
   774 //!								12. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   775 //!								13. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   776 //!
       
   777 //! @SYMTestStatus				Implemented
       
   778 //! @SYMTestPriority			Critical
       
   779 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   780 //! @SYMTestType				CIT
       
   781 
       
   782 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0003-0001
       
   783 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0003-0001
       
   784 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0003-0002
       
   785 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   786 			SHARED_ACTIVE_SCHEDULER
       
   787 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   788 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   789 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   790 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   791 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
   792 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   793 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   794 			COMMAND		TBTAttridmatchlist1	NewL
       
   795 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValBool-Active-0003-0001command3AddL
       
   796 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValBool-Active-0003-0001command4AddL
       
   797 			COMMAND		TBTSearchpattern1	NewL
       
   798 			COMMAND		TBTSearchpattern1	ConstructL
       
   799 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValBool-Active-0003-0001command8AddL
       
   800 			COMMAND		TBTAttrValueDES1	NewDESL
       
   801 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValBool-Active-0003-0001command12NewLC
       
   802 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValBool-Active-0003-0001command13SetRecordFilterL
       
   803 			COMMAND		TBTSdpagent	NextRecordRequestL		BTSDP-PublicApi-AttrValBool-Active-0003-0001command14NextRecordRequestL
       
   804 			OUTSTANDING	1000000
       
   805 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValBool-Active-0003-0001command16AttributeRequestL
       
   806 			OUTSTANDING	1000000
       
   807 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValBool-Active-0003-0001command19AppendValueL
       
   808 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValBool-Active-0003-0001command20AcceptVisitorL
       
   809 			STORE	CBluetoothSocket1	
       
   810 			STORE	TBTServiceSecurity1	
       
   811 			STORE	TBTDevAddrRemote	
       
   812 			STORE_ACTIVE_SCHEDULER
       
   813 	END_TEST_BLOCK
       
   814 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0003-0002
       
   815 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0003-0003
       
   816 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0003-0003
       
   817 END_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0003
       
   818 
       
   819 DELAY		2000
       
   820 START_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0004
       
   821 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValBool-Active-Slave-0004
       
   822 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
   823 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   824 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
   825 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   826 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   827 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   828 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   829 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   830 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
   831 //!								2. Add some attribute ids into the idmatchlist
       
   832 //!								3. Construct a CSdpSearchPattern object
       
   833 //!								4. Add service UUID into searchpattern
       
   834 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
   835 //!								   Verify the resulting err code is KErrNone.
       
   836 //!								6. Set the service record filter with the serchpattern
       
   837 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
   838 //!								   Verify the resulting err code is KErrNone.
       
   839 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   840 //!								   Verify the number of service records being found.
       
   841 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
   842 //!								   Verify the resulting err code is KErrNone.
       
   843 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   844 //!									the result of attribute request comes back in the form of a list. 
       
   845 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   846 //!									Verify the resulting err code is KErrNone.
       
   847 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
   848 //!								13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   849 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   850 //!
       
   851 //! @SYMTestStatus				Implemented
       
   852 //! @SYMTestPriority			Critical
       
   853 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   854 //! @SYMTestType				CIT
       
   855 
       
   856 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0004-0001
       
   857 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0004-0001
       
   858 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0004-0002
       
   859 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   860 			SHARED_ACTIVE_SCHEDULER
       
   861 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   862 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   863 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   864 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   865 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
   866 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   867 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   868 			COMMAND		TBTAttridmatchlist1	NewL
       
   869 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValBool-Active-0004-0001command3AddL
       
   870 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValBool-Active-0004-0001command4AddL
       
   871 			COMMAND		TBTSearchpattern1	NewL
       
   872 			COMMAND		TBTSearchpattern1	ConstructL
       
   873 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValBool-Active-0004-0001command8AddL
       
   874 			COMMAND		TBTAttrValueDES1	NewDESL
       
   875 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValBool-Active-0004-0001command12NewLC
       
   876 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValBool-Active-0004-0001command13SetRecordFilterL
       
   877 			COMMAND		TBTSdpagent	NextRecordRequestL		BTSDP-PublicApi-AttrValBool-Active-0004-0001command14NextRecordRequestL
       
   878 			OUTSTANDING	1000000
       
   879 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValBool-Active-0004-0001command16AttributeRequestL
       
   880 			OUTSTANDING	1000000
       
   881 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValBool-Active-0004-0001command19AppendValueL
       
   882 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrValBool-Active-0004-0001command20DataSize
       
   883 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValBool-Active-0004-0001command21AcceptVisitorL
       
   884 			STORE	CBluetoothSocket1	
       
   885 			STORE	TBTServiceSecurity1	
       
   886 			STORE	TBTDevAddrRemote	
       
   887 			STORE_ACTIVE_SCHEDULER
       
   888 	END_TEST_BLOCK
       
   889 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0004-0002
       
   890 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0004-0003
       
   891 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0004-0003
       
   892 END_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0004
       
   893 DELAY		2000
       
   894 
       
   895 START_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0005
       
   896 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValBool-Active-Slave-0005
       
   897 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
   898 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   899 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
   900 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   901 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   902 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   903 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   904 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   905 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
   906 //!								2. Add some attribute ids into the idmatchlist
       
   907 //!								3. Construct a CSdpSearchPattern object
       
   908 //!								4. Add service UUID into searchpattern
       
   909 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
   910 //!								   Verify the resulting err code is KErrNone.
       
   911 //!								6. Set the service record filter with the serchpattern
       
   912 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
   913 //!								   Verify the resulting err code is KErrNone.
       
   914 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   915 //!								   Verify the number of service records being found.
       
   916 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
   917 //!								   Verify the resulting err code is KErrNone.
       
   918 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   919 //!									the result of attribute request comes back in the form of a list. 
       
   920 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   921 //!									Verify the resulting err code is KErrNone.
       
   922 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
   923 //!								13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   924 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   925 //!
       
   926 //! @SYMTestStatus				Implemented
       
   927 //! @SYMTestPriority			Critical
       
   928 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
   929 //! @SYMTestType				CIT
       
   930 
       
   931 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0005-0001
       
   932 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0005-0001
       
   933 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0005-0002
       
   934 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
   935 			SHARED_ACTIVE_SCHEDULER
       
   936 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
   937 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
   938 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
   939 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
   940 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
   941 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
   942 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
   943 			COMMAND		TBTAttridmatchlist1	NewL
       
   944 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValBool-Active-0005-0001command3AddL
       
   945 			COMMAND		TBTSearchpattern1	NewL
       
   946 			COMMAND		TBTSearchpattern1	ConstructL
       
   947 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValBool-Active-0005-0001command7AddL
       
   948 			COMMAND		TBTAttrValueDES1	NewDESL
       
   949 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValBool-Active-0005-0001command11NewLC
       
   950 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValBool-Active-0005-0001command12SetRecordFilterL
       
   951 			COMMAND		TBTSdpagent	NextRecordRequestL
       
   952 			OUTSTANDING	1000000
       
   953 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValBool-Active-0005-0001command15AttributeRequestL
       
   954 			OUTSTANDING	1000000
       
   955 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValBool-Active-0005-0001command18AppendValueL
       
   956 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrValBool-Active-0005-0001command19DataSize
       
   957 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValBool-Active-0005-0001command20AcceptVisitorL
       
   958 			STORE	CBluetoothSocket1	
       
   959 			STORE	TBTServiceSecurity1	
       
   960 			STORE	TBTDevAddrRemote	
       
   961 			STORE_ACTIVE_SCHEDULER
       
   962 	END_TEST_BLOCK
       
   963 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0005-0002
       
   964 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValBool-Passive-0005-0003
       
   965 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValBool-Passive-0005-0003
       
   966 END_TESTCASE	BTSDP-PublicApi-AttrValBool-Active-Slave-0005
       
   967 DELAY		2000
       
   968 
       
   969 START_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0101
       
   970 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValNil-Active-Slave-0101
       
   971 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
   972 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
   973 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
   974 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
   975 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
   976 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
   977 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
   978 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
   979 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
   980 //!								2. Add some attribute ids into the idmatchlist
       
   981 //!								3. Construct a CSdpSearchPattern object
       
   982 //!								4. Add service UUID into searchpattern
       
   983 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
   984 //!								   Verify the resulting err code is KErrNone.
       
   985 //!								6. Set the service record filter with the serchpattern
       
   986 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
   987 //!								   Verify the resulting err code is KErrNone.
       
   988 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
   989 //!								   Verify the number of service records being found.
       
   990 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
   991 //!								   Verify the resulting err code is KErrNone.
       
   992 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
   993 //!									the result of attribute request comes back in the form of a list. 
       
   994 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
   995 //!									Verify the resulting err code is KErrNone.
       
   996 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
   997 //!								13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
   998 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
   999 //!
       
  1000 //! @SYMTestStatus				Implemented
       
  1001 //! @SYMTestPriority			Critical
       
  1002 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
  1003 //! @SYMTestType				CIT
       
  1004 
       
  1005 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0101-0001
       
  1006 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0101-0001
       
  1007 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0101-0002
       
  1008 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1009 			SHARED_ACTIVE_SCHEDULER
       
  1010 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1011 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1012 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1013 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1014 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1015 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1016 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1017 			COMMAND		TBTAttridmatchlist1	NewL
       
  1018 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0101-0001command3AddL
       
  1019 			COMMAND		TBTSearchpattern1	NewL
       
  1020 			COMMAND		TBTSearchpattern1	ConstructL
       
  1021 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValNil-Active-0101-0001command7AddL
       
  1022 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1023 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValNil-Active-0101-0001command11NewLC
       
  1024 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValNil-Active-0101-0001command12SetRecordFilterL
       
  1025 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1026 			OUTSTANDING	1000000
       
  1027 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValNil-Active-0101-0001command15AttributeRequestL
       
  1028 			OUTSTANDING	1000000
       
  1029 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValNil-Active-0101-0001command18AppendValueL
       
  1030 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrValNil-Active-0101-0001command19DataSize
       
  1031 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValNil-Active-0101-0001command20AcceptVisitorL
       
  1032 			STORE	CBluetoothSocket1	
       
  1033 			STORE	TBTServiceSecurity1	
       
  1034 			STORE	TBTDevAddrRemote	
       
  1035 			STORE_ACTIVE_SCHEDULER
       
  1036 	END_TEST_BLOCK
       
  1037 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0101-0002
       
  1038 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0101-0003
       
  1039 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0101-0003
       
  1040 END_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0101
       
  1041 
       
  1042 DELAY		2000
       
  1043 START_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0102
       
  1044 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValNil-Active-Slave-0102
       
  1045 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
  1046 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1047 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
  1048 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1049 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1050 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
  1051 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1052 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1053 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1054 //!								2. Add some attribute ids into the idmatchlist
       
  1055 //!								3. Construct a CSdpSearchPattern object
       
  1056 //!								4. Add service UUID into searchpattern
       
  1057 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
  1058 //!								   Verify the resulting err code is KErrNone.
       
  1059 //!								6. Set the service record filter with the serchpattern
       
  1060 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
  1061 //!								   Verify the resulting err code is KErrNone.
       
  1062 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1063 //!								   Verify the number of service records being found.
       
  1064 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
  1065 //!								   Verify the resulting err code is KErrNone.
       
  1066 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
  1067 //!									the result of attribute request comes back in the form of a list. 
       
  1068 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
  1069 //!									Verify the resulting err code is KErrNone.
       
  1070 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1071 //!								13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
  1072 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1073 //!
       
  1074 //! @SYMTestStatus				Implemented
       
  1075 //! @SYMTestPriority			Critical
       
  1076 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
  1077 //! @SYMTestType				CIT
       
  1078 
       
  1079 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0102-0001
       
  1080 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0102-0001
       
  1081 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0102-0002
       
  1082 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1083 			SHARED_ACTIVE_SCHEDULER
       
  1084 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1085 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1086 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1087 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1088 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1089 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1090 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1091 			COMMAND		TBTAttridmatchlist1	NewL
       
  1092 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0102-0001command3AddL
       
  1093 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0102-0001command4AddL
       
  1094 			COMMAND		TBTSearchpattern1	NewL
       
  1095 			COMMAND		TBTSearchpattern1	ConstructL
       
  1096 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValNil-Active-0102-0001command8AddL
       
  1097 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1098 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValNil-Active-0102-0001command12NewLC
       
  1099 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValNil-Active-0102-0001command13SetRecordFilterL
       
  1100 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1101 			OUTSTANDING	1000000
       
  1102 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValNil-Active-0102-0001command16AttributeRequestL
       
  1103 			OUTSTANDING	1000000
       
  1104 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrValNil-Active-0102-0001command19DataSize
       
  1105 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValNil-Active-0102-0001command20AcceptVisitorL
       
  1106 			STORE	CBluetoothSocket1	
       
  1107 			STORE	TBTServiceSecurity1	
       
  1108 			STORE	TBTDevAddrRemote	
       
  1109 			STORE_ACTIVE_SCHEDULER
       
  1110 	END_TEST_BLOCK
       
  1111 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0102-0002
       
  1112 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0102-0003
       
  1113 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0102-0003
       
  1114 END_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0102
       
  1115 DELAY		2000
       
  1116 
       
  1117 START_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0103
       
  1118 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValNil-Active-Slave-0103
       
  1119 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
  1120 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1121 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
  1122 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1123 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1124 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
  1125 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1126 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1127 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1128 //!								2. Add some attribute ids into the idmatchlist
       
  1129 //!								3. Construct a CSdpSearchPattern object
       
  1130 //!								4. Add service UUID into searchpattern
       
  1131 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
  1132 //!								   Verify the resulting err code is KErrNone.
       
  1133 //!								6. Set the service record filter with the serchpattern
       
  1134 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
  1135 //!								   Verify the resulting err code is KErrNone.
       
  1136 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1137 //!								   Verify the number of service records being found.
       
  1138 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
  1139 //!								   Verify the resulting err code is KErrNone.
       
  1140 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
  1141 //!									the result of attribute request comes back in the form of a list. 
       
  1142 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
  1143 //!									Verify the resulting err code is KErrNone.
       
  1144 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1145 //!								13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
  1146 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1147 //!
       
  1148 //! @SYMTestStatus				Implemented
       
  1149 //! @SYMTestPriority			Critical
       
  1150 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
  1151 //! @SYMTestType				CIT
       
  1152 
       
  1153 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0103-0001
       
  1154 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0103-0001
       
  1155 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0103-0002
       
  1156 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1157 			SHARED_ACTIVE_SCHEDULER
       
  1158 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1159 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1160 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1161 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1162 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1163 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1164 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1165 			COMMAND		TBTAttridmatchlist1	NewL
       
  1166 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0103-0001command3AddL
       
  1167 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0103-0001command4AddL
       
  1168 			COMMAND		TBTSearchpattern1	NewL
       
  1169 			COMMAND		TBTSearchpattern1	ConstructL
       
  1170 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValNil-Active-0103-0001command8AddL
       
  1171 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1172 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValNil-Active-0103-0001command12NewLC
       
  1173 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValNil-Active-0103-0001command13SetRecordFilterL
       
  1174 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1175 			OUTSTANDING	1000000
       
  1176 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValNil-Active-0103-0001command16AttributeRequestL
       
  1177 			OUTSTANDING	1000000
       
  1178 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValNil-Active-0103-0001command19AppendValueL
       
  1179 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrValNil-Active-0103-0001command20DataSize
       
  1180 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValNil-Active-0103-0001command21AcceptVisitorL
       
  1181 			STORE	CBluetoothSocket1	
       
  1182 			STORE	TBTServiceSecurity1	
       
  1183 			STORE	TBTDevAddrRemote	
       
  1184 			STORE_ACTIVE_SCHEDULER
       
  1185 	END_TEST_BLOCK
       
  1186 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0103-0002
       
  1187 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0103-0003
       
  1188 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0103-0003
       
  1189 END_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0103
       
  1190 
       
  1191 DELAY		2000
       
  1192 START_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0104
       
  1193 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValNil-Active-Slave-0104
       
  1194 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
  1195 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1196 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
  1197 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1198 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1199 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
  1200 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1201 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1202 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1203 //!								2. Add some attribute ids into the idmatchlist
       
  1204 //!								3. Construct a CSdpSearchPattern object
       
  1205 //!								4. Add service UUID into searchpattern
       
  1206 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
  1207 //!								   Verify the resulting err code is KErrNone.
       
  1208 //!								6. Set the service record filter with the serchpattern
       
  1209 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
  1210 //!								   Verify the resulting err code is KErrNone.
       
  1211 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1212 //!								   Verify the number of service records being found.
       
  1213 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
  1214 //!								   Verify the resulting err code is KErrNone.
       
  1215 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
  1216 //!									the result of attribute request comes back in the form of a list. 
       
  1217 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
  1218 //!									Verify the resulting err code is KErrNone.
       
  1219 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1220 //!								13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
  1221 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1222 //!
       
  1223 //! @SYMTestStatus				Implemented
       
  1224 //! @SYMTestPriority			Critical
       
  1225 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
  1226 //! @SYMTestType				CIT
       
  1227 
       
  1228 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0104-0001
       
  1229 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0104-0001
       
  1230 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0104-0002
       
  1231 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1232 			SHARED_ACTIVE_SCHEDULER
       
  1233 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1234 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1235 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1236 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1237 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1238 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1239 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1240 			COMMAND		TBTAttridmatchlist1	NewL
       
  1241 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0104-0001command3AddL
       
  1242 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0104-0001command4AddL
       
  1243 			COMMAND		TBTSearchpattern1	NewL
       
  1244 			COMMAND		TBTSearchpattern1	ConstructL
       
  1245 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValNil-Active-0104-0001command8AddL
       
  1246 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1247 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValNil-Active-0104-0001command12NewLC
       
  1248 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValNil-Active-0104-0001command13SetRecordFilterL
       
  1249 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1250 			OUTSTANDING	1000000
       
  1251 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValNil-Active-0104-0001command16AttributeRequestL
       
  1252 			OUTSTANDING	1000000
       
  1253 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValNil-Active-0104-0001command19AppendValueL
       
  1254 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrValNil-Active-0104-0001command20DataSize
       
  1255 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValNil-Active-0104-0001command21AcceptVisitorL
       
  1256 			STORE	CBluetoothSocket1	
       
  1257 			STORE	TBTServiceSecurity1	
       
  1258 			STORE	TBTDevAddrRemote	
       
  1259 			STORE_ACTIVE_SCHEDULER
       
  1260 	END_TEST_BLOCK
       
  1261 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0104-0002
       
  1262 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0104-0003
       
  1263 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0104-0003
       
  1264 END_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0104
       
  1265 
       
  1266 DELAY		2000
       
  1267 START_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0105
       
  1268 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValNil-Active-Slave-0105
       
  1269 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
  1270 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1271 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
  1272 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1273 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1274 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
  1275 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1276 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1277 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1278 //!								2. Add some attribute ids into the idmatchlist
       
  1279 //!								3. Construct a CSdpSearchPattern object
       
  1280 //!								4. Add service UUID into searchpattern
       
  1281 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
  1282 //!								   Verify the resulting err code is KErrNone.
       
  1283 //!								6. Set the service record filter with the serchpattern
       
  1284 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
  1285 //!								   Verify the resulting err code is KErrNone.
       
  1286 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1287 //!								   Verify the number of service records being found.
       
  1288 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
  1289 //!								   Verify the resulting err code is KErrNone.
       
  1290 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
  1291 //!									the result of attribute request comes back in the form of a list. 
       
  1292 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
  1293 //!									Verify the resulting err code is KErrNone.
       
  1294 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1295 //!								13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
  1296 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1297 //!
       
  1298 //! @SYMTestStatus				Implemented
       
  1299 //! @SYMTestPriority			Critical
       
  1300 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
  1301 //! @SYMTestType				CIT
       
  1302 
       
  1303 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0105-0001
       
  1304 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0105-0001
       
  1305 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0105-0002
       
  1306 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1307 			SHARED_ACTIVE_SCHEDULER
       
  1308 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1309 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1310 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1311 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1312 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1313 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1314 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1315 			COMMAND		TBTAttridmatchlist1	NewL
       
  1316 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0105-0001command3AddL
       
  1317 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0105-0001command4AddL
       
  1318 			COMMAND		TBTSearchpattern1	NewL
       
  1319 			COMMAND		TBTSearchpattern1	ConstructL
       
  1320 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValNil-Active-0105-0001command8AddL
       
  1321 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1322 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValNil-Active-0105-0001command12NewLC
       
  1323 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValNil-Active-0105-0001command13SetRecordFilterL
       
  1324 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1325 			OUTSTANDING	1000000
       
  1326 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValNil-Active-0105-0001command16AttributeRequestL
       
  1327 			OUTSTANDING	1000000
       
  1328 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValNil-Active-0105-0001command19AppendValueL
       
  1329 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrValNil-Active-0105-0001command20DataSize
       
  1330 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValNil-Active-0105-0001command21AcceptVisitorL
       
  1331 			STORE	CBluetoothSocket1	
       
  1332 			STORE	TBTServiceSecurity1	
       
  1333 			STORE	TBTDevAddrRemote	
       
  1334 			STORE_ACTIVE_SCHEDULER
       
  1335 	END_TEST_BLOCK
       
  1336 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0105-0002
       
  1337 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0105-0003
       
  1338 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0105-0003
       
  1339 END_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0105
       
  1340 DELAY		2000
       
  1341 
       
  1342 START_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0106
       
  1343 //! @SYMTestCaseID				BTSDP-PublicApi-AttrValNil-Active-Slave-0106
       
  1344 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, MSdpAttributeValueVisitor, MSdpAgentNotifier, CSdpAttrValueDES 
       
  1345 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1346 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
  1347 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1348 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1349 //!													NewDESL(), AppendValueL(), AcceptVisitorL() from CSdpAttrValueDES
       
  1350 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1351 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1352 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1353 //!								2. Add some attribute ids into the idmatchlist
       
  1354 //!								3. Construct a CSdpSearchPattern object
       
  1355 //!								4. Add service UUID into searchpattern
       
  1356 //!								5. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object.
       
  1357 //!								   Verify the resulting err code is KErrNone.
       
  1358 //!								6. Set the service record filter with the serchpattern
       
  1359 //!								7. Call NextRecordRequestL() to get service record of slave device which matches the search pattern.
       
  1360 //!								   Verify the resulting err code is KErrNone.
       
  1361 //!								8. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1362 //!								   Verify the number of service records being found.
       
  1363 //!								9. Search for service attributes of the service we've found using the attridmatchlist.
       
  1364 //!								   Verify the resulting err code is KErrNone.
       
  1365 //!								10. The call back functions AttributeRequestComplete() and AttributeRequestResult() are executed when 
       
  1366 //!									the result of attribute request comes back in the form of a list. 
       
  1367 //!								11. Switch to CSdpAttrValueDES data wrapper. Append the request results of CSdpAgent onto CSdpAttrValueDES object.
       
  1368 //!									Verify the resulting err code is KErrNone.
       
  1369 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1370 //!								13. Call CSdpAttrValueDES::AcceptVisitorL to retrieve the data. Verify the resulting err code is KErrNone.
       
  1371 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1372 //!
       
  1373 //! @SYMTestStatus				Implemented
       
  1374 //! @SYMTestPriority			Critical
       
  1375 //! @SYMTestExpectedResults		Attribute values are retrieved from slave device and the result is as expected.
       
  1376 //! @SYMTestType				CIT
       
  1377 
       
  1378 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0106-0001
       
  1379 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0106-0001
       
  1380 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0106-0002
       
  1381 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1382 			SHARED_ACTIVE_SCHEDULER
       
  1383 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1384 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1385 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1386 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1387 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1388 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1389 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1390 			COMMAND		TBTAttridmatchlist1	NewL
       
  1391 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0106-0001command3AddL
       
  1392 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrValNil-Active-0106-0001command4AddL
       
  1393 			COMMAND		TBTSearchpattern1	NewL
       
  1394 			COMMAND		TBTSearchpattern1	ConstructL
       
  1395 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrValNil-Active-0106-0001command8AddL
       
  1396 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1397 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrValNil-Active-0106-0001command12NewLC
       
  1398 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrValNil-Active-0106-0001command13SetRecordFilterL
       
  1399 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1400 			OUTSTANDING	1000000
       
  1401 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrValNil-Active-0106-0001command16AttributeRequestL
       
  1402 			OUTSTANDING	1000000
       
  1403 			COMMAND		TBTAttrValueDES1	AppendValueL		BTSDP-PublicApi-AttrValNil-Active-0106-0001command19AppendValueL
       
  1404 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrValNil-Active-0106-0001command20DataSize
       
  1405 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrValNil-Active-0106-0001command21AcceptVisitorL
       
  1406 			STORE	CBluetoothSocket1	
       
  1407 			STORE	TBTServiceSecurity1	
       
  1408 			STORE	TBTDevAddrRemote	
       
  1409 			STORE_ACTIVE_SCHEDULER
       
  1410 	END_TEST_BLOCK
       
  1411 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0106-0002
       
  1412 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrValNil-Passive-0106-0003
       
  1413 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrValNil-Passive-0106-0003
       
  1414 END_TESTCASE	BTSDP-PublicApi-AttrValNil-Active-Slave-0106
       
  1415 
       
  1416 DELAY		2000
       
  1417 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0201
       
  1418 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0201
       
  1419 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  1420 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1421 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
  1422 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1423 //!													NewDESL() from CSdpAttrValueDES
       
  1424 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1425 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1426 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1427 //!													
       
  1428 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1429 //!								2. Add some attribute ids into the idmatchlist
       
  1430 //!								3. Construct a CSdpSearchPattern object
       
  1431 //!								4. Add service UUID into searchpattern
       
  1432 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  1433 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  1434 //!								   Verify the resulting err code is KErrNone.
       
  1435 //!								7. Set the service record filter with the serchpattern
       
  1436 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  1437 //!								   Verify the resulting err code is KErrNone.
       
  1438 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1439 //!								   Verify that the service record has been retrieved.
       
  1440 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  1441 //!									Verify the resulting err code is KErrNone.
       
  1442 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  1443 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  1444 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1445 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  1446 //!									Verify the resulting err code is KErrNone.
       
  1447 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1448 //!
       
  1449 //! @SYMTestStatus				Implemented
       
  1450 //! @SYMTestPriority			Critical
       
  1451 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  1452 //! @SYMTestType				CIT
       
  1453 
       
  1454 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0001
       
  1455 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0001
       
  1456 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0002
       
  1457 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1458 			SHARED_ACTIVE_SCHEDULER
       
  1459 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1460 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1461 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1462 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1463 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1464 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1465 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1466 			COMMAND		TBTAttridmatchlist1	NewL
       
  1467 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command3AddL
       
  1468 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command4AddL
       
  1469 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command5AddL
       
  1470 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command6AddL
       
  1471 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command7AddL
       
  1472 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command8AddL
       
  1473 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command9AddL
       
  1474 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command10AddL
       
  1475 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command11AddL
       
  1476 			COMMAND		TBTSearchpattern1	NewL
       
  1477 			COMMAND		TBTSearchpattern1	ConstructL
       
  1478 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command15AddL
       
  1479 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1480 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command19NewLC
       
  1481 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command20SetRecordFilterL
       
  1482 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1483 			OUTSTANDING	1000000
       
  1484 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command23AttributeRequestL
       
  1485 			OUTSTANDING	1000000
       
  1486 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command26DataSize
       
  1487 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0201-0001command27AcceptVisitorL
       
  1488 			STORE	CBluetoothSocket1	
       
  1489 			STORE	TBTServiceSecurity1	
       
  1490 			STORE	TBTDevAddrRemote	
       
  1491 			STORE_ACTIVE_SCHEDULER
       
  1492 	END_TEST_BLOCK
       
  1493 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0002
       
  1494 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0003
       
  1495 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0201-0003
       
  1496 
       
  1497 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0201
       
  1498 DELAY		2000
       
  1499 
       
  1500 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0202
       
  1501 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0202
       
  1502 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  1503 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1504 //!								Uses API elements: 	NewL(), AddL() from CSdpAttrIdMatchList
       
  1505 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1506 //!													NewDESL() from CSdpAttrValueDES
       
  1507 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1508 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1509 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1510 //!													
       
  1511 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1512 //!								2. Add some attribute ids into the idmatchlist
       
  1513 //!								3. Construct a CSdpSearchPattern object
       
  1514 //!								4. Add service UUID into searchpattern
       
  1515 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  1516 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  1517 //!								   Verify the resulting err code is KErrNone.
       
  1518 //!								7. Set the service record filter with the serchpattern
       
  1519 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  1520 //!								   Verify the resulting err code is KErrNone.
       
  1521 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1522 //!								   Verify that the service record has been retrieved.
       
  1523 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  1524 //!									Verify the resulting err code is KErrNone.
       
  1525 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  1526 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  1527 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1528 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  1529 //!									Verify the resulting err code is KErrNone.
       
  1530 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1531 //!
       
  1532 //! @SYMTestStatus				Implemented
       
  1533 //! @SYMTestPriority			Critical
       
  1534 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  1535 //! @SYMTestType				CIT
       
  1536 
       
  1537 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0001
       
  1538 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0001
       
  1539 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0002
       
  1540 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1541 			SHARED_ACTIVE_SCHEDULER
       
  1542 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1543 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1544 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1545 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1546 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1547 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1548 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1549 			COMMAND		TBTAttridmatchlist1	NewL
       
  1550 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command3AddL
       
  1551 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command4AddL
       
  1552 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command5AddL
       
  1553 			COMMAND		TBTSearchpattern1	NewL
       
  1554 			COMMAND		TBTSearchpattern1	ConstructL
       
  1555 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command9AddL
       
  1556 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1557 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command13NewLC
       
  1558 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command14SetRecordFilterL
       
  1559 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1560 			OUTSTANDING	1000000
       
  1561 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command17AttributeRequestL
       
  1562 			OUTSTANDING	1000000
       
  1563 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command20DataSize
       
  1564 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0202-0001command21AcceptVisitorL
       
  1565 			STORE	CBluetoothSocket1	
       
  1566 			STORE	TBTServiceSecurity1	
       
  1567 			STORE	TBTDevAddrRemote	
       
  1568 			STORE_ACTIVE_SCHEDULER
       
  1569 	END_TEST_BLOCK
       
  1570 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0002
       
  1571 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0003
       
  1572 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0202-0003
       
  1573 
       
  1574 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0202
       
  1575 DELAY		2000
       
  1576 
       
  1577 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0203
       
  1578 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0203
       
  1579 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  1580 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1581 //!								Uses API elements: 	NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
       
  1582 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1583 //!													NewDESL() from CSdpAttrValueDES
       
  1584 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1585 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1586 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1587 //!													
       
  1588 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1589 //!								2. Add/Remove some attribute ids to/from the idmatchlist
       
  1590 //!								3. Construct a CSdpSearchPattern object
       
  1591 //!								4. Add service UUID into searchpattern
       
  1592 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  1593 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  1594 //!								   Verify the resulting err code is KErrNone.
       
  1595 //!								7. Set the service record filter with the serchpattern
       
  1596 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  1597 //!								   Verify the resulting err code is KErrNone.
       
  1598 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1599 //!								   Verify that the service record has been retrieved.
       
  1600 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  1601 //!									Verify the resulting err code is KErrNone.
       
  1602 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  1603 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  1604 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1605 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  1606 //!									Verify the resulting err code is KErrNone.
       
  1607 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1608 //!
       
  1609 //! @SYMTestStatus				Implemented
       
  1610 //! @SYMTestPriority			Critical
       
  1611 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  1612 //! @SYMTestType				CIT
       
  1613 
       
  1614 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0001
       
  1615 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0001
       
  1616 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0002
       
  1617 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1618 			SHARED_ACTIVE_SCHEDULER
       
  1619 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1620 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1621 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1622 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1623 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1624 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1625 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1626 			COMMAND		TBTAttridmatchlist1	NewL
       
  1627 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command3AddL
       
  1628 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command4RemoveL
       
  1629 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command5RemoveL
       
  1630 			COMMAND		TBTSearchpattern1	NewL
       
  1631 			COMMAND		TBTSearchpattern1	ConstructL
       
  1632 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command9AddL
       
  1633 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1634 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command13NewLC
       
  1635 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command14SetRecordFilterL
       
  1636 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1637 			OUTSTANDING	1000000
       
  1638 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command17AttributeRequestL
       
  1639 			OUTSTANDING	1000000
       
  1640 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command20DataSize
       
  1641 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0203-0001command21AcceptVisitorL
       
  1642 			STORE	CBluetoothSocket1	
       
  1643 			STORE	TBTServiceSecurity1	
       
  1644 			STORE	TBTDevAddrRemote	
       
  1645 			STORE_ACTIVE_SCHEDULER
       
  1646 	END_TEST_BLOCK
       
  1647 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0002
       
  1648 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0003
       
  1649 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0203-0003
       
  1650 
       
  1651 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0203
       
  1652 
       
  1653 DELAY		2000
       
  1654 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0204
       
  1655 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0204
       
  1656 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  1657 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1658 //!								Uses API elements: 	NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
       
  1659 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1660 //!													NewDESL() from CSdpAttrValueDES
       
  1661 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1662 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1663 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1664 //!													
       
  1665 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1666 //!								2. Add/Remove some attribute ids to/from the idmatchlist
       
  1667 //!								3. Construct a CSdpSearchPattern object
       
  1668 //!								4. Add service UUID into searchpattern
       
  1669 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  1670 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  1671 //!								   Verify the resulting err code is KErrNone.
       
  1672 //!								7. Set the service record filter with the serchpattern
       
  1673 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  1674 //!								   Verify the resulting err code is KErrNone.
       
  1675 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1676 //!								   Verify that the service record has been retrieved.
       
  1677 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  1678 //!									Verify the resulting err code is KErrNone.
       
  1679 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  1680 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  1681 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1682 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  1683 //!									Verify the resulting err code is KErrNone.
       
  1684 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1685 //!
       
  1686 //! @SYMTestStatus				Implemented
       
  1687 //! @SYMTestPriority			Critical
       
  1688 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  1689 //! @SYMTestType				CIT
       
  1690 
       
  1691 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0001
       
  1692 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0001
       
  1693 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0002
       
  1694 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1695 			SHARED_ACTIVE_SCHEDULER
       
  1696 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1697 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1698 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1699 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1700 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1701 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1702 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1703 			COMMAND		TBTAttridmatchlist1	NewL
       
  1704 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command3AddL
       
  1705 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command4RemoveL
       
  1706 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command5RemoveL
       
  1707 			COMMAND		TBTSearchpattern1	NewL
       
  1708 			COMMAND		TBTSearchpattern1	ConstructL
       
  1709 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command9AddL
       
  1710 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1711 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command13NewLC
       
  1712 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command14SetRecordFilterL
       
  1713 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1714 			OUTSTANDING	1000000
       
  1715 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command17AttributeRequestL
       
  1716 			OUTSTANDING	1000000
       
  1717 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command20DataSize
       
  1718 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0204-0001command21AcceptVisitorL
       
  1719 			STORE	CBluetoothSocket1	
       
  1720 			STORE	TBTServiceSecurity1	
       
  1721 			STORE	TBTDevAddrRemote	
       
  1722 			STORE_ACTIVE_SCHEDULER
       
  1723 	END_TEST_BLOCK
       
  1724 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0002
       
  1725 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0003
       
  1726 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0204-0003
       
  1727 
       
  1728 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0204
       
  1729 DELAY		2000
       
  1730 
       
  1731 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0205
       
  1732 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0205
       
  1733 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  1734 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1735 //!								Uses API elements: 	NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
       
  1736 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1737 //!													NewDESL() from CSdpAttrValueDES
       
  1738 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1739 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1740 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1741 //!													
       
  1742 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1743 //!								2. Add/Remove some attribute ids to/from the idmatchlist
       
  1744 //!								3. Construct a CSdpSearchPattern object
       
  1745 //!								4. Add service UUID into searchpattern
       
  1746 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  1747 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  1748 //!								   Verify the resulting err code is KErrNone.
       
  1749 //!								7. Set the service record filter with the serchpattern
       
  1750 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  1751 //!								   Verify the resulting err code is KErrNone.
       
  1752 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1753 //!								   Verify that the service record has been retrieved.
       
  1754 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  1755 //!									Verify the resulting err code is KErrNone.
       
  1756 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  1757 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  1758 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1759 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  1760 //!									Verify the resulting err code is KErrNone.
       
  1761 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1762 //!
       
  1763 //! @SYMTestStatus				Implemented
       
  1764 //! @SYMTestPriority			Critical
       
  1765 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  1766 //! @SYMTestType				CIT
       
  1767 
       
  1768 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0001
       
  1769 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0001
       
  1770 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0002
       
  1771 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1772 			SHARED_ACTIVE_SCHEDULER
       
  1773 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1774 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1775 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1776 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1777 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1778 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1779 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1780 			COMMAND		TBTAttridmatchlist1	NewL
       
  1781 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command3AddL
       
  1782 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command4AddL
       
  1783 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command5AddL
       
  1784 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command6AddL
       
  1785 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command7AddL
       
  1786 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command8AddL
       
  1787 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command9AddL
       
  1788 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command10AddL
       
  1789 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command11AddL
       
  1790 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command12RemoveL
       
  1791 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command13RemoveL
       
  1792 			COMMAND		TBTSearchpattern1	NewL
       
  1793 			COMMAND		TBTSearchpattern1	ConstructL
       
  1794 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command17AddL
       
  1795 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1796 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command21NewLC
       
  1797 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command22SetRecordFilterL
       
  1798 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1799 			OUTSTANDING	1000000
       
  1800 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command25AttributeRequestL
       
  1801 			OUTSTANDING	1000000
       
  1802 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command28DataSize
       
  1803 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0205-0001command29AcceptVisitorL
       
  1804 			STORE	CBluetoothSocket1	
       
  1805 			STORE	TBTServiceSecurity1	
       
  1806 			STORE	TBTDevAddrRemote	
       
  1807 			STORE_ACTIVE_SCHEDULER
       
  1808 	END_TEST_BLOCK
       
  1809 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0002
       
  1810 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0003
       
  1811 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0205-0003
       
  1812 
       
  1813 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0205
       
  1814 DELAY		2000
       
  1815 
       
  1816 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0206
       
  1817 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0206
       
  1818 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  1819 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1820 //!								Uses API elements: 	NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
       
  1821 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1822 //!													NewDESL() from CSdpAttrValueDES
       
  1823 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1824 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1825 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1826 //!													
       
  1827 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1828 //!								2. Add/Remove some attribute ids to/from the idmatchlist
       
  1829 //!								3. Construct a CSdpSearchPattern object
       
  1830 //!								4. Add service UUID into searchpattern
       
  1831 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  1832 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  1833 //!								   Verify the resulting err code is KErrNone.
       
  1834 //!								7. Set the service record filter with the serchpattern
       
  1835 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  1836 //!								   Verify the resulting err code is KErrNone.
       
  1837 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1838 //!								   Verify that the service record has been retrieved.
       
  1839 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  1840 //!									Verify the resulting err code is KErrNone.
       
  1841 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  1842 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  1843 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1844 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  1845 //!									Verify the resulting err code is KErrNone.
       
  1846 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1847 //!
       
  1848 //! @SYMTestStatus				Implemented
       
  1849 //! @SYMTestPriority			Critical
       
  1850 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  1851 //! @SYMTestType				CIT
       
  1852 
       
  1853 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0001
       
  1854 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0001
       
  1855 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0002
       
  1856 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1857 			SHARED_ACTIVE_SCHEDULER
       
  1858 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1859 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1860 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1861 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1862 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1863 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1864 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1865 			COMMAND		TBTAttridmatchlist1	NewL
       
  1866 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command3AddL
       
  1867 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command4AddL
       
  1868 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command5AddL
       
  1869 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command6AddL
       
  1870 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command7AddL
       
  1871 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command8AddL
       
  1872 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command9AddL
       
  1873 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command10AddL
       
  1874 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command11AddL
       
  1875 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command12RemoveL
       
  1876 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command13RemoveL
       
  1877 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command14AddL
       
  1878 			COMMAND		TBTSearchpattern1	NewL
       
  1879 			COMMAND		TBTSearchpattern1	ConstructL
       
  1880 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command18AddL
       
  1881 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1882 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command22NewLC
       
  1883 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command23SetRecordFilterL
       
  1884 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1885 			OUTSTANDING	1000000
       
  1886 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command26AttributeRequestL
       
  1887 			OUTSTANDING	1000000
       
  1888 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command29DataSize
       
  1889 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0206-0001command30AcceptVisitorL
       
  1890 			STORE	CBluetoothSocket1	
       
  1891 			STORE	TBTServiceSecurity1	
       
  1892 			STORE	TBTDevAddrRemote	
       
  1893 			STORE_ACTIVE_SCHEDULER
       
  1894 	END_TEST_BLOCK
       
  1895 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0002
       
  1896 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0003
       
  1897 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0206-0003
       
  1898 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0206
       
  1899 
       
  1900 DELAY		2000
       
  1901 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0207
       
  1902 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0207
       
  1903 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  1904 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1905 //!								Uses API elements: 	NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
       
  1906 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1907 //!													NewDESL() from CSdpAttrValueDES
       
  1908 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1909 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1910 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1911 //!													
       
  1912 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1913 //!								2. Add/Remove some attribute ids to/from the idmatchlist
       
  1914 //!								3. Construct a CSdpSearchPattern object
       
  1915 //!								4. Add service UUID into searchpattern
       
  1916 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  1917 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  1918 //!								   Verify the resulting err code is KErrNone.
       
  1919 //!								7. Set the service record filter with the serchpattern
       
  1920 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  1921 //!								   Verify the resulting err code is KErrNone.
       
  1922 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  1923 //!								   Verify that the service record has been retrieved.
       
  1924 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  1925 //!									Verify the resulting err code is KErrNone.
       
  1926 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  1927 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  1928 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  1929 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  1930 //!									Verify the resulting err code is KErrNone.
       
  1931 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  1932 //!
       
  1933 //! @SYMTestStatus				Implemented
       
  1934 //! @SYMTestPriority			Critical
       
  1935 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  1936 //! @SYMTestType				CIT
       
  1937 
       
  1938 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0001
       
  1939 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0001
       
  1940 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0002
       
  1941 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  1942 			SHARED_ACTIVE_SCHEDULER
       
  1943 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  1944 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  1945 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  1946 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  1947 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  1948 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  1949 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  1950 			COMMAND		TBTAttridmatchlist1	NewL
       
  1951 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command3AddL
       
  1952 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command4AddL
       
  1953 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command5RemoveL
       
  1954 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command6RemoveL
       
  1955 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command7RemoveL
       
  1956 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command8RemoveL
       
  1957 			COMMAND		TBTSearchpattern1	NewL
       
  1958 			COMMAND		TBTSearchpattern1	ConstructL
       
  1959 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command12AddL
       
  1960 			COMMAND		TBTAttrValueDES1	NewDESL
       
  1961 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command16NewLC
       
  1962 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command17SetRecordFilterL
       
  1963 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  1964 			OUTSTANDING	1000000
       
  1965 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command20AttributeRequestL
       
  1966 			OUTSTANDING	1000000
       
  1967 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command23DataSize
       
  1968 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0207-0001command24AcceptVisitorL
       
  1969 			STORE	CBluetoothSocket1	
       
  1970 			STORE	TBTServiceSecurity1	
       
  1971 			STORE	TBTDevAddrRemote	
       
  1972 			STORE_ACTIVE_SCHEDULER
       
  1973 	END_TEST_BLOCK
       
  1974 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0002
       
  1975 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0003
       
  1976 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0207-0003
       
  1977 
       
  1978 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0207
       
  1979 DELAY		2000
       
  1980 
       
  1981 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0208
       
  1982 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0208
       
  1983 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  1984 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  1985 //!								Uses API elements: 	NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
       
  1986 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  1987 //!													NewDESL() from CSdpAttrValueDES
       
  1988 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  1989 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  1990 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  1991 //!													
       
  1992 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  1993 //!								2. Add/Remove some attribute ids to/from the idmatchlist
       
  1994 //!								3. Construct a CSdpSearchPattern object
       
  1995 //!								4. Add service UUID into searchpattern
       
  1996 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  1997 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  1998 //!								   Verify the resulting err code is KErrNone.
       
  1999 //!								7. Set the service record filter with the serchpattern
       
  2000 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  2001 //!								   Verify the resulting err code is KErrNone.
       
  2002 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  2003 //!								   Verify that the service record has been retrieved.
       
  2004 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  2005 //!									Verify the resulting err code is KErrNone.
       
  2006 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  2007 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  2008 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  2009 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  2010 //!									Verify the resulting err code is KErrNone.
       
  2011 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  2012 //!
       
  2013 //! @SYMTestStatus				Implemented
       
  2014 //! @SYMTestPriority			Critical
       
  2015 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  2016 //! @SYMTestType				CIT
       
  2017 
       
  2018 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0001
       
  2019 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0001
       
  2020 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0002
       
  2021 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  2022 			SHARED_ACTIVE_SCHEDULER
       
  2023 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  2024 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  2025 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  2026 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  2027 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  2028 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  2029 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  2030 			COMMAND		TBTAttridmatchlist1	NewL
       
  2031 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command3AddL
       
  2032 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command4AddL
       
  2033 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command5RemoveL
       
  2034 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command6RemoveL
       
  2035 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command7RemoveL
       
  2036 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command8RemoveL
       
  2037 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command9AddL
       
  2038 			COMMAND		TBTSearchpattern1	NewL
       
  2039 			COMMAND		TBTSearchpattern1	ConstructL
       
  2040 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command13AddL
       
  2041 			COMMAND		TBTAttrValueDES1	NewDESL
       
  2042 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command17NewLC
       
  2043 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command18SetRecordFilterL
       
  2044 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  2045 			OUTSTANDING	1000000
       
  2046 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command21AttributeRequestL
       
  2047 			OUTSTANDING	1000000
       
  2048 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command24DataSize
       
  2049 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0208-0001command25AcceptVisitorL
       
  2050 			STORE	CBluetoothSocket1	
       
  2051 			STORE	TBTServiceSecurity1	
       
  2052 			STORE	TBTDevAddrRemote	
       
  2053 			STORE_ACTIVE_SCHEDULER
       
  2054 	END_TEST_BLOCK
       
  2055 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0002
       
  2056 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0003
       
  2057 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0208-0003
       
  2058 
       
  2059 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0208
       
  2060 DELAY		2000
       
  2061 
       
  2062 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0209
       
  2063 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0209
       
  2064 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  2065 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  2066 //!								Uses API elements: 	NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
       
  2067 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  2068 //!													NewDESL() from CSdpAttrValueDES
       
  2069 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  2070 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  2071 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  2072 //!													
       
  2073 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  2074 //!								2. Add/Remove some attribute ids to/from the idmatchlist
       
  2075 //!								3. Construct a CSdpSearchPattern object
       
  2076 //!								4. Add service UUID into searchpattern
       
  2077 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  2078 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  2079 //!								   Verify the resulting err code is KErrNone.
       
  2080 //!								7. Set the service record filter with the serchpattern
       
  2081 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  2082 //!								   Verify the resulting err code is KErrNone.
       
  2083 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  2084 //!								   Verify that the service record has been retrieved.
       
  2085 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  2086 //!									Verify the resulting err code is KErrNone.
       
  2087 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  2088 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  2089 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  2090 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  2091 //!									Verify the resulting err code is KErrNone.
       
  2092 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  2093 //!
       
  2094 //! @SYMTestStatus				Implemented
       
  2095 //! @SYMTestPriority			Critical
       
  2096 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  2097 //! @SYMTestType				CIT
       
  2098 
       
  2099 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0001
       
  2100 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0001
       
  2101 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0002
       
  2102 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  2103 			SHARED_ACTIVE_SCHEDULER
       
  2104 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  2105 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  2106 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  2107 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  2108 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  2109 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  2110 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  2111 			COMMAND		TBTAttridmatchlist1	NewL
       
  2112 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command3AddL
       
  2113 			COMMAND		TBTAttridmatchlist1	Count		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command4Count
       
  2114 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command5RemoveL
       
  2115 			COMMAND		TBTAttridmatchlist1	Count		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command6Count
       
  2116 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command7RemoveL
       
  2117 			COMMAND		TBTAttridmatchlist1	Count		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command8Count
       
  2118 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command9AddL
       
  2119 			COMMAND		TBTAttridmatchlist1	Count		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command10Count
       
  2120 			COMMAND		TBTSearchpattern1	NewL
       
  2121 			COMMAND		TBTSearchpattern1	ConstructL
       
  2122 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command14AddL
       
  2123 			COMMAND		TBTAttrValueDES1	NewDESL
       
  2124 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command18NewLC
       
  2125 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command19SetRecordFilterL
       
  2126 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  2127 			OUTSTANDING	1000000
       
  2128 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command22AttributeRequestL
       
  2129 			OUTSTANDING	1000000
       
  2130 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command25DataSize
       
  2131 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0209-0001command26AcceptVisitorL
       
  2132 			STORE	CBluetoothSocket1	
       
  2133 			STORE	TBTServiceSecurity1	
       
  2134 			STORE	TBTDevAddrRemote	
       
  2135 			STORE_ACTIVE_SCHEDULER
       
  2136 	END_TEST_BLOCK
       
  2137 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0002
       
  2138 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0003
       
  2139 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0209-0003
       
  2140 
       
  2141 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0209
       
  2142 DELAY		2000
       
  2143 
       
  2144 START_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0210
       
  2145 //! @SYMTestCaseID				BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0210
       
  2146 //! @SYMAPI						CSdpAgent, CSdpAttrIdMatchList, CSdpSearchPattern, CSdpAttrValueDES, MSdpAttributeValueVisitor, MSdpAgentNotifier
       
  2147 //! @SYMTestCaseDesc			Search for service on slave device, search for service attributes and retrieve attribute values
       
  2148 //!								Uses API elements: 	NewL(), AddL(), RemoveL() from CSdpAttrIdMatchList
       
  2149 //!													NewL(), ConstructL(), AddL from CSdpSearchPattern
       
  2150 //!													NewDESL() from CSdpAttrValueDES
       
  2151 //!													VisitAttributeValueL() from MSdpAttributeValueVisitor
       
  2152 //!													AttributeRequestComplete(), AttributeRequestResult(), NextRecordRequestComplete() from MSdpAgentNotifier
       
  2153 //!													NewL(), SetRecordFilterL(), NextRecordRequestL(), AttributeRequestL() from CSdpAgent
       
  2154 //!													
       
  2155 //! @SYMTestActions				1. Construct a CSdpAttrIdMatchList object
       
  2156 //!								2. Add/Remove some attribute ids to/from the idmatchlist
       
  2157 //!								3. Construct a CSdpSearchPattern object
       
  2158 //!								4. Add service UUID into searchpattern
       
  2159 //!								5. Construct a CSdpAttrValueDES to hold attribute search result of step 12
       
  2160 //!								6. Construct a CSdpAgent object with the bt-address of the slave device provided by the TBTDevAddr object
       
  2161 //!								   Verify the resulting err code is KErrNone.
       
  2162 //!								7. Set the service record filter with the serchpattern
       
  2163 //!								8. Call NextRecordRequestL() to get service record of slave device which matches the search pattern
       
  2164 //!								   Verify the resulting err code is KErrNone.
       
  2165 //!								9. The call back function NextRecordRequestComplete() is executed if the results comes back.
       
  2166 //!								   Verify that the service record has been retrieved.
       
  2167 //!								10. Search for service attributes of the service we've found using the attridmatchlist.
       
  2168 //!									Verify the resulting err code is KErrNone.
       
  2169 //!								11. The call back functions AttributeRequestComplete() is executed when 
       
  2170 //!									the result of attribute request comes back. Result will be put into CSdpAttrValueDES object.
       
  2171 //!								12. Verify the data size of CSdpAttrValueDES object. It should be the sum of the size of every attribute value.
       
  2172 //!								13. AcceptVisitorL() is called on the CSdpAttrValueDES object to get the attribute values. 
       
  2173 //!									Verify the resulting err code is KErrNone.
       
  2174 //!								14. Check the result by comparing the result string generated by VisitAttributeValueL().
       
  2175 //!
       
  2176 //! @SYMTestStatus				Implemented
       
  2177 //! @SYMTestPriority			Critical
       
  2178 //! @SYMTestExpectedResults		CSdpAgent object was created successfully
       
  2179 //! @SYMTestType				CIT
       
  2180 
       
  2181 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0001
       
  2182 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0001
       
  2183 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0002
       
  2184 	START_TEST_BLOCK	100	T_BTSdpAPI	\bluetooth\sdp\BTSDP-Agent-PublicApi-Active-Slave.ini
       
  2185 			SHARED_ACTIVE_SCHEDULER
       
  2186 			CREATE_OBJECT	CSdpAgent	TBTSdpagent	
       
  2187 			RESTORE_OBJECT	TBTDevAddr	TBTDevAddrRemote	
       
  2188 			RESTORE_OBJECT	CBluetoothSocket	CBluetoothSocket1	
       
  2189 			RESTORE_OBJECT	TBTServiceSecurity	TBTServiceSecurity1	
       
  2190 			CREATE_OBJECT	CSdpAttrIdMatchList	TBTAttridmatchlist1	
       
  2191 			CREATE_OBJECT	CSdpSearchPattern	TBTSearchpattern1	
       
  2192 			CREATE_OBJECT	CSdpAttrValueDES	TBTAttrValueDES1	
       
  2193 			COMMAND		TBTAttridmatchlist1	NewL
       
  2194 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command3AddL
       
  2195 			COMMAND		TBTAttridmatchlist1	InMatchList		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command4InMatchList
       
  2196 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command5RemoveL
       
  2197 			COMMAND		TBTAttridmatchlist1	InMatchList		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command6InMatchList
       
  2198 			COMMAND		TBTAttridmatchlist1	RemoveL		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command7RemoveL
       
  2199 			COMMAND		TBTAttridmatchlist1	InMatchList		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command8InMatchList
       
  2200 			COMMAND		TBTAttridmatchlist1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command9AddL
       
  2201 			COMMAND		TBTAttridmatchlist1	InMatchList		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command10InMatchList
       
  2202 			COMMAND		TBTAttridmatchlist1	InMatchList		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command11InMatchList
       
  2203 			COMMAND		TBTAttridmatchlist1	InMatchList		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command12InMatchList
       
  2204 			COMMAND		TBTAttridmatchlist1	InMatchList		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command13InMatchList
       
  2205 			COMMAND		TBTSearchpattern1	NewL
       
  2206 			COMMAND		TBTSearchpattern1	ConstructL
       
  2207 			COMMAND		TBTSearchpattern1	AddL		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command17AddL
       
  2208 			COMMAND		TBTAttrValueDES1	NewDESL
       
  2209 			COMMAND		TBTSdpagent	NewLC		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command21NewLC
       
  2210 			COMMAND		TBTSdpagent	SetRecordFilterL		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command22SetRecordFilterL
       
  2211 			COMMAND		TBTSdpagent	NextRecordRequestL
       
  2212 			OUTSTANDING	1000000
       
  2213 			COMMAND		TBTSdpagent	AttributeRequestL		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command25AttributeRequestL
       
  2214 			OUTSTANDING	1000000
       
  2215 			COMMAND		TBTAttrValueDES1	DataSize		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command28DataSize
       
  2216 			COMMAND		TBTAttrValueDES1	AcceptVisitorL		BTSDP-PublicApi-AttrIdMatchList-Active-0210-0001command29AcceptVisitorL
       
  2217 			STORE_ACTIVE_SCHEDULER
       
  2218 	END_TEST_BLOCK
       
  2219 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0002
       
  2220 	START_SYNCHRONISED_TESTCASE 	BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0003
       
  2221 	END_SYNCHRONISED_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Passive-0210-0003
       
  2222 
       
  2223 END_TESTCASE	BTSDP-PublicApi-AttrIdMatchList-Active-Slave-0210
       
  2224 
       
  2225 DELAY		2000
       
  2226 
       
  2227