summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_socket.py
diff options
context:
space:
mode:
authorBerker Peksag <berker.peksag@gmail.com>2016-02-18 15:34:32 (GMT)
committerBerker Peksag <berker.peksag@gmail.com>2016-02-18 15:34:32 (GMT)
commit31a252b7f3d4fd5af91d388daac6fce6c3115a22 (patch)
tree982c60aea5fe9431338150e3a7cf405af3c43ae0 /Lib/test/test_socket.py
parenta2b64e630e54027b5f49bf9f6cbdd4efb51aba4e (diff)
parent3fe64d0c5ca5f1dc9723b9ef436d033f390b19f0 (diff)
downloadcpython-31a252b7f3d4fd5af91d388daac6fce6c3115a22.zip
cpython-31a252b7f3d4fd5af91d388daac6fce6c3115a22.tar.gz
cpython-31a252b7f3d4fd5af91d388daac6fce6c3115a22.tar.bz2
Issue #16915: Clarify that mode parameter of socket.makefile() does not accept
the same values as open().
Diffstat (limited to 'Lib/test/test_socket.py')
-rw-r--r--Lib/test/test_socket.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
index 99707ce..02bc0c0 100644
--- a/Lib/test/test_socket.py
+++ b/Lib/test/test_socket.py
@@ -1374,6 +1374,20 @@ class GeneralModuleTests(unittest.TestCase):
self.assertRaises(ValueError, fp.writable)
self.assertRaises(ValueError, fp.seekable)
+ def test_makefile_mode(self):
+ for mode in 'r', 'rb', 'rw', 'w', 'wb':
+ with self.subTest(mode=mode):
+ with socket.socket() as sock:
+ with sock.makefile(mode) as fp:
+ self.assertEqual(fp.mode, mode)
+
+ def test_makefile_invalid_mode(self):
+ for mode in 'rt', 'x', '+', 'a':
+ with self.subTest(mode=mode):
+ with socket.socket() as sock:
+ with self.assertRaisesRegex(ValueError, 'invalid mode'):
+ sock.makefile(mode)
+
def test_pickle(self):
sock = socket.socket()
with sock: