package main import ( "bytes" "testing" ) func TestUnmarshalSig(t *testing.T) { b64sig := []byte(`RWRbOC0bBf7abaGwGtq45KLDK63tgcF7CO4qTZSlTKCSbZTYlDfFm/DISQ60u+/jEzrk22suvXXAEsxQTe2xUOfV90get1YRGQo=`) v := new(Sig) Unmarshal(b64sig, v) out, _ := Marshal(v) if !bytes.Equal(b64sig, out) { t.Errorf("want %v, got %v", b64sig, out) } } func TestUnmarshalPub(t *testing.T) { b64pub := []byte(`RWRbOC0bBf7abfanaXuTYfCa6+YO69Kxyz8RD5nL/3Ta7umY6iOwnBrG`) v := new(PubKey) Unmarshal(b64pub, v) out, _ := Marshal(v) if !bytes.Equal(b64pub, out) { t.Errorf("want %v, got %v", b64pub, out) } } func TestUnmarshalEnc(t *testing.T) { b64enc := []byte(`RWRCSwAAAACzJBN2gC5//jVvDiV76rs4m2aKXkljqDpbOC0bBf7abZhV/Zygr6b0KIbSI56JQutwzsQeouxnnHuVTZp3IW4M9qdpe5Nh8Jrr5g7r0rHLPxEPmcv/dNru6ZjqI7CcGsY=`) v := new(EncKey) Unmarshal(b64enc, v) out, _ := Marshal(v) if !bytes.Equal(b64enc, out) { t.Errorf("want %v, got %v", b64enc, out) } if !v.IsValid(nil) { t.Error("invalid %+v", v) } } func TestUnmarshalKDF(t *testing.T) { b64enc := []byte(`RWRCSwAAACoXv4r2lp3RYYLEWZRsY+1Z+1mJtEScNBaKdOKcMdhUHrztnf8a4sUNGY19MoV3wX2cyW2Mn1MduKxi9s3Se070TGF0IZG/hH4SKiNUYi+yi1mandWAwmhY3ahIHApigTk=`) v := new(EncKey) Unmarshal(b64enc, v) out, _ := Marshal(v) if !bytes.Equal(b64enc, out) { t.Errorf("want %v, got %v", b64enc, out) } if !v.IsValid([]byte("test")) { t.Errorf("invalid %+v", v) } }