MCPcopy Index your code
hub / github.com/python/cpython / check

Method check

Lib/test/test_hashlib.py:526–549  ·  view source on GitHub ↗
(self, name, data, hexdigest, shake=False, **kwargs)

Source from the content-addressed store, hash-verified

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()

Callers 15

test_case_md5_0Method · 0.95
test_case_md5_1Method · 0.95
test_case_md5_2Method · 0.95
test_case_md5_hugeMethod · 0.95
test_case_md5_uintmaxMethod · 0.95
test_case_sha1_0Method · 0.95
test_case_sha1_1Method · 0.95
test_case_sha1_2Method · 0.95
test_case_sha1_3Method · 0.95
test_case_sha224_0Method · 0.95
test_case_sha224_1Method · 0.95
test_case_sha224_2Method · 0.95

Calls 7

check_file_digestMethod · 0.95
assertGreaterEqualMethod · 0.80
hexdigestMethod · 0.80
lowerMethod · 0.45
assertEqualMethod · 0.45
digestMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected