(self, name, data, hexdigest, shake=False, **kwargs)
| 524 | self.assertEqual(h.hexdigest(), "8a268e83dd30528bc0907fa2008c91de8f090a0b6e0e60a5ff0d999d8485526f") |
| 525 | |
| 526 | def check(self, name, data, hexdigest, shake=False, **kwargs): |
| 527 | length = len(hexdigest)//2 |
| 528 | hexdigest = hexdigest.lower() |
| 529 | constructors = self.constructors_to_test[name] |
| 530 | # 2 is for hashlib.name(...) and hashlib.new(name, ...) |
| 531 | self.assertGreaterEqual(len(constructors), 2) |
| 532 | for hash_object_constructor in constructors: |
| 533 | m = hash_object_constructor(data, **kwargs) |
| 534 | computed = m.hexdigest() if not shake else m.hexdigest(length) |
| 535 | self.assertEqual( |
| 536 | computed, hexdigest, |
| 537 | "Hash algorithm %s constructed using %s returned hexdigest" |
| 538 | " %r for %d byte input data that should have hashed to %r." |
| 539 | % (name, hash_object_constructor, |
| 540 | computed, len(data), hexdigest)) |
| 541 | computed = m.digest() if not shake else m.digest(length) |
| 542 | digest = bytes.fromhex(hexdigest) |
| 543 | self.assertEqual(computed, digest) |
| 544 | if not shake: |
| 545 | self.assertEqual(len(digest), m.digest_size) |
| 546 | |
| 547 | if not shake and kwargs.get("key") is None: |
| 548 | # skip shake and blake2 extended parameter tests |
| 549 | self.check_file_digest(name, data, hexdigest) |
| 550 | |
| 551 | def check_file_digest(self, name, data, hexdigest): |
| 552 | hexdigest = hexdigest.lower() |
no test coverage detected