From 354d905ca2a4d0a5b467f7cc7fa7b0db1fd62424 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20Mur=C3=A9?= Date: Wed, 9 Jul 2025 18:47:55 +0200 Subject: [PATCH] did:key: fix missing value --- methods/did-key/key.go | 2 +- methods/did-key/key_test.go | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/methods/did-key/key.go b/methods/did-key/key.go index 3c39fd7..df9a804 100644 --- a/methods/did-key/key.go +++ b/methods/did-key/key.go @@ -52,7 +52,7 @@ func Decode(identifier string) (did.DID, error) { } func FromPublicKey(pub crypto.PublicKey) did.DID { - return DidKey{msi: pub.ToPublicKeyMultibase()} + return DidKey{msi: pub.ToPublicKeyMultibase(), pubkey: pub} } func FromPrivateKey(priv crypto.PrivateKey) did.DID { diff --git a/methods/did-key/key_test.go b/methods/did-key/key_test.go index 59ba571..b39574f 100644 --- a/methods/did-key/key_test.go +++ b/methods/did-key/key_test.go @@ -55,6 +55,16 @@ func TestMustParseDIDKey(t *testing.T) { }) } +func TestFromPublicKey(t *testing.T) { + pub, _, err := ed25519.GenerateKeyPair() + require.NoError(t, err) + dk := didkey.FromPublicKey(pub) + require.Equal(t, "did:key:"+pub.ToPublicKeyMultibase(), dk.String()) + doc, err := dk.Document() + require.NoError(t, err) + require.NotEmpty(t, doc) +} + func TestEquivalence(t *testing.T) { did0A, err := did.Parse("did:key:z6Mkod5Jr3yd5SC7UDueqK4dAAw5xYJYjksy722tA9Boxc4z") require.NoError(t, err)