MCPcopy Create free account
hub / github.com/git-bug/git-bug / TestIdentity_ValidKeysAtTime

Function TestIdentity_ValidKeysAtTime

entities/identity/identity_test.go:126–166  ·  view source on GitHub ↗

Test that the correct crypto keys are returned for a given lamport time

(t *testing.T)

Source from the content-addressed store, hash-verified

124
125// Test that the correct crypto keys are returned for a given lamport time
126func TestIdentity_ValidKeysAtTime(t *testing.T) {
127 pubKeyA := generatePublicKey()
128 pubKeyB := generatePublicKey()
129 pubKeyC := generatePublicKey()
130 pubKeyD := generatePublicKey()
131 pubKeyE := generatePublicKey()
132
133 identity := Identity{
134 versions: []*version{
135 {
136 times: map[string]lamport.Time{"foo": 100},
137 keys: []*Key{pubKeyA},
138 },
139 {
140 times: map[string]lamport.Time{"foo": 200},
141 keys: []*Key{pubKeyB},
142 },
143 {
144 times: map[string]lamport.Time{"foo": 201},
145 keys: []*Key{pubKeyC},
146 },
147 {
148 times: map[string]lamport.Time{"foo": 201},
149 keys: []*Key{pubKeyD},
150 },
151 {
152 times: map[string]lamport.Time{"foo": 300},
153 keys: []*Key{pubKeyE},
154 },
155 },
156 }
157
158 require.Nil(t, identity.ValidKeysAtTime("foo", 10))
159 require.Equal(t, identity.ValidKeysAtTime("foo", 100), []*Key{pubKeyA})
160 require.Equal(t, identity.ValidKeysAtTime("foo", 140), []*Key{pubKeyA})
161 require.Equal(t, identity.ValidKeysAtTime("foo", 200), []*Key{pubKeyB})
162 require.Equal(t, identity.ValidKeysAtTime("foo", 201), []*Key{pubKeyD})
163 require.Equal(t, identity.ValidKeysAtTime("foo", 202), []*Key{pubKeyD})
164 require.Equal(t, identity.ValidKeysAtTime("foo", 300), []*Key{pubKeyE})
165 require.Equal(t, identity.ValidKeysAtTime("foo", 3000), []*Key{pubKeyE})
166}
167
168// Test the immutable or mutable metadata search
169func TestMetadata(t *testing.T) {

Callers

nothing calls this directly

Calls 2

ValidKeysAtTimeMethod · 0.95
generatePublicKeyFunction · 0.85

Tested by

no test coverage detected