diff options
Diffstat (limited to 'Lib/test/test_cgi.py')
| -rw-r--r-- | Lib/test/test_cgi.py | 19 | 
1 files changed, 13 insertions, 6 deletions
diff --git a/Lib/test/test_cgi.py b/Lib/test/test_cgi.py index 1127dd1..715bd73 100644 --- a/Lib/test/test_cgi.py +++ b/Lib/test/test_cgi.py @@ -1,4 +1,4 @@ -from test.support import run_unittest, check_warnings +from test.support import check_warnings  import cgi  import os  import sys @@ -307,6 +307,17 @@ Content-Type: text/plain                  got = getattr(files[x], k)                  self.assertEqual(got, exp) +    def test_fieldstorage_as_context_manager(self): +        fp = BytesIO(b'x' * 10) +        env = {'REQUEST_METHOD': 'PUT'} +        with cgi.FieldStorage(fp=fp, environ=env) as fs: +            content = fs.file.read() +            self.assertFalse(fs.file.closed) +        self.assertTrue(fs.file.closed) +        self.assertEqual(content, 'x' * 10) +        with self.assertRaisesRegex(ValueError, 'I/O operation on closed file'): +            fs.file.read() +      _qs_result = {          'key1': 'value1',          'key2': ['value2x', 'value2y'], @@ -481,9 +492,5 @@ Content-Transfer-Encoding: binary  --AaB03x--  """ - -def test_main(): -    run_unittest(CgiTests) -  if __name__ == '__main__': -    test_main() +    unittest.main()  | 
