#!/usr/bin/python import unittest import apt_pkg class testHashes(unittest.TestCase): " test the hashsum functions against strings and files " def testMD5(self): # simple s = "foo" s_md5 = "acbd18db4cc2f85cedef654fccc4a4d8" res = apt_pkg.md5sum(s) self.assert_(res == s_md5) # file res = apt_pkg.md5sum(open("hashsum_test.data")) self.assert_(res == s_md5) # with zero (\0) in the string s = "foo\0bar" s_md5 = "f6f5f8cd0cb63668898ba29025ae824e" res = apt_pkg.md5sum(s) self.assert_(res == s_md5) # file res = apt_pkg.md5sum(open("hashsum_test_with_zero.data")) self.assert_(res == s_md5) def testSHA1(self): # simple s = "foo" s_hash = "0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33" res = apt_pkg.sha1sum(s) self.assert_(res == s_hash) # file res = apt_pkg.sha1sum(open("hashsum_test.data")) self.assert_(res == s_hash) # with zero (\0) in the string s = "foo\0bar" s_hash = "e2c300a39311a2dfcaff799528415cb74c19317f" res = apt_pkg.sha1sum(s) self.assert_(res == s_hash) # file res = apt_pkg.sha1sum(open("hashsum_test_with_zero.data")) self.assert_(res == s_hash) def testSHA256(self): # simple s = "foo" s_hash = \ "2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae" res = apt_pkg.sha256sum(s) self.assert_(res == s_hash) # file res = apt_pkg.sha256sum(open("hashsum_test.data")) self.assert_(res == s_hash) # with zero (\0) in the string s = "foo\0bar" s_hash = \ "d6b681bfce7155d44721afb79c296ef4f0fa80a9dd6b43c5cf74dd0f64c85512" res = apt_pkg.sha256sum(s) self.assert_(res == s_hash) # file res = apt_pkg.sha256sum(open("hashsum_test_with_zero.data")) self.assert_(res == s_hash) if __name__ == "__main__": unittest.main()