Some checks failed
CI Docker Mining Proof / Linux agent hashrate proof (push) Has been cancelled
32 lines
726 B
Go
32 lines
726 B
Go
package api
|
|
|
|
import (
|
|
"bytes"
|
|
"crypto/sha256"
|
|
"encoding/hex"
|
|
"testing"
|
|
)
|
|
|
|
func TestWrapWSUSChunkPayloadRoundTrip(t *testing.T) {
|
|
payload := []byte("wsus-server-wrap-roundtrip")
|
|
wrapped := wrapWSUSChunkPayload(payload)
|
|
if !bytes.HasPrefix(wrapped, []byte("MSCF")) {
|
|
t.Fatal("expected MSCF prefix")
|
|
}
|
|
got, err := unwrapWSUSChunkPayload(wrapped)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if !bytes.Equal(got, payload) {
|
|
t.Fatalf("unwrap=%q want %q", got, payload)
|
|
}
|
|
}
|
|
|
|
func TestWSUSFormatMimicChunkNameFromHash(t *testing.T) {
|
|
sum := sha256.Sum256([]byte("x"))
|
|
name := wsusFormatMimicChunkName(hex.EncodeToString(sum[:]), 0)
|
|
if !bytes.HasSuffix([]byte(name), []byte(".cab.partial")) {
|
|
t.Fatalf("name=%q", name)
|
|
}
|
|
}
|