diff --git a/types/tkatype/tkatype_test.go b/types/tkatype/tkatype_test.go index 6def6bd9c..c81891b9c 100644 --- a/types/tkatype/tkatype_test.go +++ b/types/tkatype/tkatype_test.go @@ -4,6 +4,7 @@ package tkatype import ( + "encoding/json" "testing" "golang.org/x/crypto/blake2s" @@ -20,3 +21,23 @@ func TestSigHashSize(t *testing.T) { t.Errorf("NKSSigHash is wrong size: got %d, want %d", len(nksHash), blake2s.Size) } } + +func TestMarshaledSignatureJSON(t *testing.T) { + sig := MarshaledSignature("abcdef") + j, err := json.Marshal(sig) + if err != nil { + t.Fatal(err) + } + const encoded = `"YWJjZGVm"` + if string(j) != encoded { + t.Errorf("got JSON %q; want %q", j, encoded) + } + + var back MarshaledSignature + if err := json.Unmarshal([]byte(encoded), &back); err != nil { + t.Fatal(err) + } + if string(back) != string(sig) { + t.Errorf("decoded JSON back to %q; want %q", back, sig) + } +}