mirror of https://github.com/python/cpython
Add tests for posix O_SHLOCK & O_EXLOCK. Missed checking this in with
posixmodule.c 2.335. Really should be considered part of patch #1103951.
This commit is contained in:
parent
2ab0ae6a54
commit
9847000267
|
@ -94,6 +94,37 @@ class PosixTester(unittest.TestCase):
|
|||
self.fdopen_helper('r')
|
||||
self.fdopen_helper('r', 100)
|
||||
|
||||
def test_osexlock(self):
|
||||
if hasattr(posix, "O_EXLOCK"):
|
||||
fd = os.open(test_support.TESTFN,
|
||||
os.O_WRONLY|os.O_EXLOCK|os.O_CREAT)
|
||||
self.assertRaises(OSError, os.open, test_support.TESTFN,
|
||||
os.O_WRONLY|os.O_EXLOCK|os.O_NONBLOCK)
|
||||
os.close(fd)
|
||||
|
||||
if hasattr(posix, "O_SHLOCK"):
|
||||
fd = os.open(test_support.TESTFN,
|
||||
os.O_WRONLY|os.O_SHLOCK|os.O_CREAT)
|
||||
self.assertRaises(OSError, os.open, test_support.TESTFN,
|
||||
os.O_WRONLY|os.O_EXLOCK|os.O_NONBLOCK)
|
||||
os.close(fd)
|
||||
|
||||
def test_osshlock(self):
|
||||
if hasattr(posix, "O_SHLOCK"):
|
||||
fd1 = os.open(test_support.TESTFN,
|
||||
os.O_WRONLY|os.O_SHLOCK|os.O_CREAT)
|
||||
fd2 = os.open(test_support.TESTFN,
|
||||
os.O_WRONLY|os.O_SHLOCK|os.O_CREAT)
|
||||
os.close(fd2)
|
||||
os.close(fd1)
|
||||
|
||||
if hasattr(posix, "O_EXLOCK"):
|
||||
fd = os.open(test_support.TESTFN,
|
||||
os.O_WRONLY|os.O_SHLOCK|os.O_CREAT)
|
||||
self.assertRaises(OSError, os.open, test_support.TESTFN,
|
||||
os.O_RDONLY|os.O_EXLOCK|os.O_NONBLOCK)
|
||||
os.close(fd)
|
||||
|
||||
def test_fstat(self):
|
||||
if hasattr(posix, 'fstat'):
|
||||
fp = open(test_support.TESTFN)
|
||||
|
|
Loading…
Reference in New Issue