seekia/internal/cryptography/blake3/blake3_test.go

36 lines
1 KiB
Go

package blake3_test
import "seekia/internal/cryptography/blake3"
import "testing"
func TestHashes(t *testing.T) {
testData := []byte("CureRacialLoneliness.BeautifyTheHumanSpecies.Seekia:BeRaceAware.")
expectedHashResult := "ea3c0d045257e361dd15b59c1934195990d9a03c634bc56373ce612d30d755cf5c6be2bfbeacbdf3086edcd224c01e2e3d40edcd4da4e536b6cc7d9e6296ca4e"
hashResult, err := blake3.GetBlake3HashAsHexString(64, testData)
if (err != nil) {
t.Fatalf("Failed to get 64 byte blake3 hash: " + err.Error())
}
if (hashResult != expectedHashResult){
t.Fatalf("Blake3 512 bits hash result is not expected: " + hashResult)
}
_, err = blake3.GetBlake3HashAsBase32String(32, testData)
if (err == nil) {
t.Fatalf("Failed to get correct length error on base32 hash.")
}
outputHex, err := blake3.GetBlake3HashAsHexString(16, testData)
if (err != nil) {
t.Fatalf("Failed to get 16 byte blake3 hash: " + err.Error())
}
if (outputHex != "ea3c0d045257e361dd15b59c19341959"){
t.Fatalf("16 byte blake3 hash provides invalid output: " + outputHex)
}
}