Add delete user from other services/stores (#51912)

* Remove user from preferences, stars, orguser, team member

* Fix lint

* Add Delete user from org and dashboard acl

* Delete user from user auth

* Add DeleteUser to quota

* Add test files and adjust user auth store

* Rename package in wire for user auth

* Import Quota Service interface in other services

* do the same in tests

* fix lint tests

* Fix tests

* Add some tests

* Rename InsertUser and DeleteUser to InsertOrgUser and DeleteOrgUser

* Rename DeleteUser to DeleteByUser in quota

* changing a method name in few additional places

* Fix in other places

* Fix lint

* Fix tests

* Rename DeleteOrgUser to DeleteUserFromAll

* Update pkg/services/org/orgimpl/org_test.go

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>

* Update pkg/services/preference/prefimpl/inmemory_test.go

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>

* Rename Acl to ACL

* Fix wire after merge with main

* Move test to uni test

Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
This commit is contained in:
idafurjes
2022-07-15 18:06:44 +02:00
committed by GitHub
co-authored by Emil Tullstedt
parent 5d052be6ff
commit 17ec9cac83
58 changed files with 666 additions and 243 deletions
+4
View File
@@ -40,3 +40,7 @@ func (s *Service) IsStarredByUser(ctx context.Context, query *star.IsStarredByUs
func (s *Service) GetByUser(ctx context.Context, cmd *star.GetUserStarsQuery) (*star.GetUserStarsResult, error) {
return s.store.List(ctx, cmd)
}
func (s *Service) DeleteByUser(ctx context.Context, userID int64) error {
return s.store.DeleteByUser(ctx, userID)
}
+13 -4
View File
@@ -9,10 +9,11 @@ import (
)
type store interface {
Get(ctx context.Context, query *star.IsStarredByUserQuery) (bool, error)
Insert(ctx context.Context, cmd *star.StarDashboardCommand) error
Delete(ctx context.Context, cmd *star.UnstarDashboardCommand) error
List(ctx context.Context, query *star.GetUserStarsQuery) (*star.GetUserStarsResult, error)
Get(context.Context, *star.IsStarredByUserQuery) (bool, error)
Insert(context.Context, *star.StarDashboardCommand) error
Delete(context.Context, *star.UnstarDashboardCommand) error
DeleteByUser(context.Context, int64) error
List(context.Context, *star.GetUserStarsQuery) (*star.GetUserStarsResult, error)
}
type sqlStore struct {
@@ -55,6 +56,14 @@ func (s *sqlStore) Delete(ctx context.Context, cmd *star.UnstarDashboardCommand)
})
}
func (s *sqlStore) DeleteByUser(ctx context.Context, userID int64) error {
return s.db.WithTransactionalDbSession(ctx, func(sess *sqlstore.DBSession) error {
var rawSQL = "DELETE FROM star WHERE user_id = ?"
_, err := sess.Exec(rawSQL, userID)
return err
})
}
func (s *sqlStore) List(ctx context.Context, query *star.GetUserStarsQuery) (*star.GetUserStarsResult, error) {
userStars := make(map[int64]bool)
err := s.db.WithDbSession(ctx, func(dbSession *sqlstore.DBSession) error {
+5
View File
@@ -56,5 +56,10 @@ func TestIntegrationUserStarsDataAccess(t *testing.T) {
require.False(t, isStarred)
})
})
t.Run("delete by user", func(t *testing.T) {
err := starStore.DeleteByUser(context.Background(), 1)
require.NoError(t, err)
})
})
}