[MM-16167] Migrate "Team.GetAllPrivateTeamPageListing" to Sync by def… (#11181)

* [MM-16167] Migrate "Team.GetAllPrivateTeamPageListing" to Sync by default

* Fix shadow variable error
This commit is contained in:
piperRyan
2019-06-14 04:26:55 -06:00
committed by Jesús Espino
parent 570e6f1a74
commit 1f02b0ce72
5 changed files with 32 additions and 36 deletions

View File

@@ -631,11 +631,7 @@ func (a *App) GetAllPrivateTeams() ([]*model.Team, *model.AppError) {
}
func (a *App) GetAllPrivateTeamsPage(offset int, limit int) ([]*model.Team, *model.AppError) {
result := <-a.Srv.Store.Team().GetAllPrivateTeamPageListing(offset, limit)
if result.Err != nil {
return nil, result.Err
}
return result.Data.([]*model.Team), nil
return a.Srv.Store.Team().GetAllPrivateTeamPageListing(offset, limit)
}
func (a *App) GetAllPublicTeams() ([]*model.Team, *model.AppError) {

View File

@@ -400,22 +400,19 @@ func (s SqlTeamStore) GetAllPrivateTeamListing() store.StoreChannel {
})
}
func (s SqlTeamStore) GetAllPrivateTeamPageListing(offset int, limit int) store.StoreChannel {
return store.Do(func(result *store.StoreResult) {
query := "SELECT * FROM Teams WHERE AllowOpenInvite = 0 ORDER BY DisplayName LIMIT :Limit OFFSET :Offset"
func (s SqlTeamStore) GetAllPrivateTeamPageListing(offset int, limit int) ([]*model.Team, *model.AppError) {
query := "SELECT * FROM Teams WHERE AllowOpenInvite = 0 ORDER BY DisplayName LIMIT :Limit OFFSET :Offset"
if s.DriverName() == model.DATABASE_DRIVER_POSTGRES {
query = "SELECT * FROM Teams WHERE AllowOpenInvite = false ORDER BY DisplayName LIMIT :Limit OFFSET :Offset"
}
if s.DriverName() == model.DATABASE_DRIVER_POSTGRES {
query = "SELECT * FROM Teams WHERE AllowOpenInvite = false ORDER BY DisplayName LIMIT :Limit OFFSET :Offset"
}
var data []*model.Team
if _, err := s.GetReplica().Select(&data, query, map[string]interface{}{"Offset": offset, "Limit": limit}); err != nil {
result.Err = model.NewAppError("SqlTeamStore.GetAllPrivateTeamListing", "store.sql_team.get_all_private_team_listing.app_error", nil, err.Error(), http.StatusInternalServerError)
return
}
var data []*model.Team
if _, err := s.GetReplica().Select(&data, query, map[string]interface{}{"Offset": offset, "Limit": limit}); err != nil {
return nil, model.NewAppError("SqlTeamStore.GetAllPrivateTeamListing", "store.sql_team.get_all_private_team_listing.app_error", nil, err.Error(), http.StatusInternalServerError)
}
result.Data = data
})
return data, nil
}
func (s SqlTeamStore) GetAllTeamListing() store.StoreChannel {

View File

@@ -93,7 +93,7 @@ type TeamStore interface {
GetAll() ([]*model.Team, *model.AppError)
GetAllPage(offset int, limit int) StoreChannel
GetAllPrivateTeamListing() StoreChannel
GetAllPrivateTeamPageListing(offset int, limit int) StoreChannel
GetAllPrivateTeamPageListing(offset int, limit int) ([]*model.Team, *model.AppError)
GetAllTeamListing() StoreChannel
GetAllTeamPageListing(offset int, limit int) StoreChannel
GetTeamsByUserId(userId string) StoreChannel

View File

@@ -181,19 +181,28 @@ func (_m *TeamStore) GetAllPrivateTeamListing() store.StoreChannel {
}
// GetAllPrivateTeamPageListing provides a mock function with given fields: offset, limit
func (_m *TeamStore) GetAllPrivateTeamPageListing(offset int, limit int) store.StoreChannel {
func (_m *TeamStore) GetAllPrivateTeamPageListing(offset int, limit int) ([]*model.Team, *model.AppError) {
ret := _m.Called(offset, limit)
var r0 store.StoreChannel
if rf, ok := ret.Get(0).(func(int, int) store.StoreChannel); ok {
var r0 []*model.Team
if rf, ok := ret.Get(0).(func(int, int) []*model.Team); ok {
r0 = rf(offset, limit)
} else {
if ret.Get(0) != nil {
r0 = ret.Get(0).(store.StoreChannel)
r0 = ret.Get(0).([]*model.Team)
}
}
return r0
var r1 *model.AppError
if rf, ok := ret.Get(1).(func(int, int) *model.AppError); ok {
r1 = rf(offset, limit)
} else {
if ret.Get(1) != nil {
r1 = ret.Get(1).(*model.AppError)
}
}
return r0, r1
}
// GetAllTeamListing provides a mock function with given fields:

View File

@@ -683,11 +683,9 @@ func testGetAllPrivateTeamPageListing(t *testing.T, ss store.Store) {
_, err = ss.Team().Save(&o4)
require.Nil(t, err)
if r1 := <-ss.Team().GetAllPrivateTeamPageListing(0, 10); r1.Err != nil {
t.Fatal(r1.Err)
if teams, listErr := ss.Team().GetAllPrivateTeamPageListing(0, 10); listErr != nil {
t.Fatal(listErr)
} else {
teams := r1.Data.([]*model.Team)
for _, team := range teams {
if team.AllowOpenInvite {
t.Fatal("should have returned team with AllowOpenInvite as false")
@@ -708,11 +706,9 @@ func testGetAllPrivateTeamPageListing(t *testing.T, ss store.Store) {
_, err = ss.Team().Save(&o5)
require.Nil(t, err)
if r1 := <-ss.Team().GetAllPrivateTeamPageListing(0, 4); r1.Err != nil {
t.Fatal(r1.Err)
if teams, listErr := ss.Team().GetAllPrivateTeamPageListing(0, 4); listErr != nil {
t.Fatal(listErr)
} else {
teams := r1.Data.([]*model.Team)
for _, team := range teams {
if team.AllowOpenInvite {
t.Fatal("should have returned team with AllowOpenInvite as false")
@@ -724,11 +720,9 @@ func testGetAllPrivateTeamPageListing(t *testing.T, ss store.Store) {
}
}
if r1 := <-ss.Team().GetAllPrivateTeamPageListing(1, 1); r1.Err != nil {
t.Fatal(r1.Err)
if teams, listErr := ss.Team().GetAllPrivateTeamPageListing(1, 1); listErr != nil {
t.Fatal(listErr)
} else {
teams := r1.Data.([]*model.Team)
for _, team := range teams {
if team.AllowOpenInvite {
t.Fatal("should have returned team with AllowOpenInvite as false")