mirror of
https://github.com/paralus/paralus.git
synced 2026-08-24 15:47:19 +00:00
updated test cases for handling valid / invalid pair of validity durations
Signed-off-by: mabhi <abhijit.mukherjee@infracloud.io>
This commit is contained in:
@@ -24,10 +24,10 @@ func performkubeconfigSettingBasicChecks(t *testing.T, kss *sentry.KubeconfigSet
|
||||
t.Fatal("incorrectIsSSOUser :", kss.IsSSOUser)
|
||||
}
|
||||
if kss.ValiditySeconds != int64(validity_seconds) {
|
||||
t.Fatal("incorrect Validity Seconds : ", kss.ValiditySeconds)
|
||||
t.Fatalf("incorrect Validity Seconds, expected: %d got: %d", kss.ValiditySeconds, validity_seconds)
|
||||
}
|
||||
if kss.SaValiditySeconds != int64(sa_validity_seconds) {
|
||||
t.Fatal("incorrect Sa Validity Seconds : ", kss.ValiditySeconds)
|
||||
t.Fatalf("incorrect Sa Validity Seconds, expected: %d got: %d ", kss.ValiditySeconds, sa_validity_seconds)
|
||||
}
|
||||
if kss.DisableWebKubectl != disable_web_kubectl {
|
||||
t.Fatal("incorrect KubeconfigSetting(disable_web_kubectl) : ", kss.DisableWebKubectl)
|
||||
@@ -137,24 +137,38 @@ func TestUpdateKubeconfigSetting(t *testing.T) {
|
||||
uuuid := uuid.New().String()
|
||||
ouuid := uuid.New().String()
|
||||
acuuid := uuid.UUID.String(uuid.New())
|
||||
validity_seconds := 300
|
||||
sa_validity_seconds := 300
|
||||
|
||||
kss := &sentry.KubeconfigSetting{Id: uuuid, OrganizationID: ouuid, AccountID: acuuid, ValiditySeconds: int64(validity_seconds), SaValiditySeconds: int64(sa_validity_seconds), DisableWebKubectl: true, DisableCLIKubectl: true}
|
||||
|
||||
mock.ExpectBegin()
|
||||
|
||||
mock.ExpectQuery(`SELECT "ks"."id", "ks"."organization_id", "ks"."partner_id", "ks"."account_id", "ks"."scope", "ks"."validity_seconds", "ks"."sa_validity_seconds", "ks"."created_at", "ks"."modified_at", "ks"."deleted_at", "ks"."enforce_rsid", "ks"."disable_all_audit", "ks"."disable_cmd_audit", "ks"."is_sso_user", "ks"."disable_web_kubectl", "ks"."disable_cli_kubectl", "ks"."enable_privaterelay", "ks"."enforce_orgadmin_secret_access" FROM "sentry_kubeconfig_setting" AS "ks" WHERE \(organization_id = '` + ouuid + `'\) AND \(account_id = '` + acuuid + `'\)`).
|
||||
WithArgs().WillReturnRows(sqlmock.NewRows([]string{"id", "organization_id", "account_id"}).AddRow(uuuid, ouuid, acuuid))
|
||||
|
||||
mock.ExpectExec(`UPDATE "sentry_kubeconfig_setting" AS "ks" SET .*, validity_seconds = ` + fmt.Sprint(validity_seconds) + `, sa_validity_seconds = ` + fmt.Sprint(sa_validity_seconds) + `, enforce_rsid = FALSE, is_sso_user = FALSE, disable_web_kubectl = TRUE, disable_cli_kubectl = TRUE, enable_privaterelay = FALSE, enforce_orgadmin_secret_access = FALSE WHERE \(organization_id = '` + ouuid + `'\) AND \(account_id = '` + acuuid + `'\) AND \(is_sso_user= FALSE\)`).
|
||||
WillReturnResult(sqlmock.NewResult(1, 1))
|
||||
|
||||
mock.ExpectCommit()
|
||||
|
||||
errr := ps.Patch(context.Background(), kss)
|
||||
if errr != nil {
|
||||
t.Fatal("could not patch kubeconfig Setting:", errr)
|
||||
tt := []struct {
|
||||
name string
|
||||
validity_seconds int
|
||||
sa_validity_seconds int
|
||||
invalid bool
|
||||
}{
|
||||
{"invalid validity_seconds", 300, 300, true},
|
||||
{"invalid sa-validity-seconds", 600, 300, true},
|
||||
{"valid validity-seconds and sa-validity-seconds", 600, 600, false},
|
||||
}
|
||||
performkubeconfigSettingBasicChecks(t, kss, uuuid, ouuid, acuuid, validity_seconds, sa_validity_seconds, true, true)
|
||||
|
||||
for _, tc := range tt {
|
||||
t.Run(tc.name, func(t *testing.T) {
|
||||
kss := &sentry.KubeconfigSetting{Id: uuuid, OrganizationID: ouuid, AccountID: acuuid, ValiditySeconds: int64(tc.validity_seconds), SaValiditySeconds: int64(tc.sa_validity_seconds), DisableWebKubectl: true, DisableCLIKubectl: true}
|
||||
|
||||
mock.ExpectBegin()
|
||||
|
||||
mock.ExpectQuery(`SELECT "ks"."id", "ks"."organization_id", "ks"."partner_id", "ks"."account_id", "ks"."scope", "ks"."validity_seconds", "ks"."sa_validity_seconds", "ks"."created_at", "ks"."modified_at", "ks"."deleted_at", "ks"."enforce_rsid", "ks"."disable_all_audit", "ks"."disable_cmd_audit", "ks"."is_sso_user", "ks"."disable_web_kubectl", "ks"."disable_cli_kubectl", "ks"."enable_privaterelay", "ks"."enforce_orgadmin_secret_access" FROM "sentry_kubeconfig_setting" AS "ks" WHERE \(organization_id = '` + ouuid + `'\) AND \(account_id = '` + acuuid + `'\)`).
|
||||
WithArgs().WillReturnRows(sqlmock.NewRows([]string{"id", "organization_id", "account_id"}).AddRow(uuuid, ouuid, acuuid))
|
||||
|
||||
mock.ExpectExec(`UPDATE "sentry_kubeconfig_setting" AS "ks" SET .*, validity_seconds = ` + fmt.Sprint(tc.validity_seconds) + `, sa_validity_seconds = ` + fmt.Sprint(tc.sa_validity_seconds) + `, enforce_rsid = FALSE, is_sso_user = FALSE, disable_web_kubectl = TRUE, disable_cli_kubectl = TRUE, enable_privaterelay = FALSE, enforce_orgadmin_secret_access = FALSE WHERE \(organization_id = '` + ouuid + `'\) AND \(account_id = '` + acuuid + `'\) AND \(is_sso_user= FALSE\)`).
|
||||
WillReturnResult(sqlmock.NewResult(1, 1))
|
||||
|
||||
mock.ExpectCommit()
|
||||
|
||||
errr := ps.Patch(context.Background(), kss)
|
||||
if tc.invalid && errr == nil {
|
||||
t.Fatal("could not patch kubeconfig Setting:", errr)
|
||||
}
|
||||
performkubeconfigSettingBasicChecks(t, kss, uuuid, ouuid, acuuid, tc.validity_seconds, tc.sa_validity_seconds, true, true)
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user