|
|
|
|
@ -292,6 +292,38 @@ func TestHandleCallback(t *testing.T) {
|
|
|
|
|
"email_verified": true, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: "singularGroupResponseAsMap", |
|
|
|
|
userIDKey: "", // not configured
|
|
|
|
|
userNameKey: "", // not configured
|
|
|
|
|
expectUserID: "subvalue", |
|
|
|
|
expectUserName: "namevalue", |
|
|
|
|
expectGroups: []string{"group1"}, |
|
|
|
|
expectedEmailField: "emailvalue", |
|
|
|
|
token: map[string]interface{}{ |
|
|
|
|
"sub": "subvalue", |
|
|
|
|
"name": "namevalue", |
|
|
|
|
"groups": []map[string]string{{"name": "group1"}}, |
|
|
|
|
"email": "emailvalue", |
|
|
|
|
"email_verified": true, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: "multipleGroupResponseAsMap", |
|
|
|
|
userIDKey: "", // not configured
|
|
|
|
|
userNameKey: "", // not configured
|
|
|
|
|
expectUserID: "subvalue", |
|
|
|
|
expectUserName: "namevalue", |
|
|
|
|
expectGroups: []string{"group1", "group2"}, |
|
|
|
|
expectedEmailField: "emailvalue", |
|
|
|
|
token: map[string]interface{}{ |
|
|
|
|
"sub": "subvalue", |
|
|
|
|
"name": "namevalue", |
|
|
|
|
"groups": []map[string]string{{"name": "group1"}, {"name": "group2"}}, |
|
|
|
|
"email": "emailvalue", |
|
|
|
|
"email_verified": true, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: "newGroupFromClaims", |
|
|
|
|
userIDKey: "", // not configured
|
|
|
|
|
@ -382,6 +414,23 @@ func TestHandleCallback(t *testing.T) {
|
|
|
|
|
"email_verified": true, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
name: "filterGroupClaimsMap", |
|
|
|
|
userIDKey: "", // not configured
|
|
|
|
|
userNameKey: "", // not configured
|
|
|
|
|
groupsRegex: `^.*\d$`, |
|
|
|
|
expectUserID: "subvalue", |
|
|
|
|
expectUserName: "namevalue", |
|
|
|
|
expectGroups: []string{"group1", "group2"}, |
|
|
|
|
expectedEmailField: "emailvalue", |
|
|
|
|
token: map[string]interface{}{ |
|
|
|
|
"sub": "subvalue", |
|
|
|
|
"name": "namevalue", |
|
|
|
|
"groups": []map[string]string{{"name": "group1"}, {"name": "group2"}, {"name": "groupA"}, {"name": "groupB"}}, |
|
|
|
|
"email": "emailvalue", |
|
|
|
|
"email_verified": true, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
for _, tc := range tests { |
|
|
|
|
|