@@ -15,16 +15,13 @@ import (
15
15
"google.golang.org/grpc/codes"
16
16
)
17
17
18
- var validSecrets = map [string ]string {
19
- "projects/my-project/secrets/secret-1/versions/1" : "secret-1" ,
20
- "projects/my-project/secrets/secret-2/versions/1" : "secret-2" ,
21
- }
22
-
23
18
// Define a mock secretsManagerClient for testing
24
- type mockSecretsManagerClient struct {}
19
+ type mockSecretsManagerClient struct {
20
+ validSecrets map [string ]string
21
+ }
25
22
26
23
func (m * mockSecretsManagerClient ) AccessSecretVersion (ctx context.Context , req * secretmanagerpb.AccessSecretVersionRequest , opts ... gax.CallOption ) (* secretmanagerpb.AccessSecretVersionResponse , error ) {
27
- secretString , ok := validSecrets [req .Name ]
24
+ secretString , ok := m . validSecrets [req .Name ]
28
25
if ! ok {
29
26
return nil , fmt .Errorf ("secrets entry does not exist, error code: %v" , codes .NotFound )
30
27
}
@@ -47,10 +44,12 @@ func TestProvider_Retrieve_Success(t *testing.T) {
47
44
wantSecret string
48
45
}{
49
46
{
50
- name : "Happy path: valid uri, secret entry exists and is accessible" ,
51
- uri : schemeName + ":projects/my-project/secrets/secret-1/versions/1" ,
52
- testSecretManager : & mockSecretsManagerClient {},
53
- wantSecret : "secret-1" ,
47
+ name : "Happy path: valid uri, secret entry exists and is accessible" ,
48
+ uri : schemeName + ":projects/my-project/secrets/secret-1/versions/1" ,
49
+ testSecretManager : & mockSecretsManagerClient {validSecrets : map [string ]string {
50
+ "projects/my-project/secrets/secret-1/versions/1" : "secret-1" ,
51
+ }},
52
+ wantSecret : "secret-1" ,
54
53
},
55
54
}
56
55
@@ -76,7 +75,7 @@ func TestProvider_Retrieve_Failure(t *testing.T) {
76
75
}{
77
76
{
78
77
name : "Invalid scheme" ,
79
- uri : "invalidscheme" + " :projects/my-project/secrets/test-secret-id/versions/1" ,
78
+ uri : "invalidscheme:projects/my-project/secrets/test-secret-id/versions/1" ,
80
79
},
81
80
{
82
81
name : "secret entry does not exist in the secret manager" ,
@@ -91,7 +90,11 @@ func TestProvider_Retrieve_Failure(t *testing.T) {
91
90
for _ , tc := range tests {
92
91
t .Run (tc .name , func (t * testing.T ) {
93
92
testProvider := & provider {
94
- client : & mockSecretsManagerClient {},
93
+ client : & mockSecretsManagerClient {
94
+ validSecrets : map [string ]string {
95
+ "projects/my-project/secrets/secret-1/versions/1" : "secret-1" ,
96
+ },
97
+ },
95
98
}
96
99
_ , err := testProvider .Retrieve (context .Background (), tc .uri , nil )
97
100
require .Error (t , err )
0 commit comments