[MM-58163] Jobs paging/offset refactor (#30343)
Co-authored-by: Ben Schumacher <ben.schumacher@mattermost.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
04ec01d312
Коммит
f54d5b41c1
@@ -28,24 +28,15 @@ func (a *App) GetJob(c request.CTX, id string) (*model.Job, *model.AppError) {
|
||||
}
|
||||
|
||||
func (a *App) GetJobsByTypePage(c request.CTX, jobType string, page int, perPage int) ([]*model.Job, *model.AppError) {
|
||||
return a.GetJobsByType(c, jobType, page*perPage, perPage)
|
||||
}
|
||||
|
||||
func (a *App) GetJobsByType(c request.CTX, jobType string, offset int, limit int) ([]*model.Job, *model.AppError) {
|
||||
jobs, err := a.Srv().Store().Job().GetAllByTypePage(c, jobType, offset, limit)
|
||||
jobs, err := a.Srv().Store().Job().GetAllByTypePage(c, jobType, page, perPage)
|
||||
if err != nil {
|
||||
return nil, model.NewAppError("GetJobsByType", "app.job.get_all.app_error", nil, "", http.StatusInternalServerError).Wrap(err)
|
||||
}
|
||||
|
||||
return jobs, nil
|
||||
}
|
||||
|
||||
func (a *App) GetJobsByTypesPage(c request.CTX, jobType []string, page int, perPage int) ([]*model.Job, *model.AppError) {
|
||||
return a.GetJobsByTypes(c, jobType, page*perPage, perPage)
|
||||
}
|
||||
|
||||
func (a *App) GetJobsByTypes(c request.CTX, jobTypes []string, offset int, limit int) ([]*model.Job, *model.AppError) {
|
||||
jobs, err := a.Srv().Store().Job().GetAllByTypesPage(c, jobTypes, offset, limit)
|
||||
jobs, err := a.Srv().Store().Job().GetAllByTypesPage(c, jobType, page, perPage)
|
||||
if err != nil {
|
||||
return nil, model.NewAppError("GetJobsByType", "app.job.get_all.app_error", nil, "", http.StatusInternalServerError).Wrap(err)
|
||||
}
|
||||
@@ -53,7 +44,7 @@ func (a *App) GetJobsByTypes(c request.CTX, jobTypes []string, offset int, limit
|
||||
}
|
||||
|
||||
func (a *App) GetJobsByTypeAndStatus(c request.CTX, jobTypes []string, status string, page int, perPage int) ([]*model.Job, *model.AppError) {
|
||||
jobs, err := a.Srv().Store().Job().GetAllByTypeAndStatusPage(c, jobTypes, status, page*perPage, perPage)
|
||||
jobs, err := a.Srv().Store().Job().GetAllByTypeAndStatusPage(c, jobTypes, status, page, perPage)
|
||||
if err != nil {
|
||||
return nil, model.NewAppError("GetAllByTypeAndStatusPage", "app.job.get_all.app_error", nil, "", http.StatusInternalServerError).Wrap(err)
|
||||
}
|
||||
|
||||
@@ -249,13 +249,13 @@ func TestGetJobByType(t *testing.T) {
|
||||
}()
|
||||
}
|
||||
|
||||
received, err := th.App.GetJobsByType(th.Context, jobType, 0, 2)
|
||||
received, err := th.App.GetJobsByTypePage(th.Context, jobType, 0, 2)
|
||||
require.Nil(t, err)
|
||||
require.Len(t, received, 2, "received wrong number of statuses")
|
||||
require.Equal(t, statuses[2], received[0], "should've received newest job first")
|
||||
require.Equal(t, statuses[0], received[1], "should've received second newest job second")
|
||||
|
||||
received, err = th.App.GetJobsByType(th.Context, jobType, 2, 2)
|
||||
received, err = th.App.GetJobsByTypePage(th.Context, jobType, 1, 2)
|
||||
require.Nil(t, err)
|
||||
require.Len(t, received, 1, "received wrong number of statuses")
|
||||
require.Equal(t, statuses[1], received[0], "should've received oldest job last")
|
||||
@@ -297,19 +297,19 @@ func TestGetJobsByTypes(t *testing.T) {
|
||||
}
|
||||
|
||||
jobTypes := []string{jobType, jobType1, jobType2}
|
||||
received, err := th.App.GetJobsByTypes(th.Context, jobTypes, 0, 2)
|
||||
received, err := th.App.GetJobsByTypesPage(th.Context, jobTypes, 0, 2)
|
||||
require.Nil(t, err)
|
||||
require.Len(t, received, 2, "received wrong number of jobs")
|
||||
require.Equal(t, statuses[2], received[0], "should've received newest job first")
|
||||
require.Equal(t, statuses[0], received[1], "should've received second newest job second")
|
||||
|
||||
received, err = th.App.GetJobsByTypes(th.Context, jobTypes, 2, 2)
|
||||
received, err = th.App.GetJobsByTypesPage(th.Context, jobTypes, 1, 2)
|
||||
require.Nil(t, err)
|
||||
require.Len(t, received, 1, "received wrong number of jobs")
|
||||
require.Equal(t, statuses[1], received[0], "should've received oldest job last")
|
||||
|
||||
jobTypes = []string{jobType1, jobType2}
|
||||
received, err = th.App.GetJobsByTypes(th.Context, jobTypes, 0, 3)
|
||||
received, err = th.App.GetJobsByTypesPage(th.Context, jobTypes, 0, 3)
|
||||
require.Nil(t, err)
|
||||
require.Len(t, received, 2, "received wrong number of jobs")
|
||||
require.Equal(t, statuses[2], received[0], "received wrong job type")
|
||||
|
||||
Ссылка в новой задаче
Block a user