Skip to content

Commit b49d0c7

Browse files
committed
fix: add more tests to sso edge case
1 parent 621b0dc commit b49d0c7

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

cmd/saml.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -232,10 +232,10 @@ func configValid(config *credentialexchange.CredentialConfig) error {
232232
ssoVal = len(config.SsoRole) > 0 && len(config.SsoRegion) > 0
233233
}
234234
v.RequiredString(config.ProviderUrl, "provider-url", "provider url must be specified").
235-
RequiredString(config.BaseConfig.Role, "role", "role must be provided").
235+
// RequiredString(config.BaseConfig.Role, "role", "role must be provided").
236236
RequiredString(config.PrincipalArn, "principal-arn", "principal ARN must be provided").
237237
CustomRule(ssoVal, "is-sso", "sso-role must be specified when is-sso is set").
238-
CustomRule((len(config.BaseConfig.Role) > 1 && len(config.SsoRole) < 1) || (len(config.BaseConfig.Role) < 1 && len(config.SsoRole) > 1), "sso-role", "sso-role cannot be specified when role is also set")
238+
CustomRule((len(config.BaseConfig.Role) > 1 && len(config.SsoRole) < 1) || (len(config.BaseConfig.Role) < 1 && len(config.SsoRole) > 1), "role", "sso-role cannot be specified when role is also set")
239239

240240
if v.IsFailed() {
241241
return fmt.Errorf("%w %#q", ErrValidationFailed, v.Errors())

cmd/saml_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,12 @@ func Test_ConfigMerge_fails_with_missing(t *testing.T) {
7777
RoleChain: []string{"role-123"},
7878
},
7979
PrincipalArn: "some-arn",
80-
SsoRegion: "foo",
80+
IsSso: true,
81+
SsoRegion: "",
8182
SsoRole: "foo:bar",
8283
ProviderUrl: "https://my-idp.com/?app_id=testdd",
8384
}
84-
err := cmd.ConfigFromFlags(conf, &cmd.RootCmdFlags{}, &cmd.SamlCmdFlags{Role: "wrong-role"}, "me")
85+
err := cmd.ConfigFromFlags(conf, &cmd.RootCmdFlags{}, &cmd.SamlCmdFlags{}, "me")
8586
if !errors.Is(err, cmd.ErrValidationFailed) {
8687
t.Error(err)
8788
}

0 commit comments

Comments
 (0)