package sdk import ( "context" "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/service/secretsmanager" secretsmanagerTypes "github.com/aws/aws-sdk-go-v2/service/secretsmanager/types" ) type MockedSecretsManagerClient struct { } func (m *MockedSecretsManagerClient) ListSecrets(ctx context.Context, input *secretsmanager.ListSecretsInput, options ...func(*secretsmanager.Options)) (*secretsmanager.ListSecretsOutput, error) { return &secretsmanager.ListSecretsOutput{ SecretList: []secretsmanagerTypes.SecretListEntry{ { Name: aws.String("secret1"), }, { Name: aws.String("secret2"), }, }, }, nil } func (m *MockedSecretsManagerClient) GetResourcePolicy(ctx context.Context, input *secretsmanager.GetResourcePolicyInput, options ...func(*secretsmanager.Options)) (*secretsmanager.GetResourcePolicyOutput, error) { return &secretsmanager.GetResourcePolicyOutput{ ResourcePolicy: aws.String(`{ "Version": "2012-10-17", "Statement": [ { "Sid": "RetrieveSecret", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", "secretsmanager:ListSecretVersionIds" ], "Resource": "*" }, { "Sid": "RetrieveSecret", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret", ], "Resource": "*" } ] }`), }, nil }