Пример #1
0
 def testNoCheckFile(self):
     """Verify return value when file to check does not exist."""
     filename = ''
     md5filename = ''
     self.assertFalse(cb_archive_hashing_lib.CheckMd5(
         filename, md5filename))
     self.clean_files = []
Пример #2
0
 def testNoMd5File(self):
     """Verify return value when md5 checksum file does not exist."""
     check_file = tempfile.NamedTemporaryFile()
     filename = check_file.name
     md5filename = ''
     self.assertFalse(cb_archive_hashing_lib.CheckMd5(
         filename, md5filename))
     self.clean_files = [filename]
Пример #3
0
 def testMd5FileBadFormat(self):
     """Verify return value when md5 file corrupt."""
     check_file = tempfile.NamedTemporaryFile()
     filename = check_file.name
     golden_file = tempfile.NamedTemporaryFile()
     golden_file.write('  ')
     golden_file.seek(0)
     md5filename = golden_file.name
     self.assertFalse(cb_archive_hashing_lib.CheckMd5(
         filename, md5filename))
     self.clean_files = [filename, md5filename]
Пример #4
0
 def testMd5Bad(self):
     """Verify return value when checksums disagree."""
     check_file = tempfile.NamedTemporaryFile()
     check_file.write('sample file content inserted here to be hashed')
     check_file.seek(0)
     filename = check_file.name
     golden_file = tempfile.NamedTemporaryFile()
     golden_file.write('This_is_likely_not_the_checksum' + '  ' + filename)
     golden_file.seek(0)
     md5filename = golden_file.name
     self.assertFalse(cb_archive_hashing_lib.CheckMd5(
         filename, md5filename))
     self.clean_files = [filename, md5filename]
Пример #5
0
 def testMd5Good(self):
     """Verify return value when checksums agree and are properly computed."""
     check_file = tempfile.NamedTemporaryFile()
     check_file.write('sample file content inserted here to be hashed')
     check_file.seek(0)
     # make a good md5 checksum
     hasher = hashlib.md5()
     for chunk in iter(lambda: check_file.read(128 * hasher.block_size),
                       ''):
         hasher.update(chunk)
     filename = check_file.name
     golden_file = tempfile.NamedTemporaryFile()
     golden_file.write(hasher.hexdigest() + '  ' + filename)
     golden_file.seek(0)
     md5filename = golden_file.name
     self.assertTrue(cb_archive_hashing_lib.CheckMd5(filename, md5filename))
     self.clean_files = [filename, md5filename]