From 308948b3838c88621e738762241e8d1980881a17 Mon Sep 17 00:00:00 2001 From: Zeger-Jan van de Weg Date: Thu, 15 Oct 2020 08:44:05 +0200 Subject: tests: Replace assert with require Testify features sub packages `assert` and `require`. The difference is subtle, and lost on novice Golang developers that don't read the docs. To create a more consistent code base `assert` will no longer be used. This change was generated by a running a sed command on all `_test.go` files, followed by `goimports -w`. --- client/client_test.go | 109 ++++++++++++++++++++++----------------------- client/httpclient_test.go | 15 +++---- client/httpsclient_test.go | 7 ++- 3 files changed, 64 insertions(+), 67 deletions(-) (limited to 'client') diff --git a/client/client_test.go b/client/client_test.go index e0650b2..9895012 100644 --- a/client/client_test.go +++ b/client/client_test.go @@ -12,7 +12,6 @@ import ( "testing" "github.com/sirupsen/logrus" - "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "gitlab.com/gitlab-org/gitlab-shell/client/testserver" "gitlab.com/gitlab-org/gitlab-shell/internal/testhelper" @@ -86,17 +85,17 @@ func testSuccessfulGet(t *testing.T, client *GitlabNetClient) { defer response.Body.Close() responseBody, err := ioutil.ReadAll(response.Body) - assert.NoError(t, err) - assert.Equal(t, string(responseBody), "Hello") + require.NoError(t, err) + require.Equal(t, string(responseBody), "Hello") require.True(t, testhelper.WaitForLogEvent(hook)) entries := hook.AllEntries() - assert.Equal(t, 1, len(entries)) - assert.Equal(t, logrus.InfoLevel, entries[0].Level) - assert.Contains(t, entries[0].Message, "method=GET") - assert.Contains(t, entries[0].Message, "status=200") - assert.Contains(t, entries[0].Message, "Finished HTTP request") - assert.Contains(t, entries[0].Message, "correlation_id=") + require.Equal(t, 1, len(entries)) + require.Equal(t, logrus.InfoLevel, entries[0].Level) + require.Contains(t, entries[0].Message, "method=GET") + require.Contains(t, entries[0].Message, "status=200") + require.Contains(t, entries[0].Message, "Finished HTTP request") + require.Contains(t, entries[0].Message, "correlation_id=") }) } @@ -112,17 +111,17 @@ func testSuccessfulPost(t *testing.T, client *GitlabNetClient) { defer response.Body.Close() responseBody, err := ioutil.ReadAll(response.Body) - assert.NoError(t, err) - assert.Equal(t, "Echo: {\"key\":\"value\"}", string(responseBody)) + require.NoError(t, err) + require.Equal(t, "Echo: {\"key\":\"value\"}", string(responseBody)) require.True(t, testhelper.WaitForLogEvent(hook)) entries := hook.AllEntries() - assert.Equal(t, 1, len(entries)) - assert.Equal(t, logrus.InfoLevel, entries[0].Level) - assert.Contains(t, entries[0].Message, "method=POST") - assert.Contains(t, entries[0].Message, "status=200") - assert.Contains(t, entries[0].Message, "Finished HTTP request") - assert.Contains(t, entries[0].Message, "correlation_id=") + require.Equal(t, 1, len(entries)) + require.Equal(t, logrus.InfoLevel, entries[0].Level) + require.Contains(t, entries[0].Message, "method=POST") + require.Contains(t, entries[0].Message, "status=200") + require.Contains(t, entries[0].Message, "Finished HTTP request") + require.Contains(t, entries[0].Message, "correlation_id=") }) } @@ -130,47 +129,47 @@ func testMissing(t *testing.T, client *GitlabNetClient) { t.Run("Missing error for GET", func(t *testing.T) { hook := testhelper.SetupLogger() response, err := client.Get(context.Background(), "/missing") - assert.EqualError(t, err, "Internal API error (404)") - assert.Nil(t, response) + require.EqualError(t, err, "Internal API error (404)") + require.Nil(t, response) require.True(t, testhelper.WaitForLogEvent(hook)) entries := hook.AllEntries() - assert.Equal(t, 1, len(entries)) - assert.Equal(t, logrus.InfoLevel, entries[0].Level) - assert.Contains(t, entries[0].Message, "method=GET") - assert.Contains(t, entries[0].Message, "status=404") - assert.Contains(t, entries[0].Message, "Internal API error") - assert.Contains(t, entries[0].Message, "correlation_id=") + require.Equal(t, 1, len(entries)) + require.Equal(t, logrus.InfoLevel, entries[0].Level) + require.Contains(t, entries[0].Message, "method=GET") + require.Contains(t, entries[0].Message, "status=404") + require.Contains(t, entries[0].Message, "Internal API error") + require.Contains(t, entries[0].Message, "correlation_id=") }) t.Run("Missing error for POST", func(t *testing.T) { hook := testhelper.SetupLogger() response, err := client.Post(context.Background(), "/missing", map[string]string{}) - assert.EqualError(t, err, "Internal API error (404)") - assert.Nil(t, response) + require.EqualError(t, err, "Internal API error (404)") + require.Nil(t, response) require.True(t, testhelper.WaitForLogEvent(hook)) entries := hook.AllEntries() - assert.Equal(t, 1, len(entries)) - assert.Equal(t, logrus.InfoLevel, entries[0].Level) - assert.Contains(t, entries[0].Message, "method=POST") - assert.Contains(t, entries[0].Message, "status=404") - assert.Contains(t, entries[0].Message, "Internal API error") - assert.Contains(t, entries[0].Message, "correlation_id=") + require.Equal(t, 1, len(entries)) + require.Equal(t, logrus.InfoLevel, entries[0].Level) + require.Contains(t, entries[0].Message, "method=POST") + require.Contains(t, entries[0].Message, "status=404") + require.Contains(t, entries[0].Message, "Internal API error") + require.Contains(t, entries[0].Message, "correlation_id=") }) } func testErrorMessage(t *testing.T, client *GitlabNetClient) { t.Run("Error with message for GET", func(t *testing.T) { response, err := client.Get(context.Background(), "/error") - assert.EqualError(t, err, "Don't do that") - assert.Nil(t, response) + require.EqualError(t, err, "Don't do that") + require.Nil(t, response) }) t.Run("Error with message for POST", func(t *testing.T) { response, err := client.Post(context.Background(), "/error", map[string]string{}) - assert.EqualError(t, err, "Don't do that") - assert.Nil(t, response) + require.EqualError(t, err, "Don't do that") + require.Nil(t, response) }) } @@ -179,34 +178,34 @@ func testBrokenRequest(t *testing.T, client *GitlabNetClient) { hook := testhelper.SetupLogger() response, err := client.Get(context.Background(), "/broken") - assert.EqualError(t, err, "Internal API unreachable") - assert.Nil(t, response) + require.EqualError(t, err, "Internal API unreachable") + require.Nil(t, response) require.True(t, testhelper.WaitForLogEvent(hook)) entries := hook.AllEntries() - assert.Equal(t, 1, len(entries)) - assert.Equal(t, logrus.InfoLevel, entries[0].Level) - assert.Contains(t, entries[0].Message, "method=GET") - assert.NotContains(t, entries[0].Message, "status=") - assert.Contains(t, entries[0].Message, "Internal API unreachable") - assert.Contains(t, entries[0].Message, "correlation_id=") + require.Equal(t, 1, len(entries)) + require.Equal(t, logrus.InfoLevel, entries[0].Level) + require.Contains(t, entries[0].Message, "method=GET") + require.NotContains(t, entries[0].Message, "status=") + require.Contains(t, entries[0].Message, "Internal API unreachable") + require.Contains(t, entries[0].Message, "correlation_id=") }) t.Run("Broken request for POST", func(t *testing.T) { hook := testhelper.SetupLogger() response, err := client.Post(context.Background(), "/broken", map[string]string{}) - assert.EqualError(t, err, "Internal API unreachable") - assert.Nil(t, response) + require.EqualError(t, err, "Internal API unreachable") + require.Nil(t, response) require.True(t, testhelper.WaitForLogEvent(hook)) entries := hook.AllEntries() - assert.Equal(t, 1, len(entries)) - assert.Equal(t, logrus.InfoLevel, entries[0].Level) - assert.Contains(t, entries[0].Message, "method=POST") - assert.NotContains(t, entries[0].Message, "status=") - assert.Contains(t, entries[0].Message, "Internal API unreachable") - assert.Contains(t, entries[0].Message, "correlation_id=") + require.Equal(t, 1, len(entries)) + require.Equal(t, logrus.InfoLevel, entries[0].Level) + require.Contains(t, entries[0].Message, "method=POST") + require.NotContains(t, entries[0].Message, "status=") + require.Contains(t, entries[0].Message, "Internal API unreachable") + require.Contains(t, entries[0].Message, "correlation_id=") }) } @@ -223,7 +222,7 @@ func testAuthenticationHeader(t *testing.T, client *GitlabNetClient) { header, err := base64.StdEncoding.DecodeString(string(responseBody)) require.NoError(t, err) - assert.Equal(t, "sssh, it's a secret", string(header)) + require.Equal(t, "sssh, it's a secret", string(header)) }) t.Run("Authentication headers for POST", func(t *testing.T) { @@ -238,7 +237,7 @@ func testAuthenticationHeader(t *testing.T, client *GitlabNetClient) { header, err := base64.StdEncoding.DecodeString(string(responseBody)) require.NoError(t, err) - assert.Equal(t, "sssh, it's a secret", string(header)) + require.Equal(t, "sssh, it's a secret", string(header)) }) } diff --git a/client/httpclient_test.go b/client/httpclient_test.go index 59dabc4..2d2a06e 100644 --- a/client/httpclient_test.go +++ b/client/httpclient_test.go @@ -10,7 +10,6 @@ import ( "testing" "time" - "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "gitlab.com/gitlab-org/gitlab-shell/client/testserver" ) @@ -21,7 +20,7 @@ func TestReadTimeout(t *testing.T) { client := NewHTTPClient("http://localhost:3000", "", "", "", false, expectedSeconds) require.NotNil(t, client) - assert.Equal(t, time.Duration(expectedSeconds)*time.Second, client.Client.Timeout) + require.Equal(t, time.Duration(expectedSeconds)*time.Second, client.Client.Timeout) } const ( @@ -66,15 +65,15 @@ func testBasicAuthHeaders(t *testing.T, response *http.Response) { require.NotNil(t, response) responseBody, err := ioutil.ReadAll(response.Body) - assert.NoError(t, err) + require.NoError(t, err) headerParts := strings.Split(string(responseBody), " ") - assert.Equal(t, "Basic", headerParts[0]) + require.Equal(t, "Basic", headerParts[0]) credentials, err := base64.StdEncoding.DecodeString(headerParts[1]) require.NoError(t, err) - assert.Equal(t, username+":"+password, string(credentials)) + require.Equal(t, username+":"+password, string(credentials)) } func TestEmptyBasicAuthSettings(t *testing.T) { @@ -82,7 +81,7 @@ func TestEmptyBasicAuthSettings(t *testing.T) { { Path: "/api/v4/internal/empty_basic_auth", Handler: func(w http.ResponseWriter, r *http.Request) { - assert.Equal(t, "", r.Header.Get("Authorization")) + require.Equal(t, "", r.Header.Get("Authorization")) }, }, } @@ -100,13 +99,13 @@ func TestRequestWithUserAgent(t *testing.T) { { Path: "/api/v4/internal/default_user_agent", Handler: func(w http.ResponseWriter, r *http.Request) { - assert.Equal(t, defaultUserAgent, r.UserAgent()) + require.Equal(t, defaultUserAgent, r.UserAgent()) }, }, { Path: "/api/v4/internal/override_user_agent", Handler: func(w http.ResponseWriter, r *http.Request) { - assert.Equal(t, gitalyUserAgent, r.UserAgent()) + require.Equal(t, gitalyUserAgent, r.UserAgent()) }, }, } diff --git a/client/httpsclient_test.go b/client/httpsclient_test.go index 0cf77e3..d76890b 100644 --- a/client/httpsclient_test.go +++ b/client/httpsclient_test.go @@ -8,7 +8,6 @@ import ( "path" "testing" - "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" "gitlab.com/gitlab-org/gitlab-shell/client/testserver" "gitlab.com/gitlab-org/gitlab-shell/internal/testhelper" @@ -51,8 +50,8 @@ func TestSuccessfulRequests(t *testing.T) { defer response.Body.Close() responseBody, err := ioutil.ReadAll(response.Body) - assert.NoError(t, err) - assert.Equal(t, string(responseBody), "Hello") + require.NoError(t, err) + require.Equal(t, string(responseBody), "Hello") }) } } @@ -84,7 +83,7 @@ func TestFailedRequests(t *testing.T) { _, err := client.Get(context.Background(), "/hello") require.Error(t, err) - assert.Equal(t, err.Error(), "Internal API unreachable") + require.Equal(t, err.Error(), "Internal API unreachable") }) } } -- cgit v1.2.1