Commit bb311591 authored by ben's avatar ben

Unit tests for cmodule


git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup@153 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
parent 4c62390b
import unittest
from commontest import *
from C import *
from rpath import *
class CTest(unittest.TestCase):
"""Test the C module by comparing results to python functions"""
def test_make_dict(self):
"""Test making stat dictionaries"""
rp1 = RPath(Globals.local_connection, "/dev/ttyS1")
rp2 = RPath(Globals.local_connection, "./ctest.py")
rp3 = RPath(Globals.local_connection, "aestu/aeutoheu/oeu")
rp4 = RPath(Globals.local_connection, "testfiles/various_file_types/symbolic_link")
rp5 = RPath(Globals.local_connection, "testfiles/various_file_types/fifo")
for rp in [rp1, rp2, rp3, rp4, rp5]:
dict1 = rp.make_file_dict_old()
dict2 = C.make_file_dict(rp.path)
if dict1 != dict2:
print "Python dictionary: ", dict1
print "not equal to C dictionary: ", dict2
print "for path ", rp.path
assert 0
def test_strlong(self):
"""Test str2long and long2str"""
self.assertRaises(TypeError, C.long2str, "hello")
self.assertRaises(TypeError, C.str2long, 34)
self.assertRaises(TypeError, C.str2long, "oeuo")
self.assertRaises(TypeError, C.str2long, "oeuoaoeuaoeu")
for s in ["\0\0\0\0\0\0\0", "helloto",
"\xff\xff\xff\xff\xff\xff\xff", "randoms"]:
assert len(s) == 7, repr(s)
s_out = C.long2str(C.str2long(s))
assert s_out == s, (s_out, C.str2long(s), s)
for l in 0L, 1L, 4000000000L, 34234L, 234234234L:
assert C.str2long(C.long2str(l)) == l
if __name__ == "__main__": unittest.main()
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment