Просмотр исходного кода

Passing TestSetSecret initial test

Signed-off-by: Adrienne Galloway <adrienne.galloway@engineerbetter.com>
Co-authored-by: Dominic Meddick <dom.meddick@engineerbetter.com>
Co-authored-by: William Young <will.young@engineerbetter.com>
Adrienne Galloway 3 лет назад
Родитель
Сommit
c85808d9fc

+ 10 - 0
pkg/provider/aws/secretsmanager/fake/fake.go

@@ -17,6 +17,8 @@ package fake
 import (
 	"fmt"
 
+	"github.com/aws/aws-sdk-go/aws"
+	"github.com/aws/aws-sdk-go/aws/request"
 	awssm "github.com/aws/aws-sdk-go/service/secretsmanager"
 	"github.com/google/go-cmp/cmp"
 )
@@ -34,6 +36,14 @@ func NewClient() *Client {
 	}
 }
 
+func (sm *Client) CreateSecretWithContext(aws.Context, *awssm.CreateSecretInput, ...request.Option) (*awssm.CreateSecretOutput, error) {
+	value := "I'm a key"
+	output := awssm.CreateSecretOutput {
+		Name: &value,
+	}
+	return &output, nil
+}
+
 func (sm *Client) GetSecretValue(in *awssm.GetSecretValueInput) (*awssm.GetSecretValueOutput, error) {
 	sm.ExecutionCounter++
 	if entry, found := sm.valFn[sm.cacheKeyForInput(in)]; found {

+ 2 - 3
pkg/provider/aws/secretsmanager/secretsmanager.go

@@ -107,7 +107,6 @@ func (sm *SecretsManager) fetch(_ context.Context, ref esv1beta1.ExternalSecretD
 	return secretOut, nil
 }
 
-// Not Implemented SetSecret.
 func (sm *SecretsManager) SetSecret(ctx context.Context, value []byte, remoteRef esv1beta1.PushRemoteRef) error {
 	secretName := remoteRef.GetRemoteKey()
 	secretRequest := awssm.CreateSecretInput{
@@ -115,8 +114,8 @@ func (sm *SecretsManager) SetSecret(ctx context.Context, value []byte, remoteRef
 		SecretBinary: value,
 	}
 
-	secretOutput, err := sm.client.CreateSecretWithContext(ctx, &secretRequest)
-	fmt.Println(secretOutput)
+	_, err := sm.client.CreateSecretWithContext(ctx, &secretRequest)
+
 	if err != nil {
 		return err
 	}

+ 7 - 2
pkg/provider/aws/secretsmanager/secretsmanager_test.go

@@ -23,6 +23,7 @@ import (
 	"github.com/aws/aws-sdk-go/aws"
 	awssm "github.com/aws/aws-sdk-go/service/secretsmanager"
 	"github.com/google/go-cmp/cmp"
+	"gotest.tools/v3/assert"
 
 	esv1beta1 "github.com/external-secrets/external-secrets/apis/externalsecrets/v1beta1"
 	fakesm "github.com/external-secrets/external-secrets/pkg/provider/aws/secretsmanager/fake"
@@ -326,7 +327,11 @@ func (f fakeRef) GetRemoteKey() string {
 }
 
 func TestSetSecret(t *testing.T) {
-	sm := SecretsManager{}
+	sm := SecretsManager{
+		client: &fakesm.Client{},
+	}
 	ref := fakeRef{key: "I'm a key"}
-	sm.SetSecret(context.Background(), []byte("HI"), ref)
+	err := sm.SetSecret(context.Background(), []byte("HI"), ref)
+
+	assert.Equal(t, err, nil)
 }