File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 44 "context"
55 "errors"
66 "math/rand"
7+ "slices"
78 "sync"
89 "testing"
910 "time"
@@ -15,6 +16,7 @@ import (
1516 "go.opentelemetry.io/otel/sdk/trace/tracetest"
1617
1718 "github.com/docker/secrets-engine/x/logging"
19+ "github.com/docker/secrets-engine/x/secrets"
1820 "github.com/docker/secrets-engine/x/telemetry"
1921)
2022
@@ -146,3 +148,29 @@ func TestLoggerCtx(t *testing.T) context.Context {
146148 t .Helper ()
147149 return logging .WithLogger (t .Context (), logging .NewDefaultLogger (t .Name ()))
148150}
151+
152+ var _ secrets.Resolver = & MockResolver {}
153+
154+ type MockResolver struct {
155+ Store map [secrets.ID ]string
156+ }
157+
158+ func (m MockResolver ) GetSecrets (_ context.Context , pattern secrets.Pattern ) ([]secrets.Envelope , error ) {
159+ var result []secrets.Envelope
160+ for id , v := range m .Store {
161+ if pattern .Match (id ) {
162+ result = append (result , secrets.Envelope {ID : id , Value : []byte (v )})
163+ }
164+ }
165+ slices .SortFunc (result , func (a , b secrets.Envelope ) int {
166+ switch {
167+ case a .ID .String () < b .ID .String ():
168+ return - 1
169+ case a .ID .String () > b .ID .String ():
170+ return 1
171+ default :
172+ return 0
173+ }
174+ })
175+ return result , nil
176+ }
You can’t perform that action at this time.
0 commit comments