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 {
|
for alg := range algorithms {
|
||||||
h := alg.Hash()
|
t.Run(string(alg), func(t *testing.T) {
|
||||||
h.Write(p)
|
h := alg.Hash()
|
||||||
expected := Digest(fmt.Sprintf("%s:%x", alg, h.Sum(nil)))
|
h.Write(p)
|
||||||
|
expected := Digest(fmt.Sprintf("%s:%x", alg, h.Sum(nil)))
|
||||||
|
|
||||||
var readerDgst Digest
|
var readerDgst Digest
|
||||||
readerDgst, err = alg.FromReader(bytes.NewReader(p))
|
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))
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("error calculating hash from reader: %v", err)
|
t.Fatalf("error calculating hash from reader: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
dgsts = append(dgsts,
|
dgsts := []Digest{
|
||||||
FromBytes(p),
|
alg.FromBytes(p),
|
||||||
FromString(string(p)),
|
alg.FromString(string(p)),
|
||||||
readerDgst)
|
readerDgst,
|
||||||
}
|
|
||||||
for _, dgst := range dgsts {
|
|
||||||
if dgst != expected {
|
|
||||||
t.Fatalf("unexpected digest %v != %v", dgst, expected)
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
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