mirror of
https://github.com/python/cpython.git
synced 2025-09-27 02:39:58 +00:00
Issue #5824: Merge socketserver tests from 3.5
This commit is contained in:
commit
510addf63f
2 changed files with 19 additions and 28 deletions
|
@ -120,11 +120,6 @@ BaseServer:
|
||||||
|
|
||||||
# Author of the BaseServer patch: Luke Kenneth Casson Leighton
|
# Author of the BaseServer patch: Luke Kenneth Casson Leighton
|
||||||
|
|
||||||
# XXX Warning!
|
|
||||||
# There is a test suite for this module, but it cannot be run by the
|
|
||||||
# standard regression test.
|
|
||||||
# To run it manually, run Lib/test/test_socketserver.py.
|
|
||||||
|
|
||||||
__version__ = "0.4"
|
__version__ = "0.4"
|
||||||
|
|
||||||
|
|
||||||
|
@ -755,9 +750,6 @@ class StreamRequestHandler(BaseRequestHandler):
|
||||||
|
|
||||||
class DatagramRequestHandler(BaseRequestHandler):
|
class DatagramRequestHandler(BaseRequestHandler):
|
||||||
|
|
||||||
# XXX Regrettably, I cannot get this working on Linux;
|
|
||||||
# s.recvfrom() doesn't return a meaningful client address.
|
|
||||||
|
|
||||||
"""Define self.rfile and self.wfile for datagram sockets."""
|
"""Define self.rfile and self.wfile for datagram sockets."""
|
||||||
|
|
||||||
def setup(self):
|
def setup(self):
|
||||||
|
|
|
@ -161,6 +161,8 @@ class SocketServerTest(unittest.TestCase):
|
||||||
|
|
||||||
def dgram_examine(self, proto, addr):
|
def dgram_examine(self, proto, addr):
|
||||||
s = socket.socket(proto, socket.SOCK_DGRAM)
|
s = socket.socket(proto, socket.SOCK_DGRAM)
|
||||||
|
if HAVE_UNIX_SOCKETS and proto == socket.AF_UNIX:
|
||||||
|
s.bind(self.pickaddr(proto))
|
||||||
s.sendto(TEST_STR, addr)
|
s.sendto(TEST_STR, addr)
|
||||||
buf = data = receive(s, 100)
|
buf = data = receive(s, 100)
|
||||||
while data and b'\n' not in buf:
|
while data and b'\n' not in buf:
|
||||||
|
@ -223,27 +225,24 @@ class SocketServerTest(unittest.TestCase):
|
||||||
socketserver.DatagramRequestHandler,
|
socketserver.DatagramRequestHandler,
|
||||||
self.dgram_examine)
|
self.dgram_examine)
|
||||||
|
|
||||||
# Alas, on Linux (at least) recvfrom() doesn't return a meaningful
|
@requires_unix_sockets
|
||||||
# client address so this cannot work:
|
def test_UnixDatagramServer(self):
|
||||||
|
self.run_server(socketserver.UnixDatagramServer,
|
||||||
|
socketserver.DatagramRequestHandler,
|
||||||
|
self.dgram_examine)
|
||||||
|
|
||||||
# @requires_unix_sockets
|
@requires_unix_sockets
|
||||||
# def test_UnixDatagramServer(self):
|
def test_ThreadingUnixDatagramServer(self):
|
||||||
# self.run_server(socketserver.UnixDatagramServer,
|
self.run_server(socketserver.ThreadingUnixDatagramServer,
|
||||||
# socketserver.DatagramRequestHandler,
|
socketserver.DatagramRequestHandler,
|
||||||
# self.dgram_examine)
|
self.dgram_examine)
|
||||||
#
|
|
||||||
# @requires_unix_sockets
|
@requires_unix_sockets
|
||||||
# def test_ThreadingUnixDatagramServer(self):
|
@requires_forking
|
||||||
# self.run_server(socketserver.ThreadingUnixDatagramServer,
|
def test_ForkingUnixDatagramServer(self):
|
||||||
# socketserver.DatagramRequestHandler,
|
self.run_server(ForkingUnixDatagramServer,
|
||||||
# self.dgram_examine)
|
socketserver.DatagramRequestHandler,
|
||||||
#
|
self.dgram_examine)
|
||||||
# @requires_unix_sockets
|
|
||||||
# @requires_forking
|
|
||||||
# def test_ForkingUnixDatagramServer(self):
|
|
||||||
# self.run_server(socketserver.ForkingUnixDatagramServer,
|
|
||||||
# socketserver.DatagramRequestHandler,
|
|
||||||
# self.dgram_examine)
|
|
||||||
|
|
||||||
@reap_threads
|
@reap_threads
|
||||||
def test_shutdown(self):
|
def test_shutdown(self):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue