You've already forked go-digest
mirror of
https://github.com/opencontainers/go-digest.git
synced 2025-07-28 13:21:56 +03:00
TestFroms: use sub-tests
Use sub-tests to not fail early if an algorithm fails. With this change: === RUN TestFroms === RUN TestFroms/sha256 === RUN TestFroms/sha384 === RUN TestFroms/sha512 --- PASS: TestFroms (0.02s) --- PASS: TestFroms/sha256 (0.01s) --- PASS: TestFroms/sha384 (0.00s) --- PASS: TestFroms/sha512 (0.00s) PASS Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
@ -83,38 +83,40 @@ func TestFroms(t *testing.T) {
|
||||
}
|
||||
|
||||
for alg := range algorithms {
|
||||
h := alg.Hash()
|
||||
h.Write(p)
|
||||
expected := Digest(fmt.Sprintf("%s:%x", alg, h.Sum(nil)))
|
||||
t.Run(string(alg), func(t *testing.T) {
|
||||
h := alg.Hash()
|
||||
h.Write(p)
|
||||
expected := Digest(fmt.Sprintf("%s:%x", alg, h.Sum(nil)))
|
||||
|
||||
var readerDgst Digest
|
||||
readerDgst, err = alg.FromReader(bytes.NewReader(p))
|
||||
if err != nil {
|
||||
t.Fatalf("error calculating hash from reader: %v", err)
|
||||
}
|
||||
|
||||
dgsts := []Digest{
|
||||
alg.FromBytes(p),
|
||||
alg.FromString(string(p)),
|
||||
readerDgst,
|
||||
}
|
||||
|
||||
if alg == Canonical {
|
||||
readerDgst, err = FromReader(bytes.NewReader(p))
|
||||
var readerDgst Digest
|
||||
readerDgst, err = alg.FromReader(bytes.NewReader(p))
|
||||
if err != nil {
|
||||
t.Fatalf("error calculating hash from reader: %v", err)
|
||||
}
|
||||
|
||||
dgsts = append(dgsts,
|
||||
FromBytes(p),
|
||||
FromString(string(p)),
|
||||
readerDgst)
|
||||
}
|
||||
for _, dgst := range dgsts {
|
||||
if dgst != expected {
|
||||
t.Fatalf("unexpected digest %v != %v", dgst, expected)
|
||||
dgsts := []Digest{
|
||||
alg.FromBytes(p),
|
||||
alg.FromString(string(p)),
|
||||
readerDgst,
|
||||
}
|
||||
}
|
||||
|
||||
if alg == Canonical {
|
||||
readerDgst, err = FromReader(bytes.NewReader(p))
|
||||
if err != nil {
|
||||
t.Fatalf("error calculating hash from reader: %v", err)
|
||||
}
|
||||
|
||||
dgsts = append(dgsts,
|
||||
FromBytes(p),
|
||||
FromString(string(p)),
|
||||
readerDgst)
|
||||
}
|
||||
for _, dgst := range dgsts {
|
||||
if dgst != expected {
|
||||
t.Errorf("unexpected digest %v != %v", dgst, expected)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user