[MM-37557] Move error out of client4 response (#18101)
* Return an error seperately from Response * Remove BuildErrorResponse * Drop Response.Error from model/client4.go * Migrate require.Nil checks * Migrate require.NotNil checks * More manual fixes * Move error check out of CheckOKStatus and CheckCreatedStatus * Move error check out of CheckForbiddenStatus * Move error check out of CheckUnauthorizedStatus * Move error check out of CheckNotFoundStatus * Move error check out of CheckBadRequestStatus * Move error check out of CheckNotImplementedStatus and CheckRequestEntityTooLargeStatus * Move error check out of CheckInternalErrorStatus * Move error check out of CheckServiceUnavailableStatus * Remove error check from checkHTTPStatus * Remove remaining references to Response.Error * Check previously unchecked errors * Manually fix compile and linter errors * Return error in CreateWebSocket methods * Return error instead of *AppError in DoApi methods * Manually fix bad replacments * Conistently return Response and error * Use err instead of seperate bool return value to indicate success * Reduce ussage of model.AppError in web/oauth_test.go * Remove client4.Must * Check error in buf.ReadFrom * Fix failing tests
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
96593580ae
Коммит
a8ca5c423f
@@ -1709,8 +1709,8 @@ func TestPluginHTTPUpgradeWebSocket(t *testing.T) {
|
||||
require.NotEmpty(t, pluginID)
|
||||
|
||||
reqURL := fmt.Sprintf("ws://localhost:%d/plugins/%s", th.Server.ListenAddr.Port, pluginID)
|
||||
wsc, appErr := model.NewWebSocketClient(reqURL, "")
|
||||
require.Nil(t, appErr)
|
||||
wsc, err := model.NewWebSocketClient(reqURL, "")
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, wsc)
|
||||
|
||||
wsc.Listen()
|
||||
|
||||
@@ -77,14 +77,14 @@ func CreateTestEnvironmentInTeam(a *app.App, c *request.Context, client *model.C
|
||||
// Have every user join every channel
|
||||
for _, user := range users {
|
||||
for _, channel := range channels {
|
||||
_, resp := client.LoginById(user.Id, UserPassword)
|
||||
if resp.Error != nil {
|
||||
return TeamEnvironment{}, resp.Error
|
||||
_, _, err := client.LoginById(user.Id, UserPassword)
|
||||
if err != nil {
|
||||
return TeamEnvironment{}, err
|
||||
}
|
||||
|
||||
_, resp = client.AddChannelMember(channel.Id, user.Id)
|
||||
if resp.Error != nil {
|
||||
return TeamEnvironment{}, resp.Error
|
||||
_, _, err = client.AddChannelMember(channel.Id, user.Id)
|
||||
if err != nil {
|
||||
return TeamEnvironment{}, err
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -93,9 +93,9 @@ func CreateTestEnvironmentInTeam(a *app.App, c *request.Context, client *model.C
|
||||
numImages := utils.RandIntFromRange(rangePosts) / 4
|
||||
for j := 0; j < numPosts; j++ {
|
||||
user := users[utils.RandIntFromRange(utils.Range{Begin: 0, End: len(users) - 1})]
|
||||
_, resp := client.LoginById(user.Id, UserPassword)
|
||||
if resp.Error != nil {
|
||||
return TeamEnvironment{}, resp.Error
|
||||
_, _, err := client.LoginById(user.Id, UserPassword)
|
||||
if err != nil {
|
||||
return TeamEnvironment{}, err
|
||||
}
|
||||
|
||||
for i, channel := range channels {
|
||||
|
||||
@@ -57,9 +57,9 @@ func (cfg *AutoTeamCreator) createRandomTeam() (*model.Team, error) {
|
||||
Type: model.TeamOpen,
|
||||
}
|
||||
|
||||
createdTeam, resp := cfg.client.CreateTeam(team)
|
||||
if resp.Error != nil {
|
||||
return nil, resp.Error
|
||||
createdTeam, _, err := cfg.client.CreateTeam(team)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return createdTeam, nil
|
||||
}
|
||||
|
||||
@@ -39,23 +39,23 @@ func NewAutoUserCreator(a *app.App, client *model.Client4, team *model.Team) *Au
|
||||
}
|
||||
|
||||
// Basic test team and user so you always know one
|
||||
func CreateBasicUser(a *app.App, client *model.Client4) *model.AppError {
|
||||
found, _ := client.TeamExists(BTestTeamName, "")
|
||||
func CreateBasicUser(a *app.App, client *model.Client4) error {
|
||||
found, _, _ := client.TeamExists(BTestTeamName, "")
|
||||
if found {
|
||||
return nil
|
||||
}
|
||||
|
||||
newteam := &model.Team{DisplayName: BTestTeamDisplayName, Name: BTestTeamName, Email: BTestTeamEmail, Type: BTestTeamType}
|
||||
basicteam, resp := client.CreateTeam(newteam)
|
||||
if resp.Error != nil {
|
||||
return resp.Error
|
||||
basicteam, _, err := client.CreateTeam(newteam)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
newuser := &model.User{Email: BTestUserEmail, Nickname: BTestUserName, Password: BTestUserPassword}
|
||||
ruser, resp := client.CreateUser(newuser)
|
||||
if resp.Error != nil {
|
||||
return resp.Error
|
||||
ruser, _, err := client.CreateUser(newuser)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
_, err := a.Srv().Store.User().VerifyEmail(ruser.Id, ruser.Email)
|
||||
_, err = a.Srv().Store.User().VerifyEmail(ruser.Id, ruser.Email)
|
||||
if err != nil {
|
||||
return model.NewAppError("CreateBasicUser", "app.user.verify_email.app_error", nil, err.Error(), http.StatusInternalServerError)
|
||||
}
|
||||
|
||||
@@ -215,9 +215,9 @@ func (*LoadTestProvider) SetupCommand(a *app.App, c *request.Context, args *mode
|
||||
if err := CreateBasicUser(a, client); err != nil {
|
||||
return &model.CommandResponse{Text: "Failed to create testing environment", ResponseType: model.CommandResponseTypeEphemeral}, err
|
||||
}
|
||||
_, resp := client.Login(BTestUserEmail, BTestUserPassword)
|
||||
if resp.Error != nil {
|
||||
return &model.CommandResponse{Text: "Failed to create testing environment", ResponseType: model.CommandResponseTypeEphemeral}, resp.Error
|
||||
_, _, err := client.Login(BTestUserEmail, BTestUserPassword)
|
||||
if err != nil {
|
||||
return &model.CommandResponse{Text: "Failed to create testing environment", ResponseType: model.CommandResponseTypeEphemeral}, err
|
||||
}
|
||||
environment, err := CreateTestEnvironmentWithTeams(
|
||||
a,
|
||||
@@ -443,18 +443,18 @@ func (*LoadTestProvider) PostCommand(a *app.App, args *model.CommandArgs, messag
|
||||
}
|
||||
|
||||
client := model.NewAPIv4Client(args.SiteURL)
|
||||
_, resp := client.LoginById(user.Id, passwd)
|
||||
if resp.Error != nil {
|
||||
return &model.CommandResponse{Text: "Failed to login a user", ResponseType: model.CommandResponseTypeEphemeral}, resp.Error
|
||||
_, _, nErr := client.LoginById(user.Id, passwd)
|
||||
if nErr != nil {
|
||||
return &model.CommandResponse{Text: "Failed to login a user", ResponseType: model.CommandResponseTypeEphemeral}, nErr
|
||||
}
|
||||
|
||||
post := &model.Post{
|
||||
ChannelId: channel.Id,
|
||||
Message: textMessage,
|
||||
}
|
||||
_, resp = client.CreatePost(post)
|
||||
if resp.Error != nil {
|
||||
return &model.CommandResponse{Text: "Failed to create a post", ResponseType: model.CommandResponseTypeEphemeral}, resp.Error
|
||||
_, _, nErr = client.CreatePost(post)
|
||||
if nErr != nil {
|
||||
return &model.CommandResponse{Text: "Failed to create a post", ResponseType: model.CommandResponseTypeEphemeral}, nErr
|
||||
}
|
||||
|
||||
return &model.CommandResponse{Text: "Added a post to " + channel.DisplayName, ResponseType: model.CommandResponseTypeEphemeral}, nil
|
||||
|
||||
Ссылка в новой задаче
Block a user