MCPcopy Create free account
hub / github.com/docker/secrets-engine / TestResolverService_GetSecret

Function TestResolverService_GetSecret

plugin/resolver_test.go:51–86  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

49}
50
51func TestResolverService_GetSecret(t *testing.T) {
52 t.Parallel()
53 tests := []struct {
54 name string
55 test func(t *testing.T)
56 }{
57 {
58 name: "does not resolve secrets before setup completed",
59 test: func(t *testing.T) {
60 m := &mockHandler{}
61 s := &resolverService{handler: m}
62 _, err := s.GetSecrets(t.Context(), newGetSecretRequest(mockSecretPattern))
63 assert.ErrorContains(t, err, "registration incomplete (timeout ")
64 assert.Equal(t, 0, m.getSecretCalled)
65 },
66 },
67 {
68 name: "returns secret value",
69 test: func(t *testing.T) {
70 m := &mockHandler{}
71 done := make(chan struct{})
72 close(done)
73 s := &resolverService{handler: m, setupCompleted: done, registrationTimeout: 10 * time.Second}
74 resp, err := s.GetSecrets(t.Context(), newGetSecretRequest(mockSecretPattern))
75 assert.NoError(t, err)
76 assert.Equal(t, resp, mockResponse)
77 assert.Equal(t, 1, m.getSecretCalled)
78 },
79 },
80 }
81 for _, tt := range tests {
82 t.Run(tt.name, func(t *testing.T) {
83 tt.test(t)
84 })
85 }
86}
87
88func newGetSecretRequest(pattern secrets.Pattern) *connect.Request[resolverv1.GetSecretsRequest] {
89 return connect.NewRequest(resolverv1.GetSecretsRequest_builder{

Callers

nothing calls this directly

Calls 3

GetSecretsMethod · 0.95
newGetSecretRequestFunction · 0.70
RunMethod · 0.65

Tested by

no test coverage detected