diff options
author | Guido van Rossum <guido@python.org> | 2002-08-17 11:41:01 +0000 |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2002-08-17 11:41:01 +0000 |
commit | bf7eaf9e91f15974d11ba66387b40809758b50ac (patch) | |
tree | d90acb45e6e5294ea7bc3ade87c87f4cbabaf3a5 /Lib/test/tf_inherit_check.py | |
parent | a835d97c19519ca676a60d6905cb9e056af08b1b (diff) | |
download | cpython-bf7eaf9e91f15974d11ba66387b40809758b50ac.tar.gz |
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 0000000000..a8b80d2726 --- /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) |