You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
851 B
Python

5 years ago
from gevent import monkey; monkey.patch_all()
import socket
import unittest
class TestSocketpair(unittest.TestCase):
def test_makefile(self):
msg = b'hello world'
x, y = socket.socketpair()
x.sendall(msg)
x.close()
with y.makefile('rb') as f:
read = f.read()
self.assertEqual(msg, read)
y.close()
def test_fromfd(self):
msg = b'hello world'
x, y = socket.socketpair()
xx = socket.fromfd(x.fileno(), x.family, socket.SOCK_STREAM)
x.close()
yy = socket.fromfd(y.fileno(), y.family, socket.SOCK_STREAM)
y.close()
xx.sendall(msg)
xx.close()
with yy.makefile('rb') as f:
read = f.read()
self.assertEqual(msg, read)
yy.close()
if __name__ == '__main__':
unittest.main()