Skip to content

Commit

Permalink
fix update tests
Browse files Browse the repository at this point in the history
  • Loading branch information
czeslavo committed Oct 17, 2024
1 parent b4a7933 commit 48e31f0
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 23 deletions.
24 changes: 12 additions & 12 deletions controller/konnect/ops/ops.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@ const (

// Create creates a Konnect entity.
func Create[
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
](
ctx context.Context,
sdk SDKWrapper,
Expand Down Expand Up @@ -148,8 +148,8 @@ TEnt constraints.EntityType[T],
// Delete deletes a Konnect entity.
// It returns an error if the entity does not have a Konnect ID or if the operation fails.
func Delete[
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
](ctx context.Context, sdk SDKWrapper, cl client.Client, e *T) error {
ent := TEnt(e)
if ent.GetKonnectStatus().GetKonnectID() == "" {
Expand Down Expand Up @@ -216,8 +216,8 @@ TEnt constraints.EntityType[T],
}

func shouldUpdate[
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
](
ctx context.Context,
ent TEnt,
Expand Down Expand Up @@ -255,8 +255,8 @@ TEnt constraints.EntityType[T],
// Update updates a Konnect entity.
// It returns an error if the entity does not have a Konnect ID or if the operation fails.
func Update[
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
](
ctx context.Context,
sdk SDKWrapper,
Expand Down Expand Up @@ -346,8 +346,8 @@ TEnt constraints.EntityType[T],
}

func logOpComplete[
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
](ctx context.Context, start time.Time, op Op, e TEnt, err error) {
keysAndValues := []interface{}{
"op", op,
Expand All @@ -373,8 +373,8 @@ TEnt constraints.EntityType[T],
// wrapErrIfKonnectOpFailed checks the response from the Konnect API and returns a uniform
// error for all Konnect entities if the operation failed.
func wrapErrIfKonnectOpFailed[
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
T constraints.SupportedKonnectEntityType,
TEnt constraints.EntityType[T],
](err error, op Op, e TEnt) error {
if err != nil {
entityTypeName := constraints.EntityTypeName[T]()
Expand Down
20 changes: 9 additions & 11 deletions controller/konnect/ops/ops_controlplane_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ import (
"sigs.k8s.io/controller-runtime/pkg/client/fake"

"github.com/kong/gateway-operator/modules/manager/scheme"
"github.com/kong/gateway-operator/pkg/consts"

konnectv1alpha1 "github.com/kong/kubernetes-configuration/api/konnect/v1alpha1"
)
Expand Down Expand Up @@ -403,11 +402,10 @@ func TestDeleteControlPlane(t *testing.T) {
func TestUpdateControlPlane(t *testing.T) {
ctx := context.Background()
testCases := []struct {
name string
mockCPTuple func(*testing.T) (*MockControlPlaneSDK, *MockControlPlaneGroupSDK, *konnectv1alpha1.KonnectGatewayControlPlane)
expectedErr bool
expectedID string
expectedReason consts.ConditionReason
name string
mockCPTuple func(*testing.T) (*MockControlPlaneSDK, *MockControlPlaneGroupSDK, *konnectv1alpha1.KonnectGatewayControlPlane)
expectedErr bool
expectedID string
}{
{
name: "success",
Expand Down Expand Up @@ -493,8 +491,7 @@ func TestUpdateControlPlane(t *testing.T) {

return sdk, sdkGroups, cp
},
expectedReason: consts.KonnectEntitiesFailedToUpdateReason,
expectedErr: true,
expectedErr: true,
},
{
name: "when not found then try to create",
Expand Down Expand Up @@ -553,23 +550,24 @@ func TestUpdateControlPlane(t *testing.T) {

return sdk, sdkGroups, cp
},
expectedID: "12345",
},
// TODO: add test case for group membership success/failure scenarios
}

for _, tc := range testCases {
t.Run(tc.name, func(t *testing.T) {
sdk, sdkGroups, cp := tc.mockCPTuple(t)
fakeClient := fake.NewClientBuilder().Build()

id, reason, err := updateControlPlane(ctx, sdk, sdkGroups, fakeClient, cp)
err := updateControlPlane(ctx, sdk, sdkGroups, fakeClient, cp)
if tc.expectedErr {
assert.Error(t, err)
return
}

assert.NoError(t, err)
assert.Equal(t, tc.expectedID, id)
assert.Equal(t, tc.expectedReason, reason)
assert.Equal(t, tc.expectedID, cp.Status.ID)
})
}
}
Expand Down

0 comments on commit 48e31f0

Please sign in to comment.