--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/bluetoothapitest/bluetoothsvs/T_BTSdpAPI/scripts/BTSDP-SearchPattern-PublicApi-Unconnected.script Fri Jan 15 08:13:17 2010 +0200
@@ -0,0 +1,3814 @@
+//
+// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+//
+///////////////////////////////////////////////////////////////////////////////
+//! @file
+//! @SYMTestSuiteName T_BTSdpAPI
+//! @SYMScriptTestEnvironment This test script requires a basic ROM with bluetooth dongle.
+//! @SYMScriptDescription Tests all public elements of the CSdpAttrValueURL, CSdpSearchPattern, SdpUtil,
+//! CElementParser, CSdpAttrValueInt, CSdpAttrValueUint, RSdpDatabase, and RSdp classes
+//! as a means of confidence that the API works as expected.
+//! The purpose is to provide a regression test suite of PublishedAll APIs for
+//! BT SDP related classes.
+//! Negative testing is performed to confirm that correct errors are returned
+//! when incorrect parameters are given. The tests are fully automated.
+//! @SYMAuthor Symbio
+//! @SYMCreationDate 21/09/2006
+///////////////////////////////////////////////////////////////////////////////
+
+
+RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\
+RUN_UTILS MkDir ${SYSDRIVE}\bluetooth\sdp\
+
+LOAD_SUITE T_BTSdpAPI
+DELAY 500
+
+
+// ****************************************************************************
+// CSdpAttrValueURL
+// ****************************************************************************
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2001
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2001
+//! @SYMAPI CSdpAttrValueURL
+//! @SYMTestCaseDesc Create a CSdpAttrValueURL object
+//! Uses API elements: NewURLL() and destructor
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Delete CSdpAttrValueURL object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueURL object was created successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2001-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2001
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2002
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2002
+//! @SYMAPI CSdpAttrValueURL
+//! @SYMTestCaseDesc Get the data type of CSdpAttrValueURL
+//! Uses API elements: NewURLL(), Type() and destructor
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Verify the object type using Type() function. Test pass if expected type is ETypeURL
+//! 4. Delete CSdpAttrValueURL object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueURL type is ETypeURL
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2002-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 Type BTSDP-AttrValURL-PublicApi-2002-0001command2Type
+ COMMAND csdpattrvalueurl1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2002
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2003
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2003
+//! @SYMAPI CSdpAttrValueURL
+//! @SYMTestCaseDesc Get a data buffer attribute value in CSdpAttrValueURL object
+//! Uses API elements: NewURLL(), Des() and destructor
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Use Des() function to retrieve CSdpAttrValueURL object's data pointer descriptor
+//! 4. Read an input data from test data and test pass if the content in data pointer descriptor is as expected
+//! 5. Delete CSdpAttrValueURL object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Data buffer attribute value was matched to the expected data from test data successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2003-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 Des BTSDP-AttrValURL-PublicApi-2003-0001command2Des
+ COMMAND csdpattrvalueurl1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2003
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2004
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2004
+//! @SYMAPI CSdpAttrValueURL
+//! @SYMTestCaseDesc Get the size of a CSdpAttrValueURL attribute
+//! Uses API elements: NewURLL(), DataSize() and destructor
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Get the size of CSdpAttrValueURL object using DataSize() function
+//! 4. Read the expected size from test data and test pass if current size is as expected
+//! 5. Delete CSdpAttrValueURL object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Actual object size was matched to the expected size successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2004-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 DataSize BTSDP-AttrValURL-PublicApi-2004-0001command2DataSize
+ COMMAND csdpattrvalueurl1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2004
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2005
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2005
+//! @SYMAPI CSdpAttrValueURL
+//! @SYMTestCaseDesc Destroy a CSdpAttrValueURL object
+//! Uses API elements: NewURLL() and destructor
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Delete CSdpAttrValueURL object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueURL object was deleted successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2005-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2005
+
+
+// ****************************************************************************
+// Testing virtual functions inherited from CSdpAttrValue
+// ****************************************************************************
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2006
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2006
+//! @SYMAPI CSdpAttrValueURL, CSdpAttrValue and MSdpAttributeValueVisitor
+//! @SYMTestCaseDesc Request a call back to pass the attribute value
+//! Uses API elements: NewURLL(), AcceptVisitorL(), VisitAttributeValueL()
+//! and destructor
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Test AcceptVisitorL() function to pass the object itself. Return KErrNone if successed
+//! Also check actual attribute types if successful
+//! 4. Delete CSdpAttrValueURL object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueURL object type itself returned
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2006-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 AcceptVisitorL BTSDP-AttrValURL-PublicApi-2006-0001command2AcceptVisitorL
+ COMMAND csdpattrvalueurl1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2006
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2007
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2007
+//! @SYMAPI CSdpAttrValueURL and CSdpAttrValue
+//! @SYMTestCaseDesc Call CSdpAttrValue's Bool() function to get a Boolean attribute value
+//! Uses API elements: NewURLL() and Bool()
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Call CSdpAttrValue's Bool() function and catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2007-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 Bool
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2007
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2008
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2008
+//! @SYMAPI CSdpAttrValueURL and CSdpAttrValue
+//! @SYMTestCaseDesc Test if CSdpAttrValueURL attribute can be stored in an integer value
+//! Uses API elements: NewURLL(), DoesIntFit() and destructor
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Verify that CSdpAttrValueURL object cannot hold integer value using DoesIntFit() function
+//! 4. Read an expected result, False from test data and compare results. Test pass if results are matched
+//! 5. Delete CSdpAttrValueURL object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueURL attribute cannot be stored in an integer value and EFalse returned
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2008-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 DoesIntFit BTSDP-AttrValURL-PublicApi-2008-0001command2DoesIntFit
+ COMMAND csdpattrvalueurl1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2008
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2009
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2009
+//! @SYMAPI CSdpAttrValueURL and CSdpAttrValue
+//! @SYMTestCaseDesc Call CSdpAttrValue's Int() function to get a signed integer attribute value
+//! Uses API elements: NewURLL() and Int()
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Call CSdpAttrValue's Int() function and catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2009-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 Int
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2009
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2010
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2010
+//! @SYMAPI CSdpAttrValueURL and CSdpAttrValue
+//! @SYMTestCaseDesc Call CSdpAttrValue's UUID() function to get a UUID attribute value
+//! Uses API elements: NewURLL() and UUID()
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Call CSdpAttrValue's UUID() function and catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2010-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 UUID
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2010
+
+
+START_TESTCASE BTSDP-AttrValURL-PublicApi-2011
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2011
+//! @SYMAPI CSdpAttrValueURL and CSdpAttrValue
+//! @SYMTestCaseDesc Call CSdpAttrValue's Uint() function to get an unsigned integer attribute value
+//! Uses API elements: NewURLL() and Uint()
+//! @SYMTestActions 1. Read a URL value from test data if successful
+//! 2. Create a CSdpAttrValueURL object with the URL value using NewURLL() function.
+//! Return KErrNone if successed
+//! 3. Call CSdpAttrValue's Uint() function and catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+ COMMAND csdpattrvalueurl1 NewURLL BTSDP-AttrValURL-PublicApi-2011-0001command1NewURLL
+ COMMAND csdpattrvalueurl1 Uint
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValURL-PublicApi-2011
+
+
+// ****************************************************************************
+// Negative test cases
+// ****************************************************************************
+
+//!START_TESTCASE BTSDP-AttrValURL-PublicApi-2012
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2012
+//! @SYMAPI CSdpAttrValueURL
+//! @SYMTestCaseDesc Get the data type of CSdpAttrValueURL
+//! Uses API elements: Type()
+//! @SYMTestActions 1. Verify the object type using Type() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+//! COMMAND csdpattrvalueurl1 Type
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValURL-PublicApi-2012
+
+
+//!START_TESTCASE BTSDP-AttrValURL-PublicApi-2013
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2013
+//! @SYMAPI CSdpAttrValueURL
+//! @SYMTestCaseDesc Get a data buffer attribute value in CSdpAttrValueURL object
+//! Uses API elements: Des()
+//! @SYMTestActions 1. Use Des() function to retrieve CSdpAttrValueURL object's data pointer descriptor.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+//! COMMAND csdpattrvalueurl1 Des
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValURL-PublicApi-2013
+
+
+//!START_TESTCASE BTSDP-AttrValURL-PublicApi-2014
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2014
+//! @SYMAPI CSdpAttrValueURL
+//! @SYMTestCaseDesc Get the size of a CSdpAttrValueURL attribute
+//! Uses API elements: DataSize()
+//! @SYMTestActions 1. Get the size of CSdpAttrValueURL object using DataSize() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+//! COMMAND csdpattrvalueurl1 DataSize
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValURL-PublicApi-2014
+
+
+//!START_TESTCASE BTSDP-AttrValURL-PublicApi-2015
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2015
+//! @SYMAPI CSdpAttrValue
+//! @SYMTestCaseDesc Request a call back to pass the attribute value
+//! Uses API elements: AcceptVisitorL()
+//! and destructor
+//! @SYMTestActions 1. Test AcceptVisitorL() function to pass the object itself. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+//! COMMAND csdpattrvalueurl1 AcceptVisitorL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValURL-PublicApi-2015
+
+
+//!START_TESTCASE BTSDP-AttrValURL-PublicApi-2016
+//! @SYMTestCaseID BTSDP-AttrValURL-PublicApi-2016
+//! @SYMAPI CSdpAttrValue
+//! @SYMTestCaseDesc Test if CSdpAttrValueURL attribute can be stored in an integer value
+//! Uses API elements: NewURLL(), DoesIntFit() and destructor
+//! @SYMTestActions 1. Verify that CSdpAttrValueURL object cannot hold integer value using DoesIntFit() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueURL csdpattrvalueurl1
+//! COMMAND csdpattrvalueurl1 DoesIntFit
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValURL-PublicApi-2016
+
+
+
+// ****************************************************************************
+// CSdpSearchPattern
+// ****************************************************************************
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2101
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2101
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Create a CSdpSearchPattern object
+//! Uses API elements: NewL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpSearchPattern object was created successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2101
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2102
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2102
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Allocate a new UUID array
+//! Uses API elements: NewL(), ConstructL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The new UUID array was created successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2102
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2103
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2103
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Add a UID to the list
+//! Uses API elements: NewL(), ConstructL(), AddL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read 2 non-existent UUIDs from test data if successed
+//! 4. Add the 2 non-existent UUIDs to the list using AddL() function. Return KErrNone if successed
+//! 5. Read the expected values from test data and test pass if the positions are as expected
+//! 6. Read an existent UUID from test data if successed
+//! 7. Add the existent UUID to the list using AddL() function. Return KErrNone if successed
+//! 8. Read the expected value from test data and test pass if the position is as expected
+//! 9. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The positions were matched to the expected. In step 4 the 2 UUIDs were inserted to the list, but the UUID in step 7 wasn't
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2103-0001command3AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2103-0001command4AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2103-0001command5AddL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2103
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2104
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2104
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Remove a UUID from the list
+//! Uses API elements: NewL(), ConstructL(), AddL(), Remove() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read 3 non-existent UUIDs from test data if successed
+//! 4. Add the 3 UUIDs to the list using AddL() function. Return KErrNone if successed
+//! 5. Remove an existent UUID from the list using Remove() function
+//! 6. Read the expected value from test data and test pass if the position is as expected
+//! 7. Remove an non-existent UUID from the list using Remove() function
+//! 8. Read the expected value from test data and test pass if the position is as expected
+//! 9. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The positions were matched to the expected. In step 5 the UUID was removed, but the UUID in step 7 wasn't
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2104-0001command3AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2104-0001command4AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2104-0001command5AddL
+ COMMAND csdpsearchpattern1 Remove BTSDP-SearchPattern-PublicApi-2104-0001command6Remove
+ COMMAND csdpsearchpattern1 Remove BTSDP-SearchPattern-PublicApi-2104-0001command7Remove
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2104
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2105
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2105
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Get the position of the specified UUID in the list
+//! Uses API elements: NewL(), ConstructL(), AddL(), Find() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read 2 non-existent UUIDs from test data if successed
+//! 4. Add the 2 UUIDs to the list using AddL() function. Return KErrNone if successed
+//! 5. Get the positions of an existent UUID in the list using Find() function
+//! 6. Read the expected values from test data and test pass if the position is as expected and the UUID can be found
+//! 7. Get the positions of an non-existent UUID in the list using Find() function
+//! 8. Read the expected values from test data and test pass if the position is as expected and the UUID can be found
+//! 9. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The positions were matched to the expected. In step 5 the UUID was found, but the UUID in step 7 wasn't
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2105-0001command3AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2105-0001command4AddL
+ COMMAND csdpsearchpattern1 Find BTSDP-SearchPattern-PublicApi-2105-0001command5Find
+ COMMAND csdpsearchpattern1 Find BTSDP-SearchPattern-PublicApi-2105-0001command6Find
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2105
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2106
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2106
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Get the number of UUIDs in the list
+//! Uses API elements: NewL(), ConstructL(), AddL(), Count() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read 2 non-existent UUIDs from test data if successed
+//! 4. Add the 2 UUIDs to the list using AddL() function. Return KErrNone if successed
+//! 5. Get the number of UUIDs in the list using Count() function
+//! 6. Read the expected value from test data and test pass if the number of UUIDs in the list is as expected
+//! 7. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The number of UUIDs in the list was matched to the expected
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2106-0001command3AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2106-0001command4AddL
+ COMMAND csdpsearchpattern1 Count BTSDP-SearchPattern-PublicApi-2106-0001command5Count
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2106
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2107
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2107
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Get the UUID at the specified position in the list
+//! Uses API elements: NewL(), ConstructL(), AddL(), At() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read 2 non-existent UUIDs from test data if successed
+//! 4. Add the 2 UUIDs to the list using AddL() function. Return KErrNone if successed
+//! 5. Get the UUID at the specified position in the list using At() function
+//! 6. Read the expected value from test data and test pass if the UUID is as expected
+//! 7. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The UUID was matched to the expected
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2107-0001command3AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2107-0001command4AddL
+ COMMAND csdpsearchpattern1 At BTSDP-SearchPattern-PublicApi-2107-0001command5At
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2107
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2108
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2108
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Remove all UUIDs from the list
+//! Uses API elements: NewL(), ConstructL(), AddL(), Reset() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read 2 non-existent UUIDs from test data if successed
+//! 4. Add the 2 UUIDs to the list using AddL() function. Return KErrNone if successed
+//! 5. Remove all UUIDs from the list using Reset() function
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults All UUIDs in the list were removed
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2108-0001command3AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2108-0001command4AddL
+ COMMAND csdpsearchpattern1 Reset
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2108
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2109
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2109
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Test if the list is empty
+//! Uses API elements: NewL(), ConstructL(), AddL(), Reset(), IsEmpty() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Remove all UUIDs from the list using Reset() function
+//! 6. Check if the list is empty using IsEmpty() function
+//! 7. Read the expected value, True from test data and test pass if result is as expected
+//! 8. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The list was empty and result was matched to the expected
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2109-0001command3AddL
+ COMMAND csdpsearchpattern1 Reset
+ COMMAND csdpsearchpattern1 IsEmpty BTSDP-SearchPattern-PublicApi-2109-0001command5IsEmpty
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2109
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2110
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2110
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Destroy CSdpSearchPattern object
+//! Uses API elements: NewL(), ConstructL(), AddL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read 2 non-existent UUIDs from test data if successed
+//! 4. Add the 2 UUIDs to the list using AddL() function. Return KErrNone if successed
+//! 5. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpSearchPattern object was deleted
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2110-0001command3AddL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2110-0001command4AddL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2110
+
+
+// ****************************************************************************
+// Testing virtual functions inherited from MSdpElementBuilder
+// ****************************************************************************
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2111
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2111
+//! @SYMAPI CSdpSearchPattern and MSdpElementBuilder
+//! @SYMTestCaseDesc Call MSdpElementBuilder's BuildBooleanL() function to add a Boolean element
+//! Uses API elements: NewL(), ConstructL(), AddL(), BuildBooleanL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Add a Boolean element using MSdpElementBuilder's BuildBooleanL() function.
+//! The error KErrGeneral is expected from this function call
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Leave the error KErrGeneral
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2111-0001command3AddL
+ COMMAND !Error=-2 csdpsearchpattern1 BuildBooleanL BTSDP-SearchPattern-PublicApi-2111-0001command4BuildBooleanL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2111
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2112
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2112
+//! @SYMAPI CSdpSearchPattern and MSdpElementBuilder
+//! @SYMTestCaseDesc Test MSdpElementBuilder's BuildDEAL() function
+//! Uses API elements: NewL(), ConstructL(), AddL(), BuildDEAL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Add a Data element alternative using MSdpElementBuilder's BuildDEAL() function.
+//! The error KErrGeneral is expected from this function call
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Leave the error KErrGeneral
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2112-0001command3AddL
+ COMMAND !Error=-2 csdpsearchpattern1 BuildDEAL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2112
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2113
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2113
+//! @SYMAPI CSdpSearchPattern and MSdpElementBuilder
+//! @SYMTestCaseDesc Call MSdpElementBuilder's BuildIntL() function to add a signed integer element
+//! Uses API elements: NewL(), ConstructL(), AddL(), BuildIntL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Add a signed integer element using MSdpElementBuilder's BuildIntL() function.
+//! The error KErrGeneral is expected from this function call
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Leave the error KErrGeneral
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2113-0001command3AddL
+ COMMAND !Error=-2 csdpsearchpattern1 BuildIntL BTSDP-SearchPattern-PublicApi-2113-0001command4BuildIntL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2113
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2114
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2114
+//! @SYMAPI CSdpSearchPattern and MSdpElementBuilder
+//! @SYMTestCaseDesc Call MSdpElementBuilder's BuildNilL() function to add a null element
+//! Uses API elements: NewL(), ConstructL(), AddL(), BuildNilL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Add a null element using MSdpElementBuilder's BuildNilL() function.
+//! The error KErrGeneral is expected from this function call
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Leave the error KErrGeneral
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2114-0001command3AddL
+ COMMAND !Error=-2 csdpsearchpattern1 BuildNilL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2114
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2115
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2115
+//! @SYMAPI CSdpSearchPattern and MSdpElementBuilder
+//! @SYMTestCaseDesc Call MSdpElementBuilder's BuildStringL() function to add a Text String element
+//! Uses API elements: NewL(), ConstructL(), AddL(), BuildStringL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Add a Text String element using MSdpElementBuilder's BuildStringL() function.
+//! The error KErrGeneral is expected from this function call
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Leave the error KErrGeneral
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2115-0001command3AddL
+ COMMAND !Error=-2 csdpsearchpattern1 BuildStringL BTSDP-SearchPattern-PublicApi-2115-0001command4BuildStringL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2115
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2116
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2116
+//! @SYMAPI CSdpSearchPattern and MSdpElementBuilder
+//! @SYMTestCaseDesc Call MSdpElementBuilder's BuildURLL() function to add a URL element
+//! Uses API elements: NewL(), ConstructL(), AddL(), BuildURLL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Add a URL element using MSdpElementBuilder's BuildURLL() function.
+//! The error KErrGeneral is expected from this function call
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Leave the error KErrGeneral
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2116-0001command3AddL
+ COMMAND !Error=-2 csdpsearchpattern1 BuildURLL BTSDP-SearchPattern-PublicApi-2116-0001command4BuildURLL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2116
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2117
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2117
+//! @SYMAPI CSdpSearchPattern and MSdpElementBuilder
+//! @SYMTestCaseDesc Call MSdpElementBuilder's BuildUintL() function to add an unsigned integer element
+//! Uses API elements: NewL(), ConstructL(), AddL(), BuildUintL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Add an unsigned integer element using MSdpElementBuilder's BuildUintL() function.
+//! The error KErrGeneral is expected from this function call
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Leave the error KErrGeneral
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2117-0001command3AddL
+ COMMAND !Error=-2 csdpsearchpattern1 BuildUintL BTSDP-SearchPattern-PublicApi-2117-0001command4BuildUintL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2117
+
+
+START_TESTCASE BTSDP-SearchPattern-PublicApi-2118
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2118
+//! @SYMAPI CSdpSearchPattern and MSdpElementBuilder
+//! @SYMTestCaseDesc Call MSdpElementBuilder's BuildUnknownL() function to add an element of any type
+//! Uses API elements: NewL(), ConstructL(), AddL(), BuildUnknownL() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read a non-existent UUIDs from test data if successed
+//! 4. Add the UUID to the list using AddL() function. Return KErrNone if successed
+//! 5. Add an element of any type using MSdpElementBuilder's BuildUnknownL() function.
+//! The error KErrGeneral is expected from this function call
+//! 6. Delete CSdpSearchPattern object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Leave the error KErrGeneral
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+ COMMAND csdpsearchpattern1 NewL
+ COMMAND csdpsearchpattern1 ConstructL
+ COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2118-0001command3AddL
+ COMMAND !Error=-2 csdpsearchpattern1 BuildUnknownL BTSDP-SearchPattern-PublicApi-2118-0001command4BuildUnknownL
+ COMMAND csdpsearchpattern1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-SearchPattern-PublicApi-2118
+
+
+// ****************************************************************************
+// Negative test cases
+// ****************************************************************************
+
+//!START_TESTCASE BTSDP-SearchPattern-PublicApi-2119
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2119
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Get the UUID at the specified position in the list
+//! Uses API elements: NewL(), ConstructL(), AddL(), At() and destructor
+//! @SYMTestActions 1. Allocate and construct a new CSdpSearchPattern object using NewL() function.
+//! Return KErrNone if successed
+//! 2. Allocate a new UUID array using ConstructL() function. Return KErrNone if successed
+//! 3. Read 2 non-existent UUIDs from test data if successed
+//! 4. Add the 2 UUIDs to the list using AddL() function. Return KErrNone if successed
+//! 5. Specify the position is equal to the number of objects currently within the list using At() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+//! COMMAND csdpsearchpattern1 NewL
+//! COMMAND csdpsearchpattern1 ConstructL
+//! COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2119-0001command3AddL
+//! COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2119-0001command4AddL
+//! COMMAND csdpsearchpattern1 At BTSDP-SearchPattern-PublicApi-2119-0001command5At
+//! END_TEST_BLOCK !PanicCode=21 !PanicString=E32USER-CBase
+
+//!END_TESTCASE BTSDP-SearchPattern-PublicApi-2119
+
+
+//!START_TESTCASE BTSDP-SearchPattern-PublicApi-2120
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2120
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Allocate a new UUID array
+//! Uses API elements: ConstructL()
+//! @SYMTestActions 1. Allocate a new UUID array using ConstructL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+//! COMMAND csdpsearchpattern1 ConstructL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-SearchPattern-PublicApi-2120
+
+
+//!START_TESTCASE BTSDP-SearchPattern-PublicApi-2121
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2121
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Adds a UID to the list
+//! Uses API elements: AddL()
+//! @SYMTestActions 1. Adds a UID to the list using AddL() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+//! COMMAND csdpsearchpattern1 AddL BTSDP-SearchPattern-PublicApi-2121-0001command1AddL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-SearchPattern-PublicApi-2121
+
+
+//!START_TESTCASE BTSDP-SearchPattern-PublicApi-2122
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2122
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Removes a UUID from the list
+//! Uses API elements: Remove()
+//! @SYMTestActions 1. Removes a UUID from the list using Remove() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+//! COMMAND csdpsearchpattern1 Remove BTSDP-SearchPattern-PublicApi-2122-0001command1Remove
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-SearchPattern-PublicApi-2122
+
+
+//!START_TESTCASE BTSDP-SearchPattern-PublicApi-2123
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2123
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Gets the position of the specified UUID in the list
+//! Uses API elements: Find()
+//! @SYMTestActions 1. Gets the position of the specified UUID in the list using Find() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+//! COMMAND csdpsearchpattern1 Find BTSDP-SearchPattern-PublicApi-2123-0001command1Find
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-SearchPattern-PublicApi-2123
+
+
+//!START_TESTCASE BTSDP-SearchPattern-PublicApi-2124
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2124
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Gets the number of UUIDs in the list
+//! Uses API elements: Count()
+//! @SYMTestActions 1. Gets the number of UUIDs in the list using Count() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+//! COMMAND csdpsearchpattern1 Count
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-SearchPattern-PublicApi-2124
+
+
+//!START_TESTCASE BTSDP-SearchPattern-PublicApi-2125
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2125
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Removes all UUIDs from the list
+//! Uses API elements: Reset()
+//! @SYMTestActions 1. Removes all UUIDs from the list using Reset() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+//! COMMAND csdpsearchpattern1 Reset
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-SearchPattern-PublicApi-2125
+
+
+//!START_TESTCASE BTSDP-SearchPattern-PublicApi-2126
+//! @SYMTestCaseID BTSDP-SearchPattern-PublicApi-2126
+//! @SYMAPI CSdpSearchPattern
+//! @SYMTestCaseDesc Tests if the list is empty
+//! Uses API elements: IsEmpty()
+//! @SYMTestActions 1. Tests if the list is empty using IsEmpty() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpSearchPattern csdpsearchpattern1
+//! COMMAND csdpsearchpattern1 IsEmpty
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-SearchPattern-PublicApi-2126
+
+
+
+// ****************************************************************************
+// SdpUtil
+// ****************************************************************************
+
+START_TESTCASE BTSDP-Util-PublicApi-2201
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2201
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Put an unsigned integer into a descriptor
+//! Uses API elements: PutUint()
+//! @SYMTestActions 1. Read an integer to be copied into a descriptor and a number of bytes occupied by the integer from test data if successful
+//! 2. Put the unsigned integer into a descriptor using PutUint() function
+//! 3. Calculate the expected value and test pass if the pointer to the descriptor's data field is as expected
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Pointer to the descriptor's data field was matched to the expected value
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 PutUint BTSDP-Util-PublicApi-2201-0001command1PutUint
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Util-PublicApi-2201
+
+
+START_TESTCASE BTSDP-Util-PublicApi-2202
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2202
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Get an unsigned integer from a descriptor
+//! Uses API elements: GetUint()
+//! The length of parameter(define in ini file) should be 0, 1, 2 or 4
+//! @SYMTestActions 1. Read a descriptor containing an integer from test data if successful
+//! 2. Get an unsigned integer from the descriptor using GetUint() function
+//! 3. Calculate the expected value and test pass if the unsigned integer is as expected
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The unsigned integer was matched to the expected value
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 GetUint BTSDP-Util-PublicApi-2202-0001command1GetUint
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Util-PublicApi-2202
+
+
+START_TESTCASE BTSDP-Util-PublicApi-2204
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2204
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Get an unsigned 64 bit integer from a descriptor
+//! Uses API elements: GetUint64()
+//! The length of parameter(define in ini file) should be 8
+//! @SYMTestActions 1. Read a descriptor containing an unsigned 64 bit integer from test data if successful
+//! 2. Get an unsigned 64 bit integer from the descriptor using GetUint64() function
+//! 3. Calculate the expected value and test pass if the unsigned 64 bit integer is as expected
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The unsigned 64 bit integer was matched to the expected value
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 GetUint64 BTSDP-Util-PublicApi-2204-0001command1GetUint64
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Util-PublicApi-2204
+
+
+START_TESTCASE BTSDP-Util-PublicApi-2206
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2206
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Get two unsigned 64 bit integers from a descriptor
+//! Uses API elements: GetUint128()
+//! The length of parameter(define in ini file) should be 16
+//! @SYMTestActions 1. Read a descriptor containing two unsigned 64 bit integers from test data if successful
+//! 2. Get two unsigned 64 bit integers from the descriptor using GetUint128() function
+//! 3. Calculate the expected value and test pass if the two unsigned 64 bit integers are as expected
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The two unsigned 64 bit integers were matched to the expected value
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 GetUint128 BTSDP-Util-PublicApi-2206-0001command1GetUint128
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Util-PublicApi-2206
+
+
+START_TESTCASE BTSDP-Util-PublicApi-2207
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2207
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Get an unsigned integer from a descriptor
+//! Uses API elements: GetUint()
+//! The length of parameter(define in ini file) should not be 0, 1, 2 or 4
+//! @SYMTestActions 1. Read a descriptor containing an integer from test data if successful
+//! 2. Get an unsigned integer from the descriptor using GetUint() function
+//! Verify if a panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 GetUint BTSDP-Util-PublicApi-2207-0001command1GetUint
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Parse
+
+END_TESTCASE BTSDP-Util-PublicApi-2207
+
+
+START_TESTCASE BTSDP-Util-PublicApi-2208
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2208
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Get an unsigned 64 bit integer from a descriptor
+//! Uses API elements: GetUint64()
+//! The length of parameter(define in ini file) should not be 8
+//! @SYMTestActions 1. Read a descriptor containing an unsigned 64 bit integer from test data if successful
+//! 2. Get an unsigned 64 bit integer from the descriptor using GetUint64() function
+//! Verify if a panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 GetUint64 BTSDP-Util-PublicApi-2208-0001command1GetUint64
+ END_TEST_BLOCK !PanicCode=3 !PanicString=SDP-Parse
+
+END_TESTCASE BTSDP-Util-PublicApi-2208
+
+
+START_TESTCASE BTSDP-Util-PublicApi-2209
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2209
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Get two unsigned 64 bit integers from a descriptor
+//! Uses API elements: GetUint128()
+//! The length of parameter(define in ini file) should not be 16
+//! @SYMTestActions 1. Read a descriptor containing two unsigned 64 bit integers from test data if successful
+//! 2. Get two unsigned 64 bit integers from the descriptor using GetUint128() function
+//! Verify if a panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught a panic
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 GetUint128 BTSDP-Util-PublicApi-2209-0001command1GetUint128
+ END_TEST_BLOCK !PanicCode=4 !PanicString=SDP-Parse
+
+END_TESTCASE BTSDP-Util-PublicApi-2209
+
+
+
+// ****************************************************************************
+// CElementParser
+// ****************************************************************************
+
+START_TESTCASE BTSDP-ElementParser-PublicApi-2301
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2301
+//! @SYMAPI CElementParser and CSdpAttrValueDEA
+//! @SYMTestCaseDesc Create a CElementParser object
+//! Uses API elements: NewDEAL(), BuildStringL(), NewL() and destructor
+//! @SYMTestActions 1. Create a list using NewDEAL() function and return KErrNone if successed
+//! 2. Read a string value from test data if successful
+//! 3. Add the string value in the list using BuildStringL() function. Return KErrNone if successed
+//! 4. Create a new CElementParser object with the CSdpAttrValueDEA object using NewL() function.
+//! Return KErrNone if successed
+//! 5. Delete CElementParser object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CElementParser object was created successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CElementParser celementparser1
+ CREATE_OBJECT CSdpAttrValueDEA attrValueDEA
+ COMMAND attrValueDEA NewDEAL
+ COMMAND attrValueDEA BuildStringL BTSDP-ElementParser-PublicApi-2301-0001command3BuildStringL
+ COMMAND celementparser1 NewL BTSDP-ElementParser-PublicApi-2301-0001command5NewL
+ COMMAND celementparser1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-ElementParser-PublicApi-2301
+
+
+START_TESTCASE BTSDP-ElementParser-PublicApi-2302
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2302
+//! @SYMAPI CElementParser and CSdpAttrValueDES
+//! @SYMTestCaseDesc Reset the parser's buffers to be empty
+//! Uses API elements: NewDESL(), BuildNilL(), NewL(), Reset() and destructor
+//! @SYMTestActions 1. Create a list using NewDESL() function and return KErrNone if successed
+//! 2. Add a NULL type of element using BuildNilL() function. Return KErrNone if successed
+//! 3. Create a new CElementParser object with the CSdpAttrValueDES object using NewL() function.
+//! Return KErrNone if successed
+//! 4. Reset CElementParser object's buffers using Reset() function
+//! 5. Delete CElementParser object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CElementParser's buffers was empty
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CElementParser celementparser1
+ CREATE_OBJECT CSdpAttrValueDES attrValueDES
+ COMMAND attrValueDES NewDESL
+ COMMAND attrValueDES BuildNilL
+ COMMAND celementparser1 NewL BTSDP-ElementParser-PublicApi-2302-0001command5NewL
+ COMMAND celementparser1 Reset
+ COMMAND celementparser1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-ElementParser-PublicApi-2302
+
+
+START_TESTCASE BTSDP-ElementParser-PublicApi-2303
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2303
+//! @SYMAPI CElementParser and CSdpAttrValueDES
+//! @SYMTestCaseDesc Reset the parser's buffers to be empty, and reset the element builder object used
+//! Uses API elements: NewDESL(), BuildBooleanL(), NewL(), Reset() and destructor
+//! @SYMTestActions 1. Create a list using NewDESL() function and return KErrNone if successed
+//! 2. Read a boolean value from test data if successful
+//! 3. Add the boolean in the list using BuildBooleanL() function. Return KErrNone if successed
+//! 4. Create a new CElementParser object with the CSdpAttrValueDES object using NewL() function.
+//! Return KErrNone if successed
+//! 5. Use Reset() function to reset CElementParser object's buffers and the element builder, CSdpAttrValueDES object used
+//! 6. Delete CElementParser object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Reset successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CElementParser celementparser1
+ CREATE_OBJECT CSdpAttrValueDES attrValueDES
+ COMMAND attrValueDES NewDESL
+ COMMAND attrValueDES BuildBooleanL BTSDP-ElementParser-PublicApi-2303-0001command3BuildBooleanL
+ COMMAND celementparser1 NewL BTSDP-ElementParser-PublicApi-2303-0001command5NewL
+ COMMAND celementparser1 Reset BTSDP-ElementParser-PublicApi-2303-0001command6Reset
+ COMMAND celementparser1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-ElementParser-PublicApi-2303
+
+
+START_TESTCASE BTSDP-ElementParser-PublicApi-2304
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2304
+//! @SYMAPI CElementParser and CSdpAttrValueDEA
+//! @SYMTestCaseDesc Return MSdpElementBuilder object
+//! Uses API elements: NewDEAL(), BuildDEAL(), NewL(), Builder() and destructor
+//! @SYMTestActions 1. Create a list using NewDEAL() function and return KErrNone if successed
+//! 2. Add a data element alternative in the list using BuildDEAL() function. Return KErrNone if successed
+//! 3. Create a new CElementParser object with the CSdpAttrValueDEA object using NewL() function.
+//! Return KErrNone if successed
+//! 4. Call Builder() function
+//! 5. Read an expected result from test data and test pass if results are matched
+//! 6. Delete CElementParser object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Returned a MSdpElementBuilder object successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CElementParser celementparser1
+ CREATE_OBJECT CSdpAttrValueDEA attrValueDEA
+ COMMAND attrValueDEA NewDEAL
+ COMMAND attrValueDEA BuildDEAL
+ COMMAND celementparser1 NewL BTSDP-ElementParser-PublicApi-2304-0001command5NewL
+ COMMAND celementparser1 Builder BTSDP-ElementParser-PublicApi-2304-0001command6Builder
+ COMMAND celementparser1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-ElementParser-PublicApi-2304
+
+
+START_TESTCASE BTSDP-ElementParser-PublicApi-2305
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2305
+//! @SYMAPI CElementParser and CSdpAttrValueDES
+//! @SYMTestCaseDesc Set MSdpElementBuilder
+//! Uses API elements: NewDESL(), BuildIntL(), NewL(), SetBuilder() and destructor
+//! @SYMTestActions 1. Create a list using NewDESL() function and return KErrNone if successed
+//! 2. Read a signed integer from test data if successful
+//! 3. Add the signed integer in the list using BuildIntL() function. Return KErrNone if successed
+//! 4. Create a new CElementParser object with the CSdpAttrValueDES object using NewL() function.
+//! Return KErrNone if successed
+//! 5. Call SetBuilder() function to parse CSdpAttrValueDES object
+//! 6. Delete CElementParser object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueDES object was set successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CElementParser celementparser1
+ CREATE_OBJECT CSdpAttrValueDES attrValueDES
+ COMMAND attrValueDES NewDESL
+ COMMAND attrValueDES BuildIntL BTSDP-ElementParser-PublicApi-2305-0001command3BuildIntL
+ COMMAND celementparser1 NewL BTSDP-ElementParser-PublicApi-2305-0001command5NewL
+ COMMAND celementparser1 SetBuilder BTSDP-ElementParser-PublicApi-2305-0001command6SetBuilder
+ COMMAND celementparser1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-ElementParser-PublicApi-2305
+
+
+START_TESTCASE BTSDP-ElementParser-PublicApi-2306
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2306
+//! @SYMAPI CElementParser and CSdpAttrValueDEA
+//! @SYMTestCaseDesc Parse a data buffer into the currently set MSdpElementBuilder interface
+//! Uses API elements: NewDEAL(), BuildUintL(), NewL(), ParseElementsL() and destructor
+//! @SYMTestActions 1. Create a list using NewDEAL() function and return KErrNone if successed
+//! 2. Read an unsigned integer from test data if successful
+//! 3. Add the unsigned integer in the list using BuildUintL() function. Return KErrNone if successed
+//! 4. Create a new CElementParser object with the CSdpAttrValueDEA object using NewL() function.
+//! Return KErrNone if successed
+//! 5. Retrieve some data from an existent file using RFs and RFile objects
+//! 6. CElementParser object parses a data buffer is gotten in step 5 and return number of bytes not consumed
+//! Return KErrNone if successed
+//! 7. Read an expected result from test data and test pass if the number of bytes not consumed is as expected
+//! 8. Delete CElementParser object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The number of bytes not consumed was matched to the expected
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CElementParser celementparser1
+ CREATE_OBJECT CSdpAttrValueDEA attrValueDEA
+ COMMAND attrValueDEA NewDEAL
+ COMMAND attrValueDEA BuildUintL BTSDP-ElementParser-PublicApi-2306-0001command3BuildUintL
+ COMMAND celementparser1 NewL BTSDP-ElementParser-PublicApi-2306-0001command5NewL
+ COMMAND celementparser1 ParseElementsL BTSDP-ElementParser-PublicApi-2306-0001command6ParseElementsL
+ COMMAND celementparser1 Builder BTSDP-ElementParser-PublicApi-2306-0001command7Builder
+ COMMAND attrValueDEA DataSize BTSDP-ElementParser-PublicApi-2306-0001command9DataSize
+ COMMAND attrValueDEA ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-ElementParser-PublicApi-2306
+
+
+START_TESTCASE BTSDP-ElementParser-PublicApi-2307
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2307
+//! @SYMAPI CElementParser and CSdpAttrValueDEA
+//! @SYMTestCaseDesc Parse out some encoded data, with transparent buffering of unparsed data between calls
+//! Uses API elements: NewDEAL(), BuildUUIDL(), NewL(), BufferedParseL() and destructor
+//! @SYMTestActions 1. Create a list using NewDEAL() function and return KErrNone if successed
+//! 2. Read a UUID from test data and add it to the list if successful
+//! 3. Add the UUID in the list using BuildUUIDL() function. Return KErrNone if successed
+//! 4. Create a new CElementParser object with the CSdpAttrValueDEA object using NewL() function.
+//! Return KErrNone if successed
+//! 5. Retrieve some data from an existent file using RFs and RFile objects
+//! 6. CElementParser object parses an input buffer is gotten in step 5 and return the result
+//! Return KErrNone if successed
+//! 7. Read an expected result from test data and test pass if the results are matched
+//! 8. Delete CElementParser object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Returned True and matched to the expected
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CElementParser celementparser1
+ CREATE_OBJECT CSdpAttrValueDEA attrValueDEA
+ COMMAND attrValueDEA NewDEAL
+ COMMAND attrValueDEA BuildUUIDL BTSDP-ElementParser-PublicApi-2307-0001command3BuildUUIDL
+ COMMAND celementparser1 NewL BTSDP-ElementParser-PublicApi-2307-0001command5NewL
+ COMMAND celementparser1 BufferedParseL BTSDP-ElementParser-PublicApi-2307-0001command6BufferedParseL
+ COMMAND celementparser1 Builder BTSDP-ElementParser-PublicApi-2307-0001command7Builder
+ COMMAND attrValueDEA DataSize BTSDP-ElementParser-PublicApi-2307-0001command9DataSize
+ COMMAND attrValueDEA ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-ElementParser-PublicApi-2307
+
+
+START_TESTCASE BTSDP-ElementParser-PublicApi-2308
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2308
+//! @SYMAPI CElementParser and CSdpAttrValueDES
+//! @SYMTestCaseDesc Destroy CElementParser object
+//! Uses API elements: NewDESL(), BuildURLL() and NewL() and destructor
+//! @SYMTestActions 1. Create a list using NewDESL() function and return KErrNone if successed
+//! 2. Read a URL from test data and add it to the list if successful
+//! 3. Add the URL in the list using BuildURLL() function. Return KErrNone if successed
+//! 4. Create a new CElementParser object with the CSdpAttrValueDES object using NewL() function.
+//! Return KErrNone if successed
+//! 5. Delete CElementParser object using destructor
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CElementParser object was deleted successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CElementParser celementparser1
+ CREATE_OBJECT CSdpAttrValueDES attrValueDES
+ COMMAND attrValueDES NewDESL
+ COMMAND attrValueDES BuildURLL BTSDP-ElementParser-PublicApi-2308-0001command3BuildURLL
+ COMMAND celementparser1 NewL BTSDP-ElementParser-PublicApi-2308-0001command5NewL
+ COMMAND celementparser1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-ElementParser-PublicApi-2308
+
+
+// ****************************************************************************
+// Negative test cases
+// ****************************************************************************
+
+//!START_TESTCASE BTSDP-ElementParser-PublicApi-2309
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2309
+//! @SYMAPI CElementParser
+//! @SYMTestCaseDesc Parse a data buffer into the currently set MSdpElementBuilder interface
+//! Uses API elements: ParseElementsL()
+//! @SYMTestActions 1. Parses a data buffer into the currently set MSdpElementBuilder interface using ParseElementsL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CElementParser celementparser1
+//! COMMAND celementparser1 ParseElementsL BTSDP-ElementParser-PublicApi-2309-0001command1ParseElementsL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-ElementParser-PublicApi-2309
+
+
+//!START_TESTCASE BTSDP-ElementParser-PublicApi-2310
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2310
+//! @SYMAPI CElementParser
+//! @SYMTestCaseDesc Parse out some encoded data, with transparent buffering of unparsed data between calls
+//! Uses API elements: BufferedParseL()
+//! @SYMTestActions 1. Parse out some encoded data, with transparent buffering of unparsed data between calls using BufferedParseL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CElementParser celementparser1
+//! COMMAND celementparser1 BufferedParseL BTSDP-ElementParser-PublicApi-2310-0001command1BufferedParseL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-ElementParser-PublicApi-2310
+
+
+//!START_TESTCASE BTSDP-ElementParser-PublicApi-2311
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2311
+//! @SYMAPI CElementParser
+//! @SYMTestCaseDesc Reset the parser's buffers to be empty
+//! Uses API elements: Reset()
+//! @SYMTestActions 1. Reset CElementParser object's buffers using Reset() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CElementParser celementparser1
+//! COMMAND celementparser1 Reset
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-ElementParser-PublicApi-2311
+
+
+//!START_TESTCASE BTSDP-ElementParser-PublicApi-2312
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2312
+//! @SYMAPI CElementParser
+//! @SYMTestCaseDesc Reset the parser's buffers to be empty, and reset the element builder object used
+//! Uses API elements: Reset()
+//! @SYMTestActions 1. Use Reset() function to reset CElementParser object's buffers and the element builder, CSdpAttrValueDES object used.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CElementParser celementparser1
+//! CREATE_OBJECT CSdpAttrValueDES attrValueDES
+//! COMMAND celementparser1 Reset BTSDP-ElementParser-PublicApi-2312-0001command1Reset
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-ElementParser-PublicApi-2312
+
+
+//!START_TESTCASE BTSDP-ElementParser-PublicApi-2313
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2313
+//! @SYMAPI CElementParser
+//! @SYMTestCaseDesc Return MSdpElementBuilder object
+//! Uses API elements: Builder()
+//! @SYMTestActions 1. Call Builder() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CElementParser celementparser1
+//! COMMAND celementparser1 Builder
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-ElementParser-PublicApi-2313
+
+
+//!START_TESTCASE BTSDP-ElementParser-PublicApi-2314
+//! @SYMTestCaseID BTSDP-ElementParser-PublicApi-2314
+//! @SYMAPI CElementParser
+//! @SYMTestCaseDesc Set MSdpElementBuilder
+//! Uses API elements: SetBuilder()
+//! @SYMTestActions 1. Call SetBuilder() function to parse CSdpAttrValueDES object.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CElementParser celementparser1
+//! CREATE_OBJECT CSdpAttrValueDES attrValueDES
+//! COMMAND celementparser1 SetBuilder BTSDP-ElementParser-PublicApi-2314-0001command1SetBuilder
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-ElementParser-PublicApi-2314
+
+
+
+// ****************************************************************************
+// BTSDP-AttrValueInt
+// ****************************************************************************
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3101
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3101
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Allocate and construct a new CSdpAttrValueInt object.
+//! Uses API elements: NewIntL() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Deconstruct CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueInt object was created successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3101-0001command1NewIntL
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3101
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3102
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3102
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Gets the size of the attribute.
+//! Uses API elements: NewIntL(), DataSize() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Get the current size of CSdpAttrValueInt object using DataSize() function
+//! 4. Read the expected size from test data and compare if actual size is as expected
+//! 5. Test failed if sizes doesn't match
+//! 6. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Actual object size was matched to the expected size successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3102-0001command1NewIntL
+ COMMAND attrvalueInt1 DataSize BTSDP-AttrValInt-PublicApi-3102-0001command2DataSize
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3102
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3103
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3103
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Gets the attribute type.
+//! Uses API elements: NewIntL(), Type() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Verify the object type using Type() function. Test pass if expected type is ETypeInt.
+//! 4. Test failed if type doesn't match.
+//! 5. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueInt type is ETypeInt.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3103-0001command1NewIntL
+ COMMAND attrvalueInt1 Type BTSDP-AttrValInt-PublicApi-3103-0001command2Type
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3103
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3104
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3104
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Gets the value as a signed integer type.
+//! Uses API elements: NewIntL(), Int() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Verify the object signed integer value using Int() function. Test pass if expected signed integer value
+//! is same as actual signed integer value.
+//! 4. Test failed if signed integer value doesn't match.
+//! 5. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults Actual signed integer value was matched to the expected value successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT TSdpIntBuf32 attrIntBuf1
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrIntBuf1 NewIntBuf BTSDP-AttrValInt-PublicApi-3104-0001command1NewIntBuf
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3104-0001command3NewIntL
+ COMMAND attrvalueInt1 Int BTSDP-AttrValInt-PublicApi-3104-0001command4Int
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3104
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3105
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3105
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an integer value.
+//! Uses API elements: NewIntL(), DoesIntFit() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Verify the object can be stored in an integer value using DoesIntFit() function.
+//! Test pass if object can be stored in an integer value and return ETrue as expected.
+//! 4. Test failed if object can't be stored in an integer value and return EFalse.
+//! 5. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Object can be stored in an integer value and return ETrue successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3105-0001command1NewIntL
+ COMMAND attrvalueInt1 DoesIntFit BTSDP-AttrValInt-PublicApi-3105-0001command2DoesIntFit
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3105
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3106
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3106
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Gets the value as a data buffer.
+//! Uses API elements: NewIntL(), Des() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Use Des() function to retrieve CSdpAttrValueInt object's data pointer descriptor.
+//! 4. Read an input integer from test data and compare it with the contents in data pointer descriptor
+//! and check if actual integer value is same as expected input integer value.
+//! 5. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults Data buffer integer value was matched to the expected integer from test data successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3106-0001command1NewIntL
+ COMMAND attrvalueInt1 Des BTSDP-AttrValInt-PublicApi-3106-0001command2Des
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3106
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3107
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3107
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Gets an unsigned integer attribute value.
+//! Uses API elements: NewIntL(), Uint() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Execute Uint() function and catch a panic and check if panic is thrown out as expected.
+//! 4. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3107-0001command1NewIntL
+ COMMAND attrvalueInt1 Uint
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3107
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3108
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3108
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Gets a UUID attribute value.
+//! Uses API elements: NewIntL(), UUID() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Execute UUID() function and catch a panic and check if panic is thrown out as expected.
+//! 4. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3108-0001command1NewIntL
+ COMMAND attrvalueInt1 UUID
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3108
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3109
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3109
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Gets a Boolean attribute value.
+//! Uses API elements: NewIntL(), Bool() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Execute Bool() function and catch a panic and check if panic is thrown out as expected.
+//! 4. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3109-0001command1NewIntL
+ COMMAND attrvalueInt1 Bool
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3109
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3110
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3110
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Test CSdpAttrValue's AcceptVisitorL() function
+//! Uses API elements: NewIntL(), AcceptVisitorL() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Execute AcceptVisitorL() function and return TSdpElementType is ETypeInt, integer value.
+//! 4. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The correct TSdpElementType and value were returned successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3110-0001command1NewIntL
+ COMMAND attrvalueInt1 AcceptVisitorL BTSDP-AttrValInt-PublicApi-3110-0001command2AcceptVisitorL
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3110
+
+
+// ****************************************************************************
+// Negative
+// ****************************************************************************
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3111
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3111
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an positive integer value 64 bits.
+//! Uses API elements: NewIntL(), DoesIntFit(), Des() and destructor
+//! @SYMTestActions 1. Read an input positive integer 64 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Verify the object can be stored in an positive integer value 64 bits using DoesIntFit() function.
+//! Test pass if object can not be stored in an integer value 64 bits and return EFalse as expected.
+//! 4. Test failed if object can be stored in an positive integer value 64 bits and return ETrue.
+//! 7. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Object can not be stored in an positive integer value 64 bits and return EFalse successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3111-0001command1NewIntL
+ COMMAND attrvalueInt1 DoesIntFit BTSDP-AttrValInt-PublicApi-3111-0001command2DoesIntFit
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3111
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3112
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3112
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an positive integer value 128 bits.
+//! Uses API elements: NewIntL(), DoesIntFit(), Des() and destructor
+//! @SYMTestActions 1. Read an input positive integer 128 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Verify the object can be stored in an positive integer value 128 bits using DoesIntFit() function.
+//! Test pass if object can not be stored in an positive integer value 128 bits and return EFalse as expected.
+//! 4. Test failed if object can be stored in an positive integer value 128 bits and return ETrue.
+//! 7. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Object can not be stored in an positive integer value 128 bits and return EFalse successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3112-0001command1NewIntL
+ COMMAND attrvalueInt1 DoesIntFit BTSDP-AttrValInt-PublicApi-3112-0001command2DoesIntFit
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3112
+
+
+START_TESTCASE BTSDP-AttrValInt-PublicApi-3113
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3113
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an negative integer value 64 bits.
+//! Uses API elements: NewIntL(), DoesIntFit(), Des() and destructor
+//! @SYMTestActions 1. Read an input negative integer 64 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Verify the object can be stored in an negative integer value 64 bits using DoesIntFit() function.
+//! Test pass if object can not be stored in an negative integer value 64 bits and return EFalse as expected.
+//! 4. Test failed if object can be stored in an negative integer value 64 bits and return ETrue.
+//! 7. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Object can not be stored in an negative integer value 64 bits and return EFalse successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+ COMMAND attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3113-0001command1NewIntL
+ COMMAND attrvalueInt1 DoesIntFit BTSDP-AttrValInt-PublicApi-3113-0001command2DoesIntFit
+ COMMAND attrvalueInt1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValInt-PublicApi-3113
+
+
+//!START_TESTCASE BTSDP-AttrValInt-PublicApi-3114
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3114
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an negative integer value 128 bits.
+//! Uses API elements: NewIntL(), DoesIntFit(), Des() and destructor
+//! @SYMTestActions 1. Read an input negative integer 128 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 3. Verify the object can be stored in an negative integer value 128 bits using DoesIntFit() function.
+//! Test pass if object can not be stored in an negative integer value 128 bits and return EFalse as expected.
+//! 4. Test failed if object can be stored in an negative integer value 128 bits and return ETrue.
+//! 7. Deconstructs CSdpAttrValueInt object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic. Object can not be stored in an negative integer value 128 bits and return EFalse successfully.
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+//! COMMAND !Error=-6 attrvalueInt1 NewIntL BTSDP-AttrValInt-PublicApi-3114-0001command1NewIntL
+//! COMMAND attrvalueInt1 DoesIntFit BTSDP-AttrValInt-PublicApi-3114-0001command2DoesIntFit
+//! COMMAND attrvalueInt1 ~
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValInt-PublicApi-3114
+
+
+//!START_TESTCASE BTSDP-AttrValInt-PublicApi-3115
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3115
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Get the attribute type
+//! Uses API elements: Type()
+//! @SYMTestActions 1. Get the attribute type using Type() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+//! COMMAND attrvalueInt1 Type
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValInt-PublicApi-3115
+
+
+//!START_TESTCASE BTSDP-AttrValInt-PublicApi-3116
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3116
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Get the size of the attribute
+//! Uses API elements: DataSize()
+//! @SYMTestActions 1. Get the size of the attribute using DataSize() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+//! COMMAND attrvalueInt1 DataSize
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValInt-PublicApi-3116
+
+
+//!START_TESTCASE BTSDP-AttrValInt-PublicApi-3117
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3117
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Get the value as a signed integer type
+//! Uses API elements: Int()
+//! @SYMTestActions 1. Get the value as a signed integer type using Int() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+//! COMMAND attrvalueInt1 Int
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValInt-PublicApi-3117
+
+
+//!START_TESTCASE BTSDP-AttrValInt-PublicApi-3118
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3118
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Test if the attribute can be stored in an integer value
+//! Uses API elements: DoesIntFit()
+//! @SYMTestActions 1. Test if the attribute can be stored in an integer value using DoesIntFit() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+//! COMMAND attrvalueInt1 DoesIntFit
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValInt-PublicApi-3118
+
+
+//!START_TESTCASE BTSDP-AttrValInt-PublicApi-3119
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3119
+//! @SYMAPI CSdpAttrValueInt
+//! @SYMTestCaseDesc Get the value as a data buffer
+//! Uses API elements: Des()
+//! @SYMTestActions 1. Get the value as a data buffer using Des() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+//! COMMAND attrvalueInt1 Des
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValInt-PublicApi-3119
+
+
+//!START_TESTCASE BTSDP-AttrValInt-PublicApi-3120
+//! @SYMTestCaseID BTSDP-AttrValInt-PublicApi-3120
+//! @SYMAPI CSdpAttrValue
+//! @SYMTestCaseDesc Request a call back to pass the attribute value
+//! Uses API elements: AcceptVisitorL()
+//! @SYMTestActions 1. Request a call back to pass the attribute value using AcceptVisitorL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueInt attrvalueInt1
+//! COMMAND attrvalueInt1 AcceptVisitorL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValInt-PublicApi-3120
+
+
+
+// ****************************************************************************
+// BTSDP-AttrValueUint
+// ****************************************************************************
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3201
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3201
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Allocate and construct a new CSdpAttrValueUint object.
+//! Uses API elements: NewUintL() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Deconstruct CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueUint object was created successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3201-0001command1NewUintL
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3201
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3202
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3202
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Gets the size of the attribute.
+//! Uses API elements: NewUintL(), DataSize() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Get the current size of CSdpAttrValueUint object using DataSize() function
+//! 4. Read the expected size from test data and compare if actual size is as expected
+//! 5. Test failed if sizes doesn't match
+//! 6. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Actual object size was matched to the expected size successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3202-0001command1NewUintL
+ COMMAND attrValueUint1 DataSize BTSDP-AttrValUint-PublicApi-3202-0001command2DataSize
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3202
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3203
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3203
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Gets the attribute type.
+//! Uses API elements: NewUintL(), Type() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object type using Type() function. Test pass if expected type is ETypeUint.
+//! 4. Test failed if type doesn't match.
+//! 5. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults CSdpAttrValueUint type is ETypeUint.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3203-0001command1NewUintL
+ COMMAND attrValueUint1 Type BTSDP-AttrValUint-PublicApi-3203-0001command2Type
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3203
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3204
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3204
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Gets the value as a unsigned integer type.
+//! Uses API elements: NewUintL(), Uint() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object unsigned integer value using Uint() function. Test pass if expected unsigned integer value
+//! is same as actual unsigned integer value.
+//! 4. Test failed if unsigned integer value doesn't match.
+//! 5. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults Actual unsigned integer value was matched to the expected value successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT TSdpIntBuf32 attrIntBuf1
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrIntBuf1 NewIntBuf BTSDP-AttrValUint-PublicApi-3204-0001command1NewIntBuf
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3204-0001command3NewUintL
+ COMMAND attrValueUint1 Des BTSDP-AttrValUint-PublicApi-3204-0001command4Des
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3204-0001command5NewUintL
+ COMMAND attrValueUint1 Uint BTSDP-AttrValUint-PublicApi-3204-0001command6Uint
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3204
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3205
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3205
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an integer value.
+//! Uses API elements: NewUintL(), DoesIntFit() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object can be stored in an integer value using DoesIntFit() function.
+//! Test pass if object can be stored in an integer value and return ETrue as expected.
+//! 4. Test failed if object can't be stored in an integer value and return EFalse.
+//! 5. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Object can be stored in an integer value and return ETrue successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3205-0001command1NewUintL
+ COMMAND attrValueUint1 DoesIntFit BTSDP-AttrValUint-PublicApi-3205-0001command2DoesIntFit
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3205
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3206
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3206
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Gets the value as a data buffer.
+//! Uses API elements: NewUintL(), Des() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Use Des() function to retrieve CSdpAttrValueUint object's data pointer descriptor.
+//! 4. Read an input integer from test data and compare it with the contents in data pointer descriptor
+//! and check if actual integer value is same as expected input integer value.
+//! 5. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults Data buffer integer value was matched to the expected integer from test data successfully
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3206-0001command1NewUintL
+ COMMAND attrValueUint1 Des BTSDP-AttrValUint-PublicApi-3206-0001command2Des
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3206
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3207
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3207
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Gets an signed integer attribute value.
+//! Uses API elements: NewUintL(), Int() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Execute Int() function and catch a panic and check if panic is thrown out as expected.
+//! 4. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3207-0001command1NewUintL
+ COMMAND attrValueUint1 Int
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3207
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3208
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3208
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Gets a UUID attribute value.
+//! Uses API elements: NewUintL(), UUID() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Execute UUID() function and catch a panic and check if panic is thrown out as expected.
+//! 4. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3208-0001command1NewUintL
+ COMMAND attrValueUint1 UUID
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3208
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3209
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3209
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Gets a Boolean attribute value.
+//! Uses API elements: NewUintL(), Bool() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Execute Bool() function and catch a panic and check if panic is thrown out as expected.
+//! 4. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3209-0001command1NewUintL
+ COMMAND attrValueUint1 Bool
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Database
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3209
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3210
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3210
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Test CSdpAttrValue's AcceptVisitorL() function
+//! Uses API elements: NewUintL(), AcceptVisitorL() and destructor
+//! @SYMTestActions 1. Read an input integer from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Execute AcceptVisitorL() function and and return TSdpElementType is ETypeUint, integer value.
+//! 4. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The correct TSdpElementType and value were returned successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3210-0001command1NewUintL
+ COMMAND attrValueUint1 AcceptVisitorL BTSDP-AttrValUint-PublicApi-3210-0001command2AcceptVisitorL
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3210
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3211
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3211
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an integer value 64 bits.
+//! Uses API elements: NewUintL(), DoesIntFit(), Des() and destructor
+//! @SYMTestActions 1. Read an input integer 64 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object can be stored in an integer value 64 bits using DoesIntFit() function.
+//! Test pass if object can be stored in an integer value 64 bits and return ETrue as expected.
+//! 4. Test failed if object can't be stored in an integer value 64 bits and return EFalse.
+//! 5. Use Des() function to retrieve CSdpAttrValueUint object's data pointer descriptor.
+//! 6. Read an input integer 64 bits from test data and compare it with the contents in data pointer descriptor
+//! and check if actual integer value 64 bits is same as expected input integer value 64 bits.
+//! 7. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Object can be stored in an integer value 64 bits and return ETrue successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3211-0001command1NewUintL
+ COMMAND attrValueUint1 DoesIntFit BTSDP-AttrValUint-PublicApi-3211-0001command2DoesIntFit
+ COMMAND attrValueUint1 Des BTSDP-AttrValUint-PublicApi-3211-0001command3Des
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3211
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3212
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3212
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an integer value 128 bits.
+//! Uses API elements: NewUintL(), DoesIntFit(), Des() and destructor
+//! @SYMTestActions 1. Read an input integer 128 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object can be stored in an integer value 128 bits using DoesIntFit() function.
+//! Test pass if object can be stored in an integer value 128 bits and return ETrue as expected.
+//! 4. Test failed if object can't be stored in an integer value 128 bits and return EFalse.
+//! 5. Use Des() function to retrieve CSdpAttrValueUint object's data pointer descriptor.
+//! 6. Read an input integer 64 bits from test data and compare it with the contents in data pointer descriptor
+//! and check if actual integer value 128 bits is same as expected input integer value 128 bits.
+//! 7. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults Object can be stored in an integer value 128 bits and return ETrue successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3212-0001command1NewUintL
+ COMMAND attrValueUint1 DoesIntFit BTSDP-AttrValUint-PublicApi-3212-0001command2DoesIntFit
+ COMMAND attrValueUint1 Des BTSDP-AttrValUint-PublicApi-3212-0001command3Des
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3212
+
+
+// ****************************************************************************
+// Negative
+// ****************************************************************************
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3213
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3213
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an negative integer value 16 bits.
+//! Uses API elements: NewUintL(), Uint() and destructor
+//! @SYMTestActions 1. Read an input negative integer 16 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object nagtive integer value using Uint() function.
+//! 4. Catch a panic and check if panic is thrown out as expected.
+//! 5. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic. Object can not be stored in an negative integer value 16 bits.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3213-0001command1NewUintL
+ COMMAND attrValueUint1 Uint
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Parse
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3213
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3214
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3214
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an negative integer value 32 bits.
+//! Uses API elements: NewUintL(), Uint() and destructor
+//! @SYMTestActions 1. Read an input negative integer 32 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object nagtive integer value using Uint() function.
+//! 4. Catch a panic and check if panic is thrown out as expected.
+//! 5. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic. Object can not be stored in an negative integer value 32 bits.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3214-0001command1NewUintL
+ COMMAND attrValueUint1 Uint
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Parse
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3214
+
+
+START_TESTCASE BTSDP-AttrValUint-PublicApi-3215
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3215
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Tests if the attribute can be stored in an negative integer value 64 bits.
+//! Uses API elements: NewUintL(), Uint() and destructor
+//! @SYMTestActions 1. Read an input negative integer 64 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object nagtive integer value using Uint() function.
+//! 4. Catch a panic and check if panic is thrown out as expected.
+//! 5. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic. Object can not be stored in an negative integer value 64 bits.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+ COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3215-0001command1NewUintL
+ COMMAND attrValueUint1 Uint
+ COMMAND attrValueUint1 ~
+ END_TEST_BLOCK !PanicCode=0 !PanicString=SDP-Parse
+
+END_TESTCASE BTSDP-AttrValUint-PublicApi-3215
+
+
+//!START_TESTCASE BTSDP-AttrValUint-PublicApi-3216
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3216
+//! @SYMAPI CSdpAttrValueUint
+///! @SYMTestCaseDesc Tests if the attribute can be stored in an negative integer value 128 bits.
+//! Uses API elements: NewUintL(), Uint() and destructor
+//! @SYMTestActions 1. Read an input negative integer 128 bits from test data if successful.
+//! 2. Allocate and construct a new CSdpAttrValueUint object using NewUintL() function and return KErrNone if successed.
+//! 3. Verify the object nagtive integer value using Uint() function.
+//! 4. Catch a panic and check if panic is thrown out as expected.
+//! 5. Deconstructs CSdpAttrValueUint object.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic. Object can not be stored in an negative integer value 128 bits.
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+//! COMMAND attrValueUint1 NewUintL BTSDP-AttrValUint-PublicApi-3216-0001command1NewUintL
+//! COMMAND attrValueUint1 Uint
+//! COMMAND attrValueUint1 ~
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValUint-PublicApi-3216
+
+
+//!START_TESTCASE BTSDP-AttrValUint-PublicApi-3117
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3117
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Get the attribute type
+//! Uses API elements: Type()
+//! @SYMTestActions 1. Get the attribute type using Type() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+//! COMMAND attrValueUint1 Type
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValUint-PublicApi-3117
+
+
+//!START_TESTCASE BTSDP-AttrValUint-PublicApi-3118
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3118
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Get the size of the attribute
+//! Uses API elements: DataSize()
+//! @SYMTestActions 1. Get the size of the attribute using DataSize() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+//! COMMAND attrValueUint1 DataSize
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValUint-PublicApi-3118
+
+
+//!START_TESTCASE BTSDP-AttrValUint-PublicApi-3119
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3119
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Get the value as a signed integer type
+//! Uses API elements: Uint()
+//! @SYMTestActions 1. Get the value as a signed integer type using Uint() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+//! COMMAND attrValueUint1 Uint
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValUint-PublicApi-3119
+
+
+//!START_TESTCASE BTSDP-AttrValUint-PublicApi-3120
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3120
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Test if the attribute can be stored in an integer value
+//! Uses API elements: DoesIntFit()
+//! @SYMTestActions 1. Test if the attribute can be stored in an integer value using DoesIntFit() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+//! COMMAND attrValueUint1 DoesIntFit
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValUint-PublicApi-3120
+
+
+//!START_TESTCASE BTSDP-AttrValUint-PublicApi-3121
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3121
+//! @SYMAPI CSdpAttrValueUint
+//! @SYMTestCaseDesc Get the value as a data buffer
+//! Uses API elements: Des()
+//! @SYMTestActions 1. Get the value as a data buffer using Des() function. Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+//! COMMAND attrValueUint1 Des
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValUint-PublicApi-3121
+
+
+//!START_TESTCASE BTSDP-AttrValUint-PublicApi-3122
+//! @SYMTestCaseID BTSDP-AttrValUint-PublicApi-3122
+//! @SYMAPI CSdpAttrValue
+//! @SYMTestCaseDesc Request a call back to pass the attribute value
+//! Uses API elements: AcceptVisitorL()
+//! @SYMTestActions 1. Request a call back to pass the attribute value using AcceptVisitorL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT CSdpAttrValueUint attrValueUint1
+//! COMMAND attrValueUint1 AcceptVisitorL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-AttrValUint-PublicApi-3122
+
+
+
+// ****************************************************************************
+// BTSDP-Database
+// ****************************************************************************
+
+START_TESTCASE BTSDP-Database-PublicApi-3301
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3301
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Allocate and construct a new RSdpDatabase object.
+//! Uses API elements: RSdpDatabase()
+//! @SYMTestActions Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults RSdpDatabase object was allocated successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ COMMAND database1 Constructor
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3301
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3302
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3302
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Connects a client process to the database, then opens a SDP database subsession.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Close the SDP database subsession using Close() function.
+//! 4. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults RSdpDatabase object was Opened successfully with subsession.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3302-0001command6Open
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3302
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3303
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3303
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Creates a new service record, with a single service class, in the SDP database.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Close the SDP database subsession using Close() function.
+//! 8. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults The service record was created successfully in SDP database.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3303-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3303-0001command7CreateServiceRecordL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3303
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3304
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3304
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Deletes a service record.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), DeleteRecordL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Deletes the service record using DeleteRecordL() function and return KErrNone if successed.
+//! 8. Close the SDP database subsession using Close() function.
+//! 9. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults The service record was deleted successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3304-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3304-0001command7CreateServiceRecordL
+ COMMAND database1 DeleteRecordL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3304
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3305
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3305
+//! @SYMAPI RSdpDatabase, CSdpAttrValueDES
+//! @SYMTestCaseDesc Creates a new service record, with multiple service classes, in the SDP database.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), DeleteRecordL() ,Close() and NewDESL()
+//! @SYMTestActions 1. Allocate and construct a new CSdpAttrValueDES object using NewDESL() function and return KErrNone if successed.
+//! 2. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 3. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 4. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 5. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 6. Read the CSdpAttrValueDES object from test data if successful.
+//! 7. Creates a new service record with multiple service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 8. Close the SDP database subsession using Close() function.
+//! 9. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults The Service record with multiple service classes was created successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ CREATE_OBJECT CSdpAttrValueDES attrValueDES
+ COMMAND attrValueDES NewDESL
+ COMMAND attrValueDES BuildUUIDL BTSDP-Database-PublicApi-3305-0001command3BuildUUIDL
+ COMMAND attrValueDES BuildUUIDL BTSDP-Database-PublicApi-3305-0001command4BuildUUIDL
+ COMMAND attrValueDES BuildUUIDL BTSDP-Database-PublicApi-3305-0001command5BuildUUIDL
+ COMMAND attrValueDES BuildUUIDL BTSDP-Database-PublicApi-3305-0001command6BuildUUIDL
+ COMMAND attrValueDES BuildUUIDL BTSDP-Database-PublicApi-3305-0001command7BuildUUIDL
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3305-0001command13Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3305-0001command14CreateServiceRecordL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ COMMAND attrValueDES ~
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3305
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3306
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3306
+//! @SYMAPI RSdpDatabase, CSdpAttrValueInt
+//! @SYMTestCaseDesc Updates a service record attribute with a value encapsulated in a CSdpAttrValue.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), UpdateAttributeL(), NewIntL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new CSdpAttrValueInt object using NewIntL() function and return KErrNone if successed.
+//! 2. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 3. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 4. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 5. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 6. Read an input service record UUID from test data if successful.
+//! 7. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 8. Read an input attribute ID from test data if successful.
+//! 9. Read the CSdpAttrValueInt object from test data if successful.
+//! 10.Updates a service record attribute with a value encapsulated in a CSdpAttrValueInt using UpdateAttributeL() function and return KErrNone if successed.
+//! 11.Close the SDP database subsession using Close() function.
+//! 12.Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults The service record with attribute ID and attribute value encapsulated in the CSdpAttrValueInt was updated successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ CREATE_OBJECT CSdpAttrValueInt attrValueInt
+ COMMAND attrValueInt NewIntL BTSDP-Database-PublicApi-3306-0001command2NewIntL
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3306-0001command8Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3306-0001command9CreateServiceRecordL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3306-0001command10UpdateAttributeL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3306
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3307
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3307
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Delete an attribute from a service record.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), UpdateAttributeL(), DeleteAttributeL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Read an input attribute ID from test data if successful.
+//! 8. Read a narrow descriptor from test data if successful.
+//! 9. Updates a service record attribute with a narrow descriptor using UpdateAttributeL() function and return KErrNone if successed.
+//! 10.Delete an attribute from a service record using DeleteAttributeL() function and return KErrNone if successed.
+//! 11.Close the SDP database subsession using Close() function.
+//! 12.Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults The attribute on a servie reocrd was deleted successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3307-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3307-0001command7CreateServiceRecordL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3307-0001command8UpdateAttributeL
+ COMMAND database1 DeleteAttributeL BTSDP-Database-PublicApi-3307-0001command9DeleteAttributeL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3307
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3308
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3308
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Updates a service record attribute with an integer value.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), UpdateAttributeL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Read an input attribute ID from test data if successful.
+//! 8. Read an integer value from test data if successful.
+//! 9. Updates a service record attribute with an integer value using UpdateAttributeL() function and return KErrNone if successed.
+//! 10.Close the SDP database subsession using Close() function.
+//! 11.Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The service record with attribute ID and an integer value was updated successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3308-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3308-0001command7CreateServiceRecordL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3308-0001command8UpdateAttributeL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3308
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3309
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3309
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Updates a service record attribute with a TDesC8 value.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), UpdateAttributeL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Read an input attribute ID from test data if successful.
+//! 8. Read a narrow descriptor (TDesC8) from test data if successful.
+//! 9. Updates a service record attribute with a narrow descriptor (TDesC8) using UpdateAttributeL() function and return KErrNone if successed.
+//! 10.Close the SDP database subsession using Close() function.
+//! 11.Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The service record with attribute ID and a narrow descriptor (TDesC8) was updated successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3309-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3309-0001command7CreateServiceRecordL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3309-0001command8UpdateAttributeL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3309
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3310
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3310
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Updates a service record attribute with a TDesC16 value.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), UpdateAttributeL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Read an input attribute ID from test data if successful.
+//! 8. Read a narrow descriptor (TDesC16) from test data if successful.
+//! 9. Updates a service record attribute with a narrow descriptor (TDesC16) using UpdateAttributeL() function and return KErrNone if successed.
+//! 10.Close the SDP database subsession using Close() function.
+//! 11.Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The service record with attribute ID and a narrow descriptor (TDesC16) was updated successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3310-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3310-0001command7CreateServiceRecordL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3310-0001command8UpdateAttributeL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3310
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3311
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3311
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Gets the version of the database server.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), Version() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Get the version of the database server using Version() function. Test Pass if expected version name,
+//! build number, major number and minor number are same as actual version name, actual build number,
+//! major number and minor number.
+//! 6. Test fail if version name or build number or major number or minor number is not same as expected.
+//! 7. Close the SDP database subsession using Close() function.
+//! 8. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The actual Version name, build number, major number and minor number are same as expected successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3311-0001command6Open
+ COMMAND rsdp Version BTSDP-Database-PublicApi-3311-0001command8Version
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3311
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3312
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3312
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Starts the counter to keep track of open subsessions.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), ResourceCountMarkStart(), ResourceCountMarkEnd() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Start the counter to keep track of open subsessions using ResourceCountMarkStart() function.
+//! 6. Stop the counter using ResourceCountMarkEnd() function.
+//! 7. Close the SDP database subsession using Close() function.
+//! 8. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The resource counter start successfully and stop successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3312-0001command6Open
+ COMMAND rsdp ResourceCountMarkStart
+ COMMAND rsdp ResourceCountMarkEnd
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3312
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3313
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3313
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Gets the number of open subsessions to the database.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), ResourceCountMarkStart(), ResourceCountMarkEnd(), ResourceCount() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Start the counter to keep track of open subsessions using ResourceCountMarkStart() function.
+//! 6. Get the number of open subsessions on the database using ResourceCount() function. Test pass if expected
+//! resource counter number is same as actual resource counter number.
+//! 7. Test fail if expected resource counter is not same as actual resource counter.
+//! 8. Stop the counter using ResourceCountMarkEnd() function.
+//! 9. Close the SDP database subsession using Close() function.
+//! 10.Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The actual resource counter number is same as expected successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3313-0001command6Open
+ COMMAND rsdp ResourceCountMarkStart
+ COMMAND rsdp ResourceCount BTSDP-Database-PublicApi-3313-0001command9ResourceCount
+ COMMAND rsdp ResourceCountMarkEnd
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3313
+
+START_TESTCASE BTSDP-Database-PublicApi-3314
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3314
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Multiple records being added to the database, then deleted them from database
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), DeleteRecordL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read Multiple input service record UUIDs from test data if successful.
+//! 6. Creates multiple new service records with the service record UUIDs using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Deletes the service records using DeleteRecordL() function and return KErrNone if successed.
+//! 8. Close the SDP database subsession using Close() function.
+//! 9. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Multiple records being added to the database and deleted successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3314-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3314-0001command7CreateServiceRecordL
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3314-0001command8CreateServiceRecordL
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3314-0001command9CreateServiceRecordL
+ COMMAND database1 DeleteRecordL
+ COMMAND database1 DeleteRecordL
+ COMMAND database1 DeleteRecordL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3314
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3315
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3315
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Multiple attributes being added to a service record, then updated each attribute with properly value. Finally deleted all attributes.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), UpdateAttributeL(), DeleteAttributeL() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Read multiple attribute IDs from test data if successful.
+//! 8. Read multiple values from test data if successful.
+//! 9. Updates a service record attribute with values using UpdateAttributeL() function and return KErrNone if successed.
+//! 10.Read multiple attribute IDs again from test data if successful.
+//! 11.Read multiple values again from test data if successful.
+//! 12.Updates multiple service record attributes again with values using UpdateAttributeL() function and return KErrNone if successed.
+//! 13.Delete multiple attributes from service record using DeleteAttributeL() function and return KErrNone if successed.
+//! 14.Close the SDP database subsession using Close() function.
+//! 15.Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults Multiple attributes being added to a service reocrd, then updated each attribute successfully. Finally deleted all attribute.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3315-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3315-0001command7CreateServiceRecordL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3315-0001command8UpdateAttributeL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3315-0001command9UpdateAttributeL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3315-0001command10UpdateAttributeL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3315-0001command11UpdateAttributeL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3315-0001command12UpdateAttributeL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3315-0001command13UpdateAttributeL
+ COMMAND database1 DeleteAttributeL BTSDP-Database-PublicApi-3315-0001command14DeleteAttributeL
+ COMMAND database1 DeleteAttributeL BTSDP-Database-PublicApi-3315-0001command15DeleteAttributeL
+ COMMAND database1 DeleteAttributeL BTSDP-Database-PublicApi-3315-0001command16DeleteAttributeL
+ COMMAND database1 DeleteRecordL
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3315
+
+
+// ****************************************************************************
+// Negative test cases
+// ****************************************************************************
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3316
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3316
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Open a SDP database subsession
+//! Uses API elements: Open()
+//! @SYMTestActions 1. Open a SDP database subsession using Open() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! CREATE_OBJECT RSdp rsdp
+//! COMMAND database1 Open BTSDP-Database-PublicApi-3316-0001command1Open
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3316
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3317
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3317
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Close the SDP database subsession
+//! Uses API elements: Close()
+//! @SYMTestActions 1. Close the SDP database subsession using Close() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 Close
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3317
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3318
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3318
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Create a new service record, with a single service class, in the SDP database
+//! Uses API elements: CreateServiceRecordL()
+//! @SYMTestActions 1. Create a new service record, with a single service class, in the SDP database using CreateServiceRecordL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3318-0001command1CreateServiceRecordL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3318
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3319
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3319
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Create a new service record, with multiple service classes, in the SDP database
+//! Uses API elements: CreateServiceRecordL()
+//! @SYMTestActions 1. Create a new service record, with multiple service classes, in the SDP database using CreateServiceRecordL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! CREATE_OBJECT CSdpAttrValueDES attrValueDES
+//! COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3319-0001command1CreateServiceRecordL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3319
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3320
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3320
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Update a service record attribute (value encapsulated in a CSdpAttrValue)
+//! Uses API elements: UpdateAttributeL()
+//! @SYMTestActions 1. Update a service record attribute (value encapsulated in a CSdpAttrValue) using UpdateAttributeL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! CREATE_OBJECT CSdpAttrValueInt attrValueInt
+//! COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3320-0001command1UpdateAttributeL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3320
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3321
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3321
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Update a service record attribute (integer value)
+//! Uses API elements: UpdateAttributeL()
+//! @SYMTestActions 1. Update a service record attribute (integer value) using UpdateAttributeL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3321-0001command1UpdateAttributeL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3321
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3322
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3322
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Update a service record attribute (narrow descriptor value)
+//! Uses API elements: UpdateAttributeL()
+//! @SYMTestActions 1. Update a service record attribute (narrow descriptor value) using UpdateAttributeL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3322-0001command1UpdateAttributeL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3322
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3323
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3323
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Update a service record attribute (narrow descriptor value)
+//! Uses API elements: UpdateAttributeL()
+//! @SYMTestActions 1. Update a service record attribute (narrow descriptor value) using UpdateAttributeL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3323-0001command1UpdateAttributeL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3323
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3324
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3324
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Delete an attribute from a service record
+//! Uses API elements: DeleteAttributeL()
+//! @SYMTestActions 1. Delete an attribute from a service record using DeleteAttributeL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 DeleteAttributeL BTSDP-Database-PublicApi-3324-0001command1DeleteAttributeL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3324
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3325
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3325
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Delete a service record
+//! Uses API elements: DeleteRecordL()
+//! @SYMTestActions 1. Delete a service record using DeleteRecordL() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 DeleteRecordL
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3325
+
+
+
+// ****************************************************************************
+// BTSDP-Rsdp
+// ****************************************************************************
+
+START_TESTCASE BTSDP-Rsdp-PublicApi-3401
+//! @SYMTestCaseID BTSDP-Rsdp-PublicApi-3401
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Allocate and construct a new RSdp object.
+//! Uses API elements: RSdp()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults RSdp object was allocated successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdp rsdp1
+ COMMAND rsdp1 Constructor
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Rsdp-PublicApi-3401
+
+
+START_TESTCASE BTSDP-Rsdp-PublicApi-3402
+//! @SYMTestCaseID BTSDP-Rsdp-PublicApi-3402
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Connect a client process to the database.
+//! Uses API elements: RSdp(), Connect() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Connect to the database was successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdp rsdp1
+ COMMAND rsdp1 Constructor
+ COMMAND rsdp1 Connect
+ OUTSTANDING
+ COMMAND rsdp1 Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Rsdp-PublicApi-3402
+
+
+START_TESTCASE BTSDP-Rsdp-PublicApi-3403
+//! @SYMTestCaseID BTSDP-Rsdp-PublicApi-3403
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Get the version of the database server.
+//! Uses API elements: RSdp(), Connect(), Version() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Get the version of the database server using Version() function. Test Pass if expected version name,
+//! build number, major number and minor number are same as actual version name, actual build number,
+//! major number and minor number.
+//! 4. Test fail if version name or build number or major number or minor number is not same as expected.
+//! 5. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The actual Version name, build number, major number and minor number are same as expected successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdp rsdp1
+ COMMAND rsdp1 Constructor
+ COMMAND rsdp1 Connect
+ OUTSTANDING
+ COMMAND rsdp1 Version BTSDP-Rsdp-PublicApi-3403-0001command3Version
+ COMMAND rsdp1 Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Rsdp-PublicApi-3403
+
+
+START_TESTCASE BTSDP-Rsdp-PublicApi-3404
+//! @SYMTestCaseID BTSDP-Rsdp-PublicApi-3404
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Get the number of open subsessions on the database.
+//! Uses API elements: RSdp(), Connect(), ResourceCountMarkStart(), ResourceCountMarkEnd(), ResourceCount() and Close()
+//! @SYMTestActions 1. 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Start the counter to keep track of open subsessions using ResourceCountMarkStart() function.
+//! 4. Get the number of open subsessions on the database using ResourceCount() function. Test pass if expected
+//! resource counter number is same as actual resource counter number.
+//! 5. Test fail if expected resource counter is not same as actual resource counter.
+//! 6. Stop the counter using ResourceCountMarkEnd() function.
+//! 7. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults The actual resource counter number is same as expected successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdp rsdp1
+ COMMAND rsdp1 Constructor
+ COMMAND rsdp1 Connect
+ OUTSTANDING
+ COMMAND rsdp1 ResourceCountMarkStart
+ COMMAND rsdp1 ResourceCount BTSDP-Rsdp-PublicApi-3404-0001command4ResourceCount
+ COMMAND rsdp1 ResourceCountMarkEnd
+ COMMAND rsdp1 Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Rsdp-PublicApi-3404
+
+
+// ****************************************************************************
+// Negative test cases
+// ****************************************************************************
+
+//!START_TESTCASE BTSDP-Rsdp-PublicApi-3405
+//! @SYMTestCaseID BTSDP-Rsdp-PublicApi-3405
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Connect a client process to the database.
+//! Uses API elements: Connect()
+//! @SYMTestActions 1. Connect a client process to the database using Connect() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdp rsdp1
+//! COMMAND rsdp1 Connect
+//! OUTSTANDING
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Rsdp-PublicApi-3405
+
+
+//!START_TESTCASE BTSDP-Rsdp-PublicApi-3406
+//! @SYMTestCaseID BTSDP-Rsdp-PublicApi-3406
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Start the counter to keep track of open subsessions
+//! Uses API elements: ResourceCountMarkStart()
+//! @SYMTestActions 1. Starts the counter to keep track of open subsessions using ResourceCountMarkStart() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdp rsdp1
+//! COMMAND rsdp1 ResourceCountMarkStart
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Rsdp-PublicApi-3406
+
+
+//!START_TESTCASE BTSDP-Rsdp-PublicApi-3407
+//! @SYMTestCaseID BTSDP-Rsdp-PublicApi-3407
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Stop the counter to keep track of open subsessions
+//! Uses API elements: ResourceCountMarkEnd()
+//! @SYMTestActions 1. Stop the counter to keep track of open subsessions using ResourceCountMarkEnd() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdp rsdp1
+//! COMMAND rsdp1 ResourceCountMarkEnd
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Rsdp-PublicApi-3407
+
+
+//!START_TESTCASE BTSDP-Rsdp-PublicApi-3408
+//! @SYMTestCaseID BTSDP-Rsdp-PublicApi-3408
+//! @SYMAPI RSdp
+//! @SYMTestCaseDesc Get the number of open subsessions to the database
+//! Uses API elements: ResourceCount()
+//! @SYMTestActions 1. Get the number of open subsessions to the database using ResourceCount() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdp rsdp1
+//! COMMAND rsdp1 ResourceCount
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Rsdp-PublicApi-3408
+
+START_TESTCASE BTSDP-Util-PublicApi-2203
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2203
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Put an unsigned 64 bit integer into a descriptor
+//! Uses API elements: PutUint64()
+//! @SYMTestActions 1. Read an unsigned 64 bit integer from test data if successful
+//! 2. Put the unsigned 64 bit integer into a descriptor using PutUint64() function
+//! 3. Calculate the expected value and test pass if the pointer to the descriptor's data field is as expected
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Pointer to the descriptor's data field was matched to the expected value
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 PutUint64 BTSDP-Util-PublicApi-2203-0001command1PutUint64
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Util-PublicApi-2203
+
+
+START_TESTCASE BTSDP-Util-PublicApi-2205
+//! @SYMTestCaseID BTSDP-Util-PublicApi-2205
+//! @SYMAPI SdpUtil
+//! @SYMTestCaseDesc Put two unsigned 64 bit integers into a descriptor
+//! Uses API elements: PutUint128()
+//! @SYMTestActions 1. Read a 64 lower bits and a 64 higher bits of a 128 bit integer from test data if successful
+//! 2. Put the two unsigned 64 bit integers into a descriptor using PutUint128() function
+//! 3. Calculate the expected value and test pass if the pointer to the descriptor's data field is as expected
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Pointer to the descriptor's data field was matched to the expected value
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT SdpUtil sdputil1
+ COMMAND sdputil1 PutUint128 BTSDP-Util-PublicApi-2205-0001command1PutUint128
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Util-PublicApi-2205
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3326
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3326
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Deletes a service record.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), DeleteRecord() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Deletes the service record using DeleteRecord() function and return KErrNone if successed.
+//! 8. Close the SDP database subsession using Close() function.
+//! 9. Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults The service record was deleted successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3326-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3326-0001command7CreateServiceRecordL
+ COMMAND database1 DeleteRecord
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3326
+
+
+START_TESTCASE BTSDP-Database-PublicApi-3327
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3327
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Delete an attribute from a service record.
+//! Uses API elements: Rsdp(), RSdpDatabase(), Connect(), Open(), CreateServiceRecordL(), UpdateAttributeL(), DeleteAttribute() and Close()
+//! @SYMTestActions 1. Allocate and construct a new RSdp object using RSdp() function and return KErrNone if successed.
+//! 2. Connect a client process to the database using Connect() function and return KErrNone if successed.
+//! 3. Allocate and construct a new RSdpDatabase object using RSdpDatabase() function and return KErrNone if successed.
+//! 4. Opens a SDP database subsession using Open() function and return KErrNone if successed.
+//! 5. Read an input service record UUID from test data if successful.
+//! 6. Creates a new service record with the service record UUID using CreateServiceRecordL() function and return KErrNone if successed.
+//! 7. Read an input attribute ID from test data if successful.
+//! 8. Read a narrow descriptor from test data if successful.
+//! 9. Updates a service record attribute with a narrow descriptor using UpdateAttributeL() function and return KErrNone if successed.
+//! 10.Delete an attribute from a service record using DeleteAttribute() function and return KErrNone if successed.
+//! 11.Close the SDP database subsession using Close() function.
+//! 12.Close the client process using Close() function.
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Medium
+//! @SYMTestExpectedResults The attribute on a servie reocrd was deleted successfully.
+//! @SYMTestType CIT
+
+ START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+ CREATE_OBJECT RSdpDatabase database1
+ CREATE_OBJECT RSdp rsdp
+ COMMAND rsdp Constructor
+ COMMAND rsdp Connect
+ OUTSTANDING
+ COMMAND database1 Constructor
+ COMMAND database1 Open BTSDP-Database-PublicApi-3327-0001command6Open
+ COMMAND database1 CreateServiceRecordL BTSDP-Database-PublicApi-3327-0001command7CreateServiceRecordL
+ COMMAND database1 UpdateAttributeL BTSDP-Database-PublicApi-3327-0001command8UpdateAttributeL
+ COMMAND database1 DeleteAttribute BTSDP-Database-PublicApi-3327-0001command9DeleteAttribute
+ COMMAND database1 Close
+ COMMAND rsdp Close
+ END_TEST_BLOCK
+
+END_TESTCASE BTSDP-Database-PublicApi-3327
+
+
+// ****************************************************************************
+// Negative test cases
+// ****************************************************************************
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3328
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3328
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Delete a service record
+//! Uses API elements: DeleteRecord()
+//! @SYMTestActions 1. Delete a service record using DeleteRecord() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 DeleteRecord
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3328
+
+
+//!START_TESTCASE BTSDP-Database-PublicApi-3329
+//! @SYMTestCaseID BTSDP-Database-PublicApi-3329
+//! @SYMAPI RSdpDatabase
+//! @SYMTestCaseDesc Delete an attribute from a service record
+//! Uses API elements: DeleteAttribute()
+//! @SYMTestActions 1. Delete an attribute from a service record using DeleteAttribute() function.
+//! Catch a panic if panic is thrown out
+//! @SYMTestStatus Implemented
+//! @SYMTestPriority Low
+//! @SYMTestExpectedResults Caught the panic
+//! @SYMTestType CIT
+
+//! START_TEST_BLOCK 10 T_BTSdpAPI \bluetooth\sdp\BTSDP-SearchPattern-PublicApi-Unconnected.ini
+//! CREATE_OBJECT RSdpDatabase database1
+//! COMMAND database1 DeleteAttribute BTSDP-Database-PublicApi-3329-0001command1DeleteAttribute
+//! END_TEST_BLOCK !PanicCode=3 !PanicString=KERN-EXEC
+
+//!END_TESTCASE BTSDP-Database-PublicApi-3329
+
+
+
+DELAY 2000