10 class aclTest(unittest.TestCase):
11 """Unittests for ACLs"""
19 """tear down function"""
20 for fname in self.rmfiles:
22 for dname in self.rmdirs:
26 """create a temp file"""
27 fh, fname = tempfile.mkstemp(".test", "xattr-", ".")
28 self.rmfiles.append(fname)
32 """create a temp dir"""
33 dname = tempfile.mkdtemp(".test", "xattr-", ".")
34 self.rmdirs.append(dname)
37 def _getsymlink(self):
38 """create a symlink"""
39 fh, fname = self._getfile()
42 os.symlink(fname + ".non-existent", fname)
45 def testFromFile(self):
46 """Test loading ACLs from a file"""
47 _, fname = self._getfile()
48 acl1 = posix1e.ACL(file=fname)
49 self.failUnless(acl1.valid(), "ACL is not valid")
51 def testFromDir(self):
52 """Test loading ACLs from a directory"""
53 dname = self._getdir()
54 acl1 = posix1e.ACL(file=dname)
55 acl2 = posix1e.ACL(filedef=dname)
56 self.failUnless(acl1.valid(), "ACL is not valid")
57 # default ACLs might or might not be valid; missing ones are
58 # not valid, so we don't test acl2 for validity
61 """Test loading ACLs from a file descriptor"""
62 fd, _ = self._getfile()
63 acl1 = posix1e.ACL(fd=fd)
64 self.failUnless(acl1.valid(), "ACL is not valid")
66 if posix1e.HAS_ACL_FROM_MODE:
67 def testFromMode(self):
68 """Test loading ACLs from an octal mode"""
69 acl1 = posix1e.ACL(mode=0644)
70 self.failUnless(acl1.valid(), "ACL is not valid")
72 def testFromMode(self):
73 """Test loading ACLs from an octal mode (SKIPPED)"""
75 def testFromEmpty(self):
76 """Test creating an empty ACL"""
80 if __name__ == "__main__":