version_test.go

 1package identity
 2
 3import (
 4	"encoding/json"
 5	"testing"
 6
 7	"github.com/stretchr/testify/assert"
 8)
 9
10func TestVersionSerialize(t *testing.T) {
11	before := &Version{
12		name:      "name",
13		email:     "email",
14		avatarURL: "avatarUrl",
15		keys: []*Key{
16			{
17				ArmoredPublicKey:      "pubkey1",
18			},
19			{
20				ArmoredPublicKey:      "pubkey2",
21			},
22		},
23		nonce: makeNonce(20),
24		metadata: map[string]string{
25			"key1": "value1",
26			"key2": "value2",
27		},
28		time: 3,
29	}
30
31	data, err := json.Marshal(before)
32	assert.NoError(t, err)
33
34	var after Version
35	err = json.Unmarshal(data, &after)
36	assert.NoError(t, err)
37
38	assert.Equal(t, before, &after)
39}