Remove global variable from user (#46696)

* Remove global variable from user

* Remove missed x
pull/46283/head
idafurjes 4 years ago committed by GitHub
parent 93390b5a1e
commit 52bd7618dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      pkg/services/sqlstore/org_test.go
  2. 24
      pkg/services/sqlstore/user.go
  3. 24
      pkg/services/sqlstore/user_test.go

@ -164,7 +164,7 @@ func TestAccountDataAccess(t *testing.T) {
t.Run("Can search users", func(t *testing.T) { t.Run("Can search users", func(t *testing.T) {
query := models.SearchUsersQuery{Query: ""} query := models.SearchUsersQuery{Query: ""}
err := SearchUsers(context.Background(), &query) err := sqlStore.SearchUsers(context.Background(), &query)
require.NoError(t, err) require.NoError(t, err)
require.Len(t, query.Result.Users, 2) require.Len(t, query.Result.Users, 2)

@ -27,7 +27,7 @@ func (ss *SQLStore) addUserQueryAndCommandHandlers() {
bus.AddHandler("sql", ss.SetUsingOrg) bus.AddHandler("sql", ss.SetUsingOrg)
bus.AddHandler("sql", ss.UpdateUserLastSeenAt) bus.AddHandler("sql", ss.UpdateUserLastSeenAt)
bus.AddHandler("sql", ss.GetUserProfile) bus.AddHandler("sql", ss.GetUserProfile)
bus.AddHandler("sql", SearchUsers) bus.AddHandler("sql", ss.SearchUsers)
bus.AddHandler("sql", ss.GetUserOrgList) bus.AddHandler("sql", ss.GetUserOrgList)
bus.AddHandler("sql", ss.DisableUser) bus.AddHandler("sql", ss.DisableUser)
bus.AddHandler("sql", ss.BatchDisableUsers) bus.AddHandler("sql", ss.BatchDisableUsers)
@ -495,8 +495,9 @@ func (o byOrgName) Less(i, j int) bool {
} }
func (ss *SQLStore) GetUserOrgList(ctx context.Context, query *models.GetUserOrgListQuery) error { func (ss *SQLStore) GetUserOrgList(ctx context.Context, query *models.GetUserOrgListQuery) error {
return ss.WithDbSession(ctx, func(dbSess *DBSession) error {
query.Result = make([]*models.UserOrgDTO, 0) query.Result = make([]*models.UserOrgDTO, 0)
sess := x.Table("org_user") sess := dbSess.Table("org_user")
sess.Join("INNER", "org", "org_user.org_id=org.id") sess.Join("INNER", "org", "org_user.org_id=org.id")
sess.Join("INNER", x.Dialect().Quote("user"), fmt.Sprintf("org_user.user_id=%s.id", x.Dialect().Quote("user"))) sess.Join("INNER", x.Dialect().Quote("user"), fmt.Sprintf("org_user.user_id=%s.id", x.Dialect().Quote("user")))
sess.Where("org_user.user_id=?", query.UserId) sess.Where("org_user.user_id=?", query.UserId)
@ -506,6 +507,7 @@ func (ss *SQLStore) GetUserOrgList(ctx context.Context, query *models.GetUserOrg
err := sess.Find(&query.Result) err := sess.Find(&query.Result)
sort.Sort(byOrgName(query.Result)) sort.Sort(byOrgName(query.Result))
return err return err
})
} }
func newSignedInUserCacheKey(orgID, userID int64) string { func newSignedInUserCacheKey(orgID, userID int64) string {
@ -531,6 +533,7 @@ func (ss *SQLStore) GetSignedInUserWithCacheCtx(ctx context.Context, query *mode
} }
func (ss *SQLStore) GetSignedInUser(ctx context.Context, query *models.GetSignedInUserQuery) error { func (ss *SQLStore) GetSignedInUser(ctx context.Context, query *models.GetSignedInUserQuery) error {
return ss.WithDbSession(ctx, func(dbSess *DBSession) error {
orgId := "u.org_id" orgId := "u.org_id"
if query.OrgId > 0 { if query.OrgId > 0 {
orgId = strconv.FormatInt(query.OrgId, 10) orgId = strconv.FormatInt(query.OrgId, 10)
@ -552,7 +555,7 @@ func (ss *SQLStore) GetSignedInUser(ctx context.Context, query *models.GetSigned
LEFT OUTER JOIN org_user on org_user.org_id = ` + orgId + ` and org_user.user_id = u.id LEFT OUTER JOIN org_user on org_user.org_id = ` + orgId + ` and org_user.user_id = u.id
LEFT OUTER JOIN org on org.id = org_user.org_id ` LEFT OUTER JOIN org on org.id = org_user.org_id `
sess := x.Table("user") sess := dbSess.Table("user")
sess = sess.Context(ctx) sess = sess.Context(ctx)
switch { switch {
case query.UserId > 0: case query.UserId > 0:
@ -589,13 +592,11 @@ func (ss *SQLStore) GetSignedInUser(ctx context.Context, query *models.GetSigned
query.Result = &user query.Result = &user
return err return err
})
} }
func (ss *SQLStore) SearchUsers(ctx context.Context, query *models.SearchUsersQuery) error { func (ss *SQLStore) SearchUsers(ctx context.Context, query *models.SearchUsersQuery) error {
return SearchUsers(ctx, query) return ss.WithDbSession(ctx, func(dbSess *DBSession) error {
}
func SearchUsers(ctx context.Context, query *models.SearchUsersQuery) error {
query.Result = models.SearchUserQueryResult{ query.Result = models.SearchUserQueryResult{
Users: make([]*models.UserSearchHitDTO, 0), Users: make([]*models.UserSearchHitDTO, 0),
} }
@ -604,7 +605,7 @@ func SearchUsers(ctx context.Context, query *models.SearchUsersQuery) error {
whereConditions := make([]string, 0) whereConditions := make([]string, 0)
whereParams := make([]interface{}, 0) whereParams := make([]interface{}, 0)
sess := x.Table("user").Alias("u") sess := dbSess.Table("user").Alias("u")
whereConditions = append(whereConditions, "u.is_service_account = ?") whereConditions = append(whereConditions, "u.is_service_account = ?")
whereParams = append(whereParams, dialect.BooleanStr(false)) whereParams = append(whereParams, dialect.BooleanStr(false))
@ -665,7 +666,7 @@ func SearchUsers(ctx context.Context, query *models.SearchUsersQuery) error {
// get total // get total
user := models.User{} user := models.User{}
countSess := x.Table("user").Alias("u") countSess := dbSess.Table("user").Alias("u")
// Join with user_auth table if users filtered by auth_module // Join with user_auth table if users filtered by auth_module
if query.AuthModule != "" { if query.AuthModule != "" {
@ -696,11 +697,13 @@ func SearchUsers(ctx context.Context, query *models.SearchUsersQuery) error {
} }
return err return err
})
} }
func (ss *SQLStore) DisableUser(ctx context.Context, cmd *models.DisableUserCommand) error { func (ss *SQLStore) DisableUser(ctx context.Context, cmd *models.DisableUserCommand) error {
return ss.WithDbSession(ctx, func(dbSess *DBSession) error {
user := models.User{} user := models.User{}
sess := x.Table("user") sess := dbSess.Table("user")
if has, err := sess.ID(cmd.UserId).Where(notServiceAccountFilter(ss)).Get(&user); err != nil { if has, err := sess.ID(cmd.UserId).Where(notServiceAccountFilter(ss)).Get(&user); err != nil {
return err return err
@ -713,6 +716,7 @@ func (ss *SQLStore) DisableUser(ctx context.Context, cmd *models.DisableUserComm
_, err := sess.ID(cmd.UserId).Update(&user) _, err := sess.ID(cmd.UserId).Update(&user)
return err return err
})
} }
func (ss *SQLStore) BatchDisableUsers(ctx context.Context, cmd *models.BatchDisableUsersCommand) error { func (ss *SQLStore) BatchDisableUsers(ctx context.Context, cmd *models.BatchDisableUsersCommand) error {

@ -130,7 +130,7 @@ func TestUserDataAccess(t *testing.T) {
// Return the first page of users and a total count // Return the first page of users and a total count
query := models.SearchUsersQuery{Query: "", Page: 1, Limit: 3} query := models.SearchUsersQuery{Query: "", Page: 1, Limit: 3}
err := SearchUsers(context.Background(), &query) err := ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 3) require.Len(t, query.Result.Users, 3)
@ -138,7 +138,7 @@ func TestUserDataAccess(t *testing.T) {
// Return the second page of users and a total count // Return the second page of users and a total count
query = models.SearchUsersQuery{Query: "", Page: 2, Limit: 3} query = models.SearchUsersQuery{Query: "", Page: 2, Limit: 3}
err = SearchUsers(context.Background(), &query) err = ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 2) require.Len(t, query.Result.Users, 2)
@ -146,28 +146,28 @@ func TestUserDataAccess(t *testing.T) {
// Return list of users matching query on user name // Return list of users matching query on user name
query = models.SearchUsersQuery{Query: "use", Page: 1, Limit: 3} query = models.SearchUsersQuery{Query: "use", Page: 1, Limit: 3}
err = SearchUsers(context.Background(), &query) err = ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 3) require.Len(t, query.Result.Users, 3)
require.EqualValues(t, query.Result.TotalCount, 5) require.EqualValues(t, query.Result.TotalCount, 5)
query = models.SearchUsersQuery{Query: "ser1", Page: 1, Limit: 3} query = models.SearchUsersQuery{Query: "ser1", Page: 1, Limit: 3}
err = SearchUsers(context.Background(), &query) err = ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 1) require.Len(t, query.Result.Users, 1)
require.EqualValues(t, query.Result.TotalCount, 1) require.EqualValues(t, query.Result.TotalCount, 1)
query = models.SearchUsersQuery{Query: "USER1", Page: 1, Limit: 3} query = models.SearchUsersQuery{Query: "USER1", Page: 1, Limit: 3}
err = SearchUsers(context.Background(), &query) err = ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 1) require.Len(t, query.Result.Users, 1)
require.EqualValues(t, query.Result.TotalCount, 1) require.EqualValues(t, query.Result.TotalCount, 1)
query = models.SearchUsersQuery{Query: "idontexist", Page: 1, Limit: 3} query = models.SearchUsersQuery{Query: "idontexist", Page: 1, Limit: 3}
err = SearchUsers(context.Background(), &query) err = ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 0) require.Len(t, query.Result.Users, 0)
@ -175,7 +175,7 @@ func TestUserDataAccess(t *testing.T) {
// Return list of users matching query on email // Return list of users matching query on email
query = models.SearchUsersQuery{Query: "ser1@test.com", Page: 1, Limit: 3} query = models.SearchUsersQuery{Query: "ser1@test.com", Page: 1, Limit: 3}
err = SearchUsers(context.Background(), &query) err = ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 1) require.Len(t, query.Result.Users, 1)
@ -183,7 +183,7 @@ func TestUserDataAccess(t *testing.T) {
// Return list of users matching query on login name // Return list of users matching query on login name
query = models.SearchUsersQuery{Query: "loginuser1", Page: 1, Limit: 3} query = models.SearchUsersQuery{Query: "loginuser1", Page: 1, Limit: 3}
err = SearchUsers(context.Background(), &query) err = ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 1) require.Len(t, query.Result.Users, 1)
@ -203,7 +203,7 @@ func TestUserDataAccess(t *testing.T) {
isDisabled := false isDisabled := false
query := models.SearchUsersQuery{IsDisabled: &isDisabled} query := models.SearchUsersQuery{IsDisabled: &isDisabled}
err := SearchUsers(context.Background(), &query) err := ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.Len(t, query.Result.Users, 2) require.Len(t, query.Result.Users, 2)
@ -330,7 +330,7 @@ func TestUserDataAccess(t *testing.T) {
isDisabled = true isDisabled = true
query5 := &models.SearchUsersQuery{IsDisabled: &isDisabled} query5 := &models.SearchUsersQuery{IsDisabled: &isDisabled}
err = SearchUsers(context.Background(), query5) err = ss.SearchUsers(context.Background(), query5)
require.Nil(t, err) require.Nil(t, err)
require.EqualValues(t, query5.Result.TotalCount, 5) require.EqualValues(t, query5.Result.TotalCount, 5)
@ -383,7 +383,7 @@ func TestUserDataAccess(t *testing.T) {
isDisabled := false isDisabled := false
query := &models.SearchUsersQuery{IsDisabled: &isDisabled} query := &models.SearchUsersQuery{IsDisabled: &isDisabled}
err = SearchUsers(context.Background(), query) err = ss.SearchUsers(context.Background(), query)
require.Nil(t, err) require.Nil(t, err)
require.EqualValues(t, query.Result.TotalCount, 5) require.EqualValues(t, query.Result.TotalCount, 5)
@ -414,7 +414,7 @@ func TestUserDataAccess(t *testing.T) {
require.Nil(t, err) require.Nil(t, err)
query := models.SearchUsersQuery{} query := models.SearchUsersQuery{}
err = SearchUsers(context.Background(), &query) err = ss.SearchUsers(context.Background(), &query)
require.Nil(t, err) require.Nil(t, err)
require.EqualValues(t, query.Result.TotalCount, 5) require.EqualValues(t, query.Result.TotalCount, 5)

Loading…
Cancel
Save