"""L2CAP test cases"""
try:
from ptsprojects.testcase import TestCase, TestCmd, TestFunc, \
TestFuncCleanUp
from ptsprojects.utils import btmgmt
except ImportError:
import sys
sys.path.append("../..")
from ptsprojects.testcase import TestCase, TestCmd, TestFunc, \
TestFuncCleanUp
from ptsprojects.utils import btmgmt
def test_cases(pts):
"""Returns a list of L2CAP test cases
pts -- Instance of PyPTS
Initial IUT config: powered connectable br/edr le advertising
Bluetooth in UI should be turned off then:
Not needed for Nexus 7
echo 1 > /sys/class/rfkill/rfkill0/state
setprop ctl.start hciattach
btmgmt le on
btmgmt connectable on
btmgmt advertising on
btmgmt ssp on
btmgmt power on
PIXIT TSPX_delete_link_key must be set to TRUE, that is cause in automation
there is no API call respective to the "Delete Link Key" PTS toolbar
button.
"""
test_cases = [
TestCase("L2CAP", "TC_COS_CED_BV_01_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CED_BV_03_C",
TestCmd("l2test -y -N 1 -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CED_BV_04_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CED_BV_07_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49)),
TestCase("L2CAP", "TC_COS_CED_BV_08_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49)),
TestCase("L2CAP", "TC_COS_CED_BV_09_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CED_BV_11_C",
TestCmd("l2test -u -P 4113 %s" % pts.bd_addr(),
start_wid=49)),
TestCase("L2CAP", "TC_COS_CED_BI_01_C"),
TestCase("L2CAP", "TC_COS_CFD_BV_02_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CFD_BV_03_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CFD_BV_08_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CFD_BV_09_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CFD_BV_11_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_CFD_BV_12_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=14)),
TestCase("L2CAP", "TC_COS_IEX_BV_01_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(),
start_wid=49, stop_wid=22)),
TestCase("L2CAP", "TC_COS_IEX_BV_02_C"),
TestCase("L2CAP", "TC_COS_ECH_BV_01_C"),
TestCase("L2CAP", "TC_COS_ECH_BV_02_C",
TestCmd("l2ping -c1 %s" % pts.bd_addr(), start_wid=26)),
TestCase("L2CAP", "TC_COS_CFC_BV_01_C",
[TestFunc(btmgmt.advertising_off),
TestCmd("l2test -y -N 1 -b 40 -V le_public -P 37 %s" %
pts.bd_addr(), stop_wid=22)]),
TestCase("L2CAP", "TC_COS_CFC_BV_02_C",
TestCmd("l2test -y -N 1 -b 1 -V le_public -P 37 %s" %
pts.bd_addr(), stop_wid=22)),
TestCase("L2CAP", "TC_COS_CFC_BV_03_C",
TestCmd("l2test -u -V le_public -P 37 %s" %
pts.bd_addr(), stop_wid=22)),
TestCase("L2CAP", "TC_COS_CFC_BV_04_C",
[TestCmd("l2test -u -V le_public -P 37 %s" %
pts.bd_addr(), stop_wid=22),
TestFunc(btmgmt.advertising_on)]),
TestCase("L2CAP", "TC_CLS_UCD_BV_01_C"),
TestCase("L2CAP", "TC_CLS_UCD_BV_02_C",
TestCmd("l2test -s -G -N 1 -P 4113 %s" % pts.bd_addr(),
start_wid=49)),
TestCase("L2CAP", "TC_CLS_UCD_BV_03_C",
TestCmd("l2test -s -E -G -N 1 -P 4113 %s" % pts.bd_addr(),
start_wid=49)),
TestCase("L2CAP", "TC_EXF_BV_01_C"),
TestCase("L2CAP", "TC_EXF_BV_02_C"),
TestCase("L2CAP", "TC_EXF_BV_03_C"),
TestCase("L2CAP", "TC_EXF_BV_05_C"),
TestCase("L2CAP", "TC_CMC_BV_01_C",
TestCmd("l2test -r -X ertm -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_02_C",
TestCmd("l2test -r -X ertm -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_03_C",
TestCmd("l2test -r -X ertm -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_04_C",
TestCmd("l2test -r -X streaming -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_05_C",
TestCmd("l2test -r -X streaming -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_06_C",
TestCmd("l2test -r -X streaming -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_07_C",
TestCmd("l2test -r -X ertm -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_08_C",
TestCmd("l2test -r -X streaming -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_09_C",
TestCmd("l2test -r -X basic -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_10_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(), start_wid=49,
stop_wid=14)),
TestCase("L2CAP", "TC_CMC_BV_11_C",
TestCmd("l2test -n -P 4113 %s" % pts.bd_addr(), start_wid=49,
stop_wid=14)),
TestCase("L2CAP", "TC_CMC_BV_12_C",
TestCmd("l2test -z -X ertm %s" % pts.bd_addr(),
start_wid=49)),
TestCase("L2CAP", "TC_CMC_BV_13_C",
TestCmd("l2test -z -X streaming %s" % pts.bd_addr(),
start_wid=49)),
TestCase("L2CAP", "TC_CMC_BV_14_C",
TestCmd("l2test -r -X streaming -P 4113")),
TestCase("L2CAP", "TC_CMC_BV_15_C",
TestCmd("l2test -r -X streaming -P 4113")),
TestCase("L2CAP", "TC_CMC_BI_01_C",
TestCmd("l2test -r -X ertm -P 4113", stop_wid=22)),
TestCase("L2CAP", "TC_CMC_BI_02_C",
TestCmd("l2test -r -X ertm -P 4113", stop_wid=14)),
TestCase("L2CAP", "TC_CMC_BI_03_C",
TestCmd("l2test -r -X streaming -P 4113", stop_wid=14)),
TestCase("L2CAP", "TC_CMC_BI_04_C",
TestCmd("l2test -r -X streaming -P 4113", stop_wid=14)),
TestCase("L2CAP", "TC_CMC_BI_05_C",
TestCmd("l2test -r -X basic -P 4113", stop_wid=22)),
TestCase("L2CAP", "TC_CMC_BI_06_C",
TestCmd("l2test -r -X basic -P 4113", stop_wid=22)),
TestCase("L2CAP", "TC_FOC_BV_01_C",
TestCmd("l2test -r -X ertm -P 4113 -F 0")),
TestCase("L2CAP", "TC_FOC_BV_02_C",
TestCmd("l2test -r -X ertm -P 4113 -F 0")),
TestCase("L2CAP", "TC_FOC_BV_03_C",
TestCmd("l2test -r -X ertm -P 4113 -F 0")),
TestCase("L2CAP", "TC_OFS_BV_01_C",
TestCmd("l2test -x -X ertm -P 4113 -F 0 -N 1")),
TestCase("L2CAP", "TC_OFS_BV_02_C",
TestCmd("l2test -r -X ertm -P 4113 -F 0")),
TestCase("L2CAP", "TC_OFS_BV_03_C",
TestCmd("l2test -x -X streaming -P 4113 -F 0 -N 1")),
TestCase("L2CAP", "TC_OFS_BV_04_C",
TestCmd("l2test -d -X streaming -P 4113 -F 0")),
TestCase("L2CAP", "TC_OFS_BV_05_C",
TestCmd("l2test -x -X ertm -P 4113 -N 1")),
TestCase("L2CAP", "TC_OFS_BV_06_C",
TestCmd("l2test -r -X ertm -P 4113")),
TestCase("L2CAP", "TC_OFS_BV_07_C",
TestCmd("l2test -x -X streaming -P 4113 -F 0 -N 1")),
TestCase("L2CAP", "TC_OFS_BV_08_C",
TestCmd("l2test -d -X streaming -P 4113")),
TestCase("L2CAP", "TC_ERM_BV_01_C",
TestCmd("l2test -x -X ertm -P 4113 -N 3 -Y 3")),
TestCase("L2CAP", "TC_ERM_BV_02_C",
TestCmd("l2test -r -X ertm -P 4113")),
TestCase("L2CAP", "TC_ERM_BV_03_C",
TestCmd("l2test -r -X ertm -P 4113")),
TestCase("L2CAP", "TC_ERM_BV_05_C",
TestCmd("l2test -x -X ertm -P 4113 -N 2 -Y 2")),
TestCase("L2CAP", "TC_ERM_BV_06_C",
TestCmd("l2test -x -X ertm -P 4113 -N 2 -Y 2")),
TestCase("L2CAP", "TC_ERM_BV_07_C",
TestCmd("l2test -r -H 1000 -K 10000 -X ertm -P 4113",
start_wid=15),
no_wid=19),
TestCase("L2CAP", "TC_ERM_BV_08_C",
TestCmd("l2test -x -X ertm -P 4113 -N 1")),
TestCase("L2CAP", "TC_ERM_BV_09_C",
TestCmd("l2test -X ertm -P 4113")),
TestCase("L2CAP", "TC_ERM_BV_10_C",
TestCmd("l2test -x -X ertm -P 4113 -N 1")),
TestCase("L2CAP", "TC_ERM_BV_11_C",
TestCmd("l2test -x -X ertm -P 4113 -N 1 -Q 1")),
TestCase("L2CAP", "TC_ERM_BV_12_C",
TestCmd("l2test -x -X ertm -P 4113 -R -N 1 -Q 1")),
TestCase("L2CAP", "TC_ERM_BV_13_C",
TestCmd("l2test -x -X ertm -P 4113 -N 2")),
TestCase("L2CAP", "TC_ERM_BV_14_C",
TestCmd("l2test -x -X ertm -P 4113 -N 4")),
TestCase("L2CAP", "TC_ERM_BV_15_C",
TestCmd("l2test -x -X ertm -P 4113 -N 4")),
TestCase("L2CAP", "TC_ERM_BV_17_C",
TestCmd("l2test -X ertm -P 4113")),
TestCase("L2CAP", "TC_ERM_BV_18_C",
TestCmd("l2test -x -X ertm -P 4113 -N 1")),
TestCase("L2CAP", "TC_ERM_BV_19_C",
TestCmd("l2test -x -X ertm -P 4113 -N 1")),
TestCase("L2CAP", "TC_ERM_BV_20_C",
TestCmd("l2test -x -X ertm -P 4113 -N 1")),
TestCase("L2CAP", "TC_ERM_BV_21_C",
TestCmd("l2test -x -X ertm -P 4113 -D 2000 -N 2")),
TestCase("L2CAP", "TC_ERM_BV_22_C",
TestCmd("l2test -r -H 1000 -K 10000 -X ertm -P 4113",
start_wid=15),
no_wid=19),
TestCase("L2CAP", "TC_ERM_BV_23_C",
TestCmd("l2test -x -X ertm -P 4113 -N 2")),
TestCase("L2CAP", "TC_ERM_BI_02_C",
TestCmd("l2test -X ertm -P 4113")),
TestCase("L2CAP", "TC_ERM_BI_03_C",
TestCmd("l2test -x -X ertm -P 4113 -N 2")),
TestCase("L2CAP", "TC_ERM_BI_04_C",
TestCmd("l2test -x -X ertm -P 4113 -N 2")),
TestCase("L2CAP", "TC_ERM_BI_05_C",
TestCmd("l2test -x -X ertm -P 4113 -N 2")),
TestCase("L2CAP", "TC_STM_BV_01_C",
TestCmd("l2test -x -X streaming -P 4113 -N 3 -Y 3")),
TestCase("L2CAP", "TC_STM_BV_02_C",
TestCmd("l2test -d -X streaming -P 4113")),
TestCase("L2CAP", "TC_STM_BV_03_C",
TestCmd("l2test -x -X streaming -P 4113 -N 2")),
TestCase("L2CAP", "TC_LE_CPU_BV_01_C",
TestCmd("l2test -n -V le_public -J 4 %s" % pts.bd_addr())),
TestCase("L2CAP", "TC_LE_CPU_BV_02_C",
[TestFunc(btmgmt.advertising_off),
TestCmd("l2test -n -V le_public -J 4 %s" % pts.bd_addr(),
stop_wid=22)]),
TestCase("L2CAP", "TC_LE_CPU_BI_01_C",
TestCmd("l2test -n -V le_public -J 4 %s" % pts.bd_addr(),
stop_wid=22)),
TestCase("L2CAP", "TC_LE_CPU_BI_02_C",
[TestFunc(btmgmt.advertising_on),
TestCmd("l2test -r -V le_public -J 4")]),
TestCase("L2CAP", "TC_LE_REJ_BI_01_C",
[TestFunc(btmgmt.advertising_off),
TestCmd("l2test -n -V le_public -J 4 %s" % pts.bd_addr(),
stop_wid=22)]),
TestCase("L2CAP", "TC_LE_REJ_BI_02_C",
TestCmd("l2test -n -V le_public -J 4 %s" % pts.bd_addr(),
stop_wid=22)),
TestCase("L2CAP", "TC_LE_CFC_BV_01_C",
TestCmd("l2test -n -V le_public -P 37 %s" % pts.bd_addr())),
TestCase("L2CAP", "TC_LE_CFC_BV_02_C",
TestCmd("l2test -n -V le_public -P 37 %s" % pts.bd_addr(),
stop_wid=22)),
TestCase("L2CAP", "TC_LE_CFC_BV_03_C",
[TestFunc(btmgmt.advertising_on),
TestFunc(pts.update_pixit_param, "L2CAP",
"TSPX_iut_role_initiator", "FALSE"),
TestCmd("l2test -x -N 1 -V le_public %s" % pts.bd_addr(),
stop_wid=22),
TestFuncCleanUp(btmgmt.advertising_off),
TestFuncCleanUp(pts.update_pixit_param, "L2CAP",
"TSPX_iut_role_initiator", "TRUE")]),
TestCase("L2CAP", "TC_LE_CFC_BV_04_C",
TestCmd("l2test -n -V le_public -P 241 %s" % pts.bd_addr())),
TestCase("L2CAP", "TC_LE_CFC_BV_05_C",
[TestFunc(btmgmt.advertising_on),
TestFunc(pts.update_pixit_param, "L2CAP",
"TSPX_iut_role_initiator", "FALSE"),
TestCmd("l2test -r -V le_public -J 4")]),
TestCase("L2CAP", "TC_LE_CFC_BV_06_C",
[TestCmd("l2test -x -b 1 -V le_public %s" % pts.bd_addr()),
TestFuncCleanUp(pts.update_pixit_param, "L2CAP",
"TSPX_iut_role_initiator", "TRUE")]),
TestCase("L2CAP", "TC_LE_CFC_BI_01_C",
[TestFunc(btmgmt.advertising_off),
TestCmd("l2test -u -V le_public %s" % pts.bd_addr())]),
TestCase("L2CAP", "TC_LE_CFC_BV_08_C",
TestCmd("l2test -n -V le_public -P 37 %s" % pts.bd_addr(),
stop_wid=14)),
TestCase("L2CAP", "TC_LE_CFC_BV_09_C",
TestCmd("l2test -n -V le_public -P 37 %s" % pts.bd_addr())),
TestCase("L2CAP", "TC_LE_CFC_BV_16_C",
[TestCmd("l2test -n -V le_public -P 37 %s" % pts.bd_addr()),
TestFuncCleanUp(btmgmt.advertising_on)])
]
return test_cases
def main():
"""Main."""
import ptscontrol
pts = ptscontrol.PyPTS()
test_cases_ = test_cases(pts)
for test_case in test_cases_:
print
print test_case
for cmd in test_case.cmds:
print cmd
if __name__ == "__main__":
main()