Skip to content

Commit

Permalink
Update common libraries to use PropagatedClaims (#345)
Browse files Browse the repository at this point in the history
* update MatchMasterUserRecord to only use propagated claims

* useraccount annotations don't need to be non nil

* use correct UserID

* don't set UserID on spec

* don't populate UserID or email annotation

* don't set email annotation

* remove redundant check

* use standard values

* review

* updated missed reference
  • Loading branch information
sbryzak authored Dec 13, 2023
1 parent aee8d2b commit 5c6d88f
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 28 deletions.
26 changes: 14 additions & 12 deletions pkg/test/masteruserrecord/masteruserrecord.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import (
toolchainv1alpha1 "github.com/codeready-toolchain/api/api/v1alpha1"
"github.com/codeready-toolchain/toolchain-common/pkg/condition"
"github.com/codeready-toolchain/toolchain-common/pkg/test"
"github.com/gofrs/uuid"
"github.com/redhat-cop/operator-utils/pkg/util"
"github.com/stretchr/testify/require"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
Expand Down Expand Up @@ -42,22 +41,18 @@ func NewMasterUserRecords(t *testing.T, size int, nameFmt string, modifiers ...M
}

func NewMasterUserRecord(t *testing.T, userName string, modifiers ...MurModifier) *toolchainv1alpha1.MasterUserRecord {
userID := uuid.Must(uuid.NewV4()).String()
mur := &toolchainv1alpha1.MasterUserRecord{
ObjectMeta: metav1.ObjectMeta{
Namespace: test.HostOperatorNs,
Name: userName,
Labels: map[string]string{},
Annotations: map[string]string{
toolchainv1alpha1.MasterUserRecordEmailAnnotationKey: "[email protected]",
},
Namespace: test.HostOperatorNs,
Name: userName,
Labels: map[string]string{},
Annotations: map[string]string{},
},
Spec: toolchainv1alpha1.MasterUserRecordSpec{
TierName: "deactivate30",
UserID: userID,
UserAccounts: []toolchainv1alpha1.UserAccountEmbedded{newEmbeddedUa(test.MemberClusterName)},
PropagatedClaims: toolchainv1alpha1.PropagatedClaims{
Sub: "44332211",
Sub: "UserID123",
UserID: "135246",
AccountID: "357468",
OriginalSub: "11223344",
Expand Down Expand Up @@ -93,7 +88,14 @@ func ModifyUaInMur(mur *toolchainv1alpha1.MasterUserRecord, targetCluster string

func UserID(userID string) MurModifier {
return func(mur *toolchainv1alpha1.MasterUserRecord) error {
mur.Spec.UserID = userID
mur.Spec.PropagatedClaims.UserID = userID
return nil
}
}

func Sub(sub string) MurModifier {
return func(mur *toolchainv1alpha1.MasterUserRecord) error {
mur.Spec.PropagatedClaims.Sub = sub
return nil
}
}
Expand Down Expand Up @@ -208,7 +210,7 @@ func ProvisionedMur(provisionedTime *metav1.Time) MurModifier {
// UserIDFromUserSignup creates a MurModifier to change the userID value to match the provided usersignup
func UserIDFromUserSignup(userSignup *toolchainv1alpha1.UserSignup) MurModifier {
return func(mur *toolchainv1alpha1.MasterUserRecord) error {
mur.Spec.UserID = userSignup.Name
mur.Spec.PropagatedClaims.UserID = userSignup.Name
return nil
}
}
Expand Down
7 changes: 0 additions & 7 deletions pkg/test/masteruserrecord/masteruserrecord_assertion.go
Original file line number Diff line number Diff line change
Expand Up @@ -202,13 +202,6 @@ func (a *MasterUserRecordAssertion) HasAnnotationWithValue(key, value string) *M
return a
}

func (a *MasterUserRecordAssertion) HasOriginalSub(sub string) *MasterUserRecordAssertion {
err := a.loadMasterUserRecord()
require.NoError(a.t, err)
assert.Equal(a.t, sub, a.mur.Spec.OriginalSub)
return a
}

func (a *MasterUserRecordAssertion) HasTargetCluster(targetcluster string) *MasterUserRecordAssertion {
err := a.loadMasterUserRecord()
require.NoError(a.t, err)
Expand Down
4 changes: 0 additions & 4 deletions pkg/test/useraccount/useraccount.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,8 @@ func NewUserAccountFromMur(mur *toolchainv1alpha1.MasterUserRecord, modifiers ..
Labels: map[string]string{
toolchainv1alpha1.TierLabelKey: mur.Spec.TierName,
},
Annotations: map[string]string{
toolchainv1alpha1.UserEmailAnnotationKey: mur.Annotations[toolchainv1alpha1.MasterUserRecordEmailAnnotationKey],
},
},
Spec: toolchainv1alpha1.UserAccountSpec{
UserID: mur.Spec.UserID,
Disabled: mur.Spec.Disabled,
PropagatedClaims: mur.Spec.PropagatedClaims,
},
Expand Down
5 changes: 1 addition & 4 deletions pkg/test/useraccount/useraccount_assertion.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,8 @@ func (a *Assertion) HasNoFinalizer() *Assertion {
func (a *Assertion) MatchMasterUserRecord(mur *toolchainv1alpha1.MasterUserRecord) *Assertion {
err := a.loadUaAssertion()
require.NoError(a.t, err)
assert.Equal(a.t, mur.Spec.UserID, a.userAccount.Spec.UserID)
assert.Equal(a.t, mur.Spec.PropagatedClaims, a.userAccount.Spec.PropagatedClaims)
assert.Equal(a.t, mur.Spec.Disabled, a.userAccount.Spec.Disabled)
assert.Equal(a.t, mur.Spec.OriginalSub, a.userAccount.Spec.OriginalSub)
assert.NotNil(a.t, a.userAccount.Annotations)
assert.Equal(a.t, mur.Annotations[toolchainv1alpha1.MasterUserRecordEmailAnnotationKey], a.userAccount.Annotations[toolchainv1alpha1.UserEmailAnnotationKey])
return a
}

Expand Down
2 changes: 1 addition & 1 deletion pkg/test/useraccount/useraccount_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ func TestUserAccountFromMur(t *testing.T) {
userAcc := uatest.NewUserAccountFromMur(mur)

// when & then
assert.Equal(t, mur.Spec.UserID, userAcc.Spec.UserID)
assert.Equal(t, mur.Spec.PropagatedClaims, userAcc.Spec.PropagatedClaims)
assert.Equal(t, mur.Spec.Disabled, userAcc.Spec.Disabled)
})
}

0 comments on commit 5c6d88f

Please sign in to comment.