summaryrefslogtreecommitdiffstatshomepage
path: root/tests/net_hosted/accept_timeout.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/net_hosted/accept_timeout.py')
-rw-r--r--tests/net_hosted/accept_timeout.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/net_hosted/accept_timeout.py b/tests/net_hosted/accept_timeout.py
new file mode 100644
index 0000000000..44b3b8c7cd
--- /dev/null
+++ b/tests/net_hosted/accept_timeout.py
@@ -0,0 +1,22 @@
+# test that socket.accept() on a socket with timeout raises ETIMEDOUT
+
+try:
+ import usocket as socket
+except:
+ import socket
+
+try:
+ socket.socket.settimeout
+except AttributeError:
+ print('SKIP')
+ raise SystemExit
+
+s = socket.socket()
+s.bind(socket.getaddrinfo('127.0.0.1', 8123)[0][-1])
+s.settimeout(1)
+s.listen(1)
+try:
+ s.accept()
+except OSError as er:
+ print(er.args[0] in (110, 'timed out')) # 110 is ETIMEDOUT; CPython uses a string
+s.close()