diff options
author | Matthieu Patou <mat@matws.net> | 2010-01-08 13:10:30 +0300 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2010-01-21 07:11:16 +1300 |
commit | 3789ba2654fe958b80ebafeb380a1a2258dc9e32 (patch) | |
tree | 0f36bd7c97762d606b71b8889570e827b9050a5f /source4/scripting | |
parent | f0954c73723618f905cc8082546e9b4cf3e39ddf (diff) | |
download | samba-3789ba2654fe958b80ebafeb380a1a2258dc9e32.tar.gz samba-3789ba2654fe958b80ebafeb380a1a2258dc9e32.tar.bz2 samba-3789ba2654fe958b80ebafeb380a1a2258dc9e32.zip |
s4-python: add more unit tests for xattr manipulation in python
Diffstat (limited to 'source4/scripting')
-rw-r--r-- | source4/scripting/python/samba/tests/xattr.py | 50 |
1 files changed, 39 insertions, 11 deletions
diff --git a/source4/scripting/python/samba/tests/xattr.py b/source4/scripting/python/samba/tests/xattr.py index f0e6f31515..9beff93933 100644 --- a/source4/scripting/python/samba/tests/xattr.py +++ b/source4/scripting/python/samba/tests/xattr.py @@ -17,34 +17,62 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # -from samba.xattr import wrap_getxattr, wrap_setxattr, is_xattr_supported +import samba.xattr_native, samba.xattr_tdb from samba.dcerpc import xattr from samba.ndr import ndr_pack, ndr_unpack from unittest import TestCase import random import os +import tdb class XattrTests(TestCase): - def test_set_packeddata(self): - if is_xattr_supported(): + def test_set_xattr_native(self): + if samba.xattr_native.is_xattr_supported(): random.seed() - - tempf=os.path.join(os.environ("SELFTEST_PREFIX"),"pytests"+str(int(100000*random.random()))) + path=os.environ['SELFTEST_PREFIX'] + tempf=os.path.join(path,"pytests"+str(int(100000*random.random()))) ntacl=xattr.NTACL() ntacl.version = 1 open(tempf, 'w').write("empty") - wrap_setxattr(tempf,"user.unittests",ndr_pack(ntacl)) + samba.xattr_native.wrap_setxattr(tempf,"user.unittests",ndr_pack(ntacl)) os.unlink(tempf) - def test_set_and_get(self): - if is_xattr_supported(): + def test_set_and_get_native(self): + if samba.xattr_native.is_xattr_supported(): random.seed() - tempf=os.path.join(os.environ("SELFTEST_PREFIX"),"pytests"+str(int(100000*random.random()))) + path=os.environ['SELFTEST_PREFIX'] + tempf=os.path.join(path,"pytests"+str(int(100000*random.random()))) reftxt="this is a test" open(tempf, 'w').write("empty") - wrap_setxattr(tempf,"user.unittests",reftxt) - text = wrap_getxattr(tempf,"user.unittests") + samba.xattr_native.wrap_setxattr(tempf,"user.unittests",reftxt) + text = samba.xattr_native.wrap_getxattr(tempf,"user.unittests") self.assertEquals(text,reftxt) os.unlink(tempf) + def test_set_xattr_tdb(self): + path=os.environ['SELFTEST_PREFIX'] + eadb=tdb.Tdb(os.path.join(path,"eadb.tdb"), 50000, tdb.DEFAULT, os.O_CREAT|os.O_RDWR) + random.seed() + tempf=os.path.join(path,"pytests"+str(int(100000*random.random()))) + ntacl=xattr.NTACL() + ntacl.version = 1 + open(tempf, 'w').write("empty") + samba.xattr_tdb.wrap_setxattr(eadb,tempf,"user.unittests",ndr_pack(ntacl)) + os.unlink(tempf) + os.unlink(os.path.join(path,"eadb.tdb")) + + def test_set_and_get_tdb(self): + path=os.environ['SELFTEST_PREFIX'] + eadb=tdb.Tdb(os.path.join(path,"eadb.tdb"), 50000, tdb.DEFAULT, os.O_CREAT|os.O_RDWR) + random.seed() + tempf=os.path.join(path,"pytests"+str(int(100000*random.random()))) + reftxt="this is a test" + open(tempf, 'w').write("empty") + samba.xattr_tdb.wrap_setxattr(eadb,tempf,"user.unittests",reftxt) + text = samba.xattr_tdb.wrap_getxattr(eadb,tempf,"user.unittests") + self.assertEquals(text,reftxt) + os.unlink(tempf) + os.unlink(os.path.join(path,"eadb.tdb")) + + |