Load user's roles after profile-update
This commit is contained in:
@@ -60,6 +60,10 @@ func (h *AuthHandlers) profileProc(req *request.AuthReq) error {
|
||||
// this way user service will pass us through.
|
||||
user, err := h.UserService.Update(req.Context(), u)
|
||||
|
||||
if err == nil {
|
||||
err = h.AuthService.LoadRoleMemberships(req.Context(), user)
|
||||
}
|
||||
|
||||
if err == nil {
|
||||
req.AuthUser.User = user
|
||||
req.AuthUser.Save(req.Session)
|
||||
|
||||
@@ -77,6 +77,8 @@ func Test_profileFormProc(t *testing.T) {
|
||||
req.PostForm.Add("handle", "handle")
|
||||
req.PostForm.Add("name", "name")
|
||||
|
||||
authService = &authServiceMocked{}
|
||||
|
||||
userService = &userServiceMocked{
|
||||
update: func(c context.Context, u *types.User) (*types.User, error) {
|
||||
u = makeMockUser()
|
||||
|
||||
@@ -43,6 +43,7 @@ type (
|
||||
ValidateTOTP(ctx context.Context, code string) (err error)
|
||||
ConfigureTOTP(ctx context.Context, secret string, code string) (u *types.User, err error)
|
||||
RemoveTOTP(ctx context.Context, userID uint64, code string) (u *types.User, err error)
|
||||
LoadRoleMemberships(ctx context.Context, u *types.User) error
|
||||
|
||||
SendEmailOTP(ctx context.Context) (err error)
|
||||
ConfigureEmailOTP(ctx context.Context, userID uint64, enable bool) (u *types.User, err error)
|
||||
|
||||
@@ -180,6 +180,11 @@ func (s authServiceMocked) ValidateEmailOTP(ctx context.Context, code string) (e
|
||||
return s.validateEmailOTP(ctx, code)
|
||||
}
|
||||
|
||||
func (s authServiceMocked) LoadRoleMemberships(ctx context.Context, u *types.User) error {
|
||||
// no-op for now
|
||||
return nil
|
||||
}
|
||||
|
||||
//
|
||||
// Mocking oauth2Service
|
||||
//
|
||||
|
||||
Reference in New Issue
Block a user