2
0

mod.rs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. use digest::dev::{feed_rand_16mib, fixed_reset_test};
  2. use digest::new_test;
  3. use hex_literal::hex;
  4. use sha2::{Digest, Sha224, Sha256, Sha384, Sha512, Sha512_224, Sha512_256};
  5. new_test!(sha224_main, "sha224", Sha224, fixed_reset_test);
  6. new_test!(sha256_main, "sha256", Sha256, fixed_reset_test);
  7. new_test!(sha512_224_main, "sha512_224", Sha512_224, fixed_reset_test);
  8. new_test!(sha512_256_main, "sha512_256", Sha512_256, fixed_reset_test);
  9. new_test!(sha384_main, "sha384", Sha384, fixed_reset_test);
  10. new_test!(sha512_main, "sha512", Sha512, fixed_reset_test);
  11. #[test]
  12. fn sha256_rand() {
  13. let mut h = Sha256::new();
  14. feed_rand_16mib(&mut h);
  15. assert_eq!(
  16. h.finalize()[..],
  17. hex!("45f51fead87328fe837a86f4f1ac0eb15116ab1473adc0423ef86c62eb2320c7")[..]
  18. );
  19. }
  20. #[test]
  21. #[rustfmt::skip]
  22. fn sha512_rand() {
  23. let mut h = Sha512::new();
  24. feed_rand_16mib(&mut h);
  25. assert_eq!(
  26. h.finalize()[..],
  27. hex!("
  28. 9084d75a7c0721541d737b6171eb465dc9ba08a119a182a8508484aa27a176cd
  29. e7c2103b108393eb024493ced4aac56be6f57222cac41b801f11494886264997
  30. ")[..]
  31. );
  32. }