def test_MD5signature(self): """Test generating a signature""" for algorithm, expected in { 'md5': ('698d51a19d8a121ce581499d7b701668', 'bcbe3365e6ac95ea2c0343a2395834dd'), 'sha1': ('6216f8a75fd5bb3d5f22b6f9958cdede3fc086c2', '1c6637a8f2e1f75e06ff9984894d6bd16a3a36a9'), 'sha256': ('f6e0a1e2ac41945a9aa7ff8a8aaa0cebc12a3bcc981a929ad5cf810a090e11ae', '9b871512327c09ce91dd649b3f96a63b7408ef267c8cc5710114e629730cb61f'), }.items(): s = hash_signature('111', hash_format=algorithm) assert expected[0] == s, s s = hash_signature('222', hash_format=algorithm) assert expected[1] == s, s
def test_MD5signature(self): """Test generating a signature""" for algorithm, expected in { 'md5': ('698d51a19d8a121ce581499d7b701668', 'bcbe3365e6ac95ea2c0343a2395834dd'), 'sha1': ('6216f8a75fd5bb3d5f22b6f9958cdede3fc086c2', '1c6637a8f2e1f75e06ff9984894d6bd16a3a36a9'), 'sha256': ('f6e0a1e2ac41945a9aa7ff8a8aaa0cebc12a3bcc981a929ad5cf810a090e11ae', '9b871512327c09ce91dd649b3f96a63b7408ef267c8cc5710114e629730cb61f'), }.items(): # if the current platform does not support the algorithm we're looking at, # skip the test steps for that algorithm, but display a warning to the user if algorithm not in ALLOWED_HASH_FORMATS: warnings.warn("Missing hash algorithm {} on this platform, cannot test with it".format(algorithm), ResourceWarning) else: s = hash_signature('111', hash_format=algorithm) assert expected[0] == s, s s = hash_signature('222', hash_format=algorithm) assert expected[1] == s, s
def get_csig(self): """ Generate a node's content signature, the digested signature of its content. node - the node cache - alternate node to use for the signature cache returns - the content signature """ try: return self.ninfo.csig except AttributeError: pass contents = self.get_contents() csig = hash_signature(contents) self.get_ninfo().csig = csig return csig