From 3c2b1571f4fb868ccb7a77d166f9c74b6ebe70cc Mon Sep 17 00:00:00 2001 From: Rodrigo Villablanca Date: Thu, 9 Jul 2020 12:25:23 -0400 Subject: [PATCH] Prevent spurious error (#14796) * Simple fix * Suggestions Co-authored-by: Mattermod --- app/webhook_test.go | 10 ++++++++++ model/outgoing_webhook.go | 3 +++ 2 files changed, 13 insertions(+) diff --git a/app/webhook_test.go b/app/webhook_test.go index 1e9bd0fe6c..95710bc4f1 100644 --- a/app/webhook_test.go +++ b/app/webhook_test.go @@ -798,4 +798,14 @@ func TestDoOutgoingWebhookRequest(t *testing.T) { require.NotNil(t, err) require.IsType(t, &url.Error{}, err) }) + + t.Run("without response", func(t *testing.T) { + server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + })) + defer server.Close() + + resp, err := th.App.doOutgoingWebhookRequest(server.URL, strings.NewReader(""), "application/json") + require.Nil(t, err) + require.Nil(t, resp) + }) } diff --git a/model/outgoing_webhook.go b/model/outgoing_webhook.go index f4278de0d0..d6cb213833 100644 --- a/model/outgoing_webhook.go +++ b/model/outgoing_webhook.go @@ -112,6 +112,9 @@ func (o *OutgoingWebhookResponse) ToJson() string { func OutgoingWebhookResponseFromJson(data io.Reader) (*OutgoingWebhookResponse, error) { var o *OutgoingWebhookResponse err := json.NewDecoder(data).Decode(&o) + if err == io.EOF { + return nil, nil + } return o, err }