1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
v/vlib/crypto/sha512/sha512_test.v
MatejMagat305 6bf6a40e0c
crypto: add .free() and .reset() methods to reduce memory leaks with -autofree (#16992)
* Fix unsafe pointer

I was compile vab with '-prod' and it was needed  to fix and it is of course warning

* Add files via upload

* reduce memory  leak s sha512

* add method .free() and .reset() for some
2023-01-16 17:30:40 +02:00

29 lines
1.3 KiB
V

// Copyright (c) 2019-2022 Alexander Medvednikov. All rights reserved.
// Use of this source code is governed by an MIT license
// that can be found in the LICENSE file.
import crypto.sha512
fn test_crypto_sha512() {
assert sha512.sum512('This is a sha512 checksum.'.bytes()).hex() == '4143e55fcba7e39b20f62a1368e5eb28f64a8859458886117ac66027832e0f9f5263daec688c439d2d0fa07059334668d39e59543039703dbb7e03ec9da7f8d7'
}
fn test_crypto_sha512_writer() {
mut digest := sha512.new_digest(.sha512)
digest.write('This is a'.bytes()) or { assert false }
digest.write(' sha512 checksum.'.bytes()) or { assert false }
sum := digest.checksum()
assert sum.hex() == '4143e55fcba7e39b20f62a1368e5eb28f64a8859458886117ac66027832e0f9f5263daec688c439d2d0fa07059334668d39e59543039703dbb7e03ec9da7f8d7'
}
fn test_crypto_sha512_writer_reset() {
mut digest := sha512.new_digest(.sha512)
digest.write('This is a'.bytes()) or { assert false }
digest.write(' sha512 checksum.'.bytes()) or { assert false }
_ = digest.checksum()
digest.reset()
digest.write('This is a'.bytes()) or { assert false }
digest.write(' sha512 checksum.'.bytes()) or { assert false }
sum := digest.checksum()
assert sum.hex() == '4143e55fcba7e39b20f62a1368e5eb28f64a8859458886117ac66027832e0f9f5263daec688c439d2d0fa07059334668d39e59543039703dbb7e03ec9da7f8d7'
}