aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/test/test_socket.py
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2025-04-22 14:02:13 +0300
committerGitHub <noreply@github.com>2025-04-22 11:02:13 +0000
commite84624450dc0494271119018c699372245d724d9 (patch)
treebd1c946f3ee2d6c49c4b888dda4e4b0dcf026aec /Lib/test/test_socket.py
parent05d0559db04743aa47d485d53437edbb31d8e967 (diff)
downloadcpython-e84624450dc0494271119018c699372245d724d9.tar.gz
cpython-e84624450dc0494271119018c699372245d724d9.zip
gh-132734: Add new constants for Bluetooth sockets (GH-132735)
Diffstat (limited to 'Lib/test/test_socket.py')
-rw-r--r--Lib/test/test_socket.py62
1 files changed, 61 insertions, 1 deletions
diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
index 8a3793b9072..ed45180a5f7 100644
--- a/Lib/test/test_socket.py
+++ b/Lib/test/test_socket.py
@@ -2606,7 +2606,7 @@ class BasicVSOCKTest(unittest.TestCase):
socket.SO_VM_SOCKETS_BUFFER_MIN_SIZE))
-@unittest.skipUnless(HAVE_SOCKET_BLUETOOTH,
+@unittest.skipUnless(hasattr(socket, 'AF_BLUETOOTH'),
'Bluetooth sockets required for this test.')
class BasicBluetoothTest(unittest.TestCase):
@@ -2615,19 +2615,79 @@ class BasicBluetoothTest(unittest.TestCase):
socket.BDADDR_LOCAL
socket.AF_BLUETOOTH
socket.BTPROTO_RFCOMM
+ socket.SOL_RFCOMM
+
+ if sys.platform == "win32":
+ socket.SO_BTH_ENCRYPT
+ socket.SO_BTH_MTU
+ socket.SO_BTH_MTU_MAX
+ socket.SO_BTH_MTU_MIN
if sys.platform != "win32":
socket.BTPROTO_HCI
socket.SOL_HCI
socket.BTPROTO_L2CAP
+ socket.SOL_L2CAP
socket.BTPROTO_SCO
+ socket.SOL_SCO
+ socket.HCI_DATA_DIR
if sys.platform == "linux":
+ socket.SOL_BLUETOOTH
+ socket.HCI_DEV_NONE
socket.HCI_CHANNEL_RAW
socket.HCI_CHANNEL_USER
socket.HCI_CHANNEL_MONITOR
socket.HCI_CHANNEL_CONTROL
socket.HCI_CHANNEL_LOGGING
+ socket.HCI_TIME_STAMP
+ socket.BT_SECURITY
+ socket.BT_SECURITY_SDP
+ socket.BT_FLUSHABLE
+ socket.BT_POWER
+ socket.BT_CHANNEL_POLICY
+ socket.BT_CHANNEL_POLICY_BREDR_ONLY
+ socket.BT_PHY
+ socket.BT_PHY_BR_1M_1SLOT
+ socket.BT_MODE
+ socket.BT_MODE_BASIC
+ socket.BT_VOICE
+ socket.BT_VOICE_TRANSPARENT
+ socket.BT_VOICE_CVSD_16BIT
+ socket.BT_CODEC
+ socket.L2CAP_LM
+ socket.L2CAP_LM_MASTER
+ socket.L2CAP_LM_AUTH
+
+ if sys.platform in ("linux", "freebsd"):
+ socket.BDADDR_BREDR
+ socket.BDADDR_LE_PUBLIC
+ socket.BDADDR_LE_RANDOM
+ socket.HCI_FILTER
+
+ if sys.platform.startswith(("freebsd", "netbsd", "dragonfly")):
+ socket.SO_L2CAP_IMTU
+ socket.SO_L2CAP_FLUSH
+ socket.SO_RFCOMM_MTU
+ socket.SO_RFCOMM_FC_INFO
+ socket.SO_SCO_MTU
+
+ if sys.platform == "freebsd":
+ socket.SO_SCO_CONNINFO
+
+ if sys.platform.startswith(("netbsd", "dragonfly")):
+ socket.SO_HCI_EVT_FILTER
+ socket.SO_HCI_PKT_FILTER
+ socket.SO_L2CAP_IQOS
+ socket.SO_L2CAP_LM
+ socket.L2CAP_LM_AUTH
+ socket.SO_RFCOMM_LM
+ socket.RFCOMM_LM_AUTH
+ socket.SO_SCO_HANDLE
+
+@unittest.skipUnless(HAVE_SOCKET_BLUETOOTH,
+ 'Bluetooth sockets required for this test.')
+class BluetoothTest(unittest.TestCase):
def testCreateRfcommSocket(self):
with socket.socket(socket.AF_BLUETOOTH, socket.SOCK_STREAM, socket.BTPROTO_RFCOMM) as s: