diff options
author | Guido van Rossum <guido@python.org> | 2002-08-17 11:41:01 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2002-08-17 11:41:01 (GMT) |
commit | 787410680b9866d56a1ec1915ebbf41ab5cac7a0 (patch) | |
tree | f10e42f67d9365ed7912d6c2334be48bd147c639 /Lib/test/tf_inherit_check.py | |
parent | b898d9fc9a434eb9ae9d3d10d0f1d379492cd6f6 (diff) | |
download | cpython-787410680b9866d56a1ec1915ebbf41ab5cac7a0.zip cpython-787410680b9866d56a1ec1915ebbf41ab5cac7a0.tar.gz cpython-787410680b9866d56a1ec1915ebbf41ab5cac7a0.tar.bz2 |
Patch by Zack W to make test_noinherit() more robust: spawn a Python
subprocess that does the right checks. This now works on Windows as
well.
Diffstat (limited to 'Lib/test/tf_inherit_check.py')
-rw-r--r-- | Lib/test/tf_inherit_check.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Lib/test/tf_inherit_check.py b/Lib/test/tf_inherit_check.py new file mode 100644 index 0000000..a8b80d2 --- /dev/null +++ b/Lib/test/tf_inherit_check.py @@ -0,0 +1,25 @@ +# Helper script for test_tempfile.py. argv[2] is the number of a file +# descriptor which should _not_ be open. Check this by attempting to +# write to it -- if we succeed, something is wrong. + +import sys +import os + +verbose = (sys.argv[1] == 'v') +try: + fd = int(sys.argv[2]) + + try: + os.write(fd, "blat") + except os.error: + # Success -- could not write to fd. + sys.exit(0) + else: + if verbose: + sys.stderr.write("fd %d is open in child" % fd) + sys.exit(1) + +except StandardError: + if verbose: + raise + sys.exit(1) |