diff options
author | Fred Drake <fdrake@acm.org> | 2001-05-09 21:11:59 (GMT) |
---|---|---|
committer | Fred Drake <fdrake@acm.org> | 2001-05-09 21:11:59 (GMT) |
commit | bc7809b52930e8d17ffffb78b2513c70cf808678 (patch) | |
tree | d92b8953a8245cdc8d88889c5d0823b5c0e3c207 | |
parent | d0de57cfbb7001a15935d09bddf3ef696956b32a (diff) | |
download | cpython-bc7809b52930e8d17ffffb78b2513c70cf808678.zip cpython-bc7809b52930e8d17ffffb78b2513c70cf808678.tar.gz cpython-bc7809b52930e8d17ffffb78b2513c70cf808678.tar.bz2 |
Update the tests for the fcntl module to check passing in file objects,
and using the constants defined there instead of FCNTL.
-rwxr-xr-x | Lib/test/test_fcntl.py | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/Lib/test/test_fcntl.py b/Lib/test/test_fcntl.py index 1fa0aa2..a64a5e1 100755 --- a/Lib/test/test_fcntl.py +++ b/Lib/test/test_fcntl.py @@ -4,33 +4,43 @@ """ import struct import fcntl -import FCNTL import os, sys from test_support import verbose, TESTFN filename = TESTFN -# the example from the library docs -f = open(filename, 'w') -rv = fcntl.fcntl(f.fileno(), FCNTL.F_SETFL, os.O_NONBLOCK) -if verbose: - print 'Status from fnctl with O_NONBLOCK: ', rv - if sys.platform in ('netbsd1', 'Darwin1.2', 'darwin1', 'freebsd2', 'freebsd3', 'freebsd4', 'freebsd5', 'bsdos2', 'bsdos3', 'bsdos4', 'openbsd', 'openbsd2'): - lockdata = struct.pack('lxxxxlxxxxlhh', 0, 0, 0, FCNTL.F_WRLCK, 0) + lockdata = struct.pack('lxxxxlxxxxlhh', 0, 0, 0, fcntl.F_WRLCK, 0) elif sys.platform in ['aix3', 'aix4', 'hp-uxB', 'unixware7']: - lockdata = struct.pack('hhlllii', FCNTL.F_WRLCK, 0, 0, 0, 0, 0, 0) + lockdata = struct.pack('hhlllii', fcntl.F_WRLCK, 0, 0, 0, 0, 0, 0) else: - lockdata = struct.pack('hhllhh', FCNTL.F_WRLCK, 0, 0, 0, 0, 0) + lockdata = struct.pack('hhllhh', fcntl.F_WRLCK, 0, 0, 0, 0, 0) if verbose: print 'struct.pack: ', `lockdata` -rv = fcntl.fcntl(f.fileno(), FCNTL.F_SETLKW, lockdata) + +# the example from the library docs +f = open(filename, 'w') +rv = fcntl.fcntl(f.fileno(), fcntl.F_SETFL, os.O_NONBLOCK) +if verbose: + print 'Status from fnctl with O_NONBLOCK: ', rv + +rv = fcntl.fcntl(f.fileno(), fcntl.F_SETLKW, lockdata) if verbose: print 'String from fcntl with F_SETLKW: ', `rv` f.close() os.unlink(filename) + + +# Again, but pass the file rather than numeric descriptor: +f = open(filename, 'w') +rv = fcntl.fcntl(f, fcntl.F_SETFL, os.O_NONBLOCK) + +rv = fcntl.fcntl(f, fcntl.F_SETLKW, lockdata) + +f.close() +os.unlink(filename) |