summaryrefslogtreecommitdiff
path: root/client
diff options
context:
space:
mode:
Diffstat (limited to 'client')
-rw-r--r--client/client_test.go7
-rw-r--r--client/httpclient_test.go15
-rw-r--r--client/httpsclient_test.go12
-rw-r--r--client/testserver/gitalyserver.go12
-rw-r--r--client/testserver/testserver.go26
5 files changed, 36 insertions, 36 deletions
diff --git a/client/client_test.go b/client/client_test.go
index fec51c5..90cd499 100644
--- a/client/client_test.go
+++ b/client/client_test.go
@@ -26,7 +26,7 @@ func TestClients(t *testing.T) {
desc string
relativeURLRoot string
caFile string
- server func(*testing.T, []testserver.TestRequestHandler) (string, func())
+ server func(*testing.T, []testserver.TestRequestHandler) string
}{
{
desc: "Socket client",
@@ -49,7 +49,7 @@ func TestClients(t *testing.T) {
{
desc: "Https client",
caFile: path.Join(testhelper.TestRoot, "certs/valid/server.crt"),
- server: func(t *testing.T, handlers []testserver.TestRequestHandler) (string, func()) {
+ server: func(t *testing.T, handlers []testserver.TestRequestHandler) string {
return testserver.StartHttpsServer(t, handlers, "")
},
},
@@ -57,8 +57,7 @@ func TestClients(t *testing.T) {
for _, tc := range testCases {
t.Run(tc.desc, func(t *testing.T) {
- url, cleanup := tc.server(t, buildRequests(t, tc.relativeURLRoot))
- defer cleanup()
+ url := tc.server(t, buildRequests(t, tc.relativeURLRoot))
secret := "sssh, it's a secret"
diff --git a/client/httpclient_test.go b/client/httpclient_test.go
index 2d2a06e..5c1ebe3 100644
--- a/client/httpclient_test.go
+++ b/client/httpclient_test.go
@@ -48,8 +48,7 @@ func TestBasicAuthSettings(t *testing.T) {
},
}
- client, cleanup := setup(t, username, password, requests)
- defer cleanup()
+ client := setup(t, username, password, requests)
response, err := client.Get(context.Background(), "/get_endpoint")
require.NoError(t, err)
@@ -86,8 +85,7 @@ func TestEmptyBasicAuthSettings(t *testing.T) {
},
}
- client, cleanup := setup(t, "", "", requests)
- defer cleanup()
+ client := setup(t, "", "", requests)
_, err := client.Get(context.Background(), "/empty_basic_auth")
require.NoError(t, err)
@@ -110,8 +108,7 @@ func TestRequestWithUserAgent(t *testing.T) {
},
}
- client, cleanup := setup(t, "", "", requests)
- defer cleanup()
+ client := setup(t, "", "", requests)
_, err := client.Get(context.Background(), "/default_user_agent")
require.NoError(t, err)
@@ -122,13 +119,13 @@ func TestRequestWithUserAgent(t *testing.T) {
}
-func setup(t *testing.T, username, password string, requests []testserver.TestRequestHandler) (*GitlabNetClient, func()) {
- url, cleanup := testserver.StartHttpServer(t, requests)
+func setup(t *testing.T, username, password string, requests []testserver.TestRequestHandler) *GitlabNetClient {
+ url := testserver.StartHttpServer(t, requests)
httpClient := NewHTTPClient(url, "", "", "", false, 1)
client, err := NewGitlabNetClient(username, password, "", httpClient)
require.NoError(t, err)
- return client, cleanup
+ return client
}
diff --git a/client/httpsclient_test.go b/client/httpsclient_test.go
index dadd095..670f94a 100644
--- a/client/httpsclient_test.go
+++ b/client/httpsclient_test.go
@@ -51,8 +51,7 @@ func TestSuccessfulRequests(t *testing.T) {
for _, tc := range testCases {
t.Run(tc.desc, func(t *testing.T) {
- client, cleanup := setupWithRequests(t, tc.caFile, tc.caPath, tc.clientCAPath, tc.clientCertPath, tc.clientKeyPath, tc.selfSigned)
- defer cleanup()
+ client := setupWithRequests(t, tc.caFile, tc.caPath, tc.clientCAPath, tc.clientCertPath, tc.clientKeyPath, tc.selfSigned)
response, err := client.Get(context.Background(), "/hello")
require.NoError(t, err)
@@ -88,8 +87,7 @@ func TestFailedRequests(t *testing.T) {
for _, tc := range testCases {
t.Run(tc.desc, func(t *testing.T) {
- client, cleanup := setupWithRequests(t, tc.caFile, tc.caPath, "", "", "", false)
- defer cleanup()
+ client := setupWithRequests(t, tc.caFile, tc.caPath, "", "", "", false)
_, err := client.Get(context.Background(), "/hello")
require.Error(t, err)
@@ -99,7 +97,7 @@ func TestFailedRequests(t *testing.T) {
}
}
-func setupWithRequests(t *testing.T, caFile, caPath, clientCAPath, clientCertPath, clientKeyPath string, selfSigned bool) (*GitlabNetClient, func()) {
+func setupWithRequests(t *testing.T, caFile, caPath, clientCAPath, clientCertPath, clientKeyPath string, selfSigned bool) *GitlabNetClient {
testDirCleanup, err := testhelper.PrepareTestRootDir()
require.NoError(t, err)
defer testDirCleanup()
@@ -115,7 +113,7 @@ func setupWithRequests(t *testing.T, caFile, caPath, clientCAPath, clientCertPat
},
}
- url, cleanup := testserver.StartHttpsServer(t, requests, clientCAPath)
+ url := testserver.StartHttpsServer(t, requests, clientCAPath)
var opts []HTTPClientOpt
if clientCertPath != "" && clientKeyPath != "" {
@@ -128,5 +126,5 @@ func setupWithRequests(t *testing.T, caFile, caPath, clientCAPath, clientCertPat
client, err := NewGitlabNetClient("", "", "", httpClient)
require.NoError(t, err)
- return client, cleanup
+ return client
}
diff --git a/client/testserver/gitalyserver.go b/client/testserver/gitalyserver.go
index 4bf14f3..301a737 100644
--- a/client/testserver/gitalyserver.go
+++ b/client/testserver/gitalyserver.go
@@ -58,9 +58,12 @@ func (s *TestGitalyServer) SSHUploadArchive(stream pb.SSHService_SSHUploadArchiv
return nil
}
-func StartGitalyServer(t *testing.T) (string, *TestGitalyServer, func()) {
+func StartGitalyServer(t *testing.T) (string, *TestGitalyServer) {
+ t.Helper()
+
tempDir, _ := ioutil.TempDir("", "gitlab-shell-test-api")
gitalySocketPath := path.Join(tempDir, "gitaly.sock")
+ t.Cleanup(func() { os.RemoveAll(tempDir) })
err := os.MkdirAll(filepath.Dir(gitalySocketPath), 0700)
require.NoError(t, err)
@@ -74,12 +77,9 @@ func StartGitalyServer(t *testing.T) (string, *TestGitalyServer, func()) {
pb.RegisterSSHServiceServer(server, &testServer)
go server.Serve(listener)
+ t.Cleanup(func() { server.Stop() })
gitalySocketUrl := "unix:" + gitalySocketPath
- cleanup := func() {
- server.Stop()
- os.RemoveAll(tempDir)
- }
- return gitalySocketUrl, &testServer, cleanup
+ return gitalySocketUrl, &testServer
}
diff --git a/client/testserver/testserver.go b/client/testserver/testserver.go
index dee051b..0667cd4 100644
--- a/client/testserver/testserver.go
+++ b/client/testserver/testserver.go
@@ -27,9 +27,12 @@ type TestRequestHandler struct {
Handler func(w http.ResponseWriter, r *http.Request)
}
-func StartSocketHttpServer(t *testing.T, handlers []TestRequestHandler) (string, func()) {
+func StartSocketHttpServer(t *testing.T, handlers []TestRequestHandler) string {
+ t.Helper()
+
err := os.MkdirAll(filepath.Dir(testSocket), 0700)
require.NoError(t, err)
+ t.Cleanup(func() { os.RemoveAll(tempDir) })
socketListener, err := net.Listen("unix", testSocket)
require.NoError(t, err)
@@ -44,16 +47,21 @@ func StartSocketHttpServer(t *testing.T, handlers []TestRequestHandler) (string,
url := "http+unix://" + testSocket
- return url, cleanupSocket
+ return url
}
-func StartHttpServer(t *testing.T, handlers []TestRequestHandler) (string, func()) {
+func StartHttpServer(t *testing.T, handlers []TestRequestHandler) string {
+ t.Helper()
+
server := httptest.NewServer(buildHandler(handlers))
+ t.Cleanup(func() { server.Close() })
- return server.URL, server.Close
+ return server.URL
}
-func StartHttpsServer(t *testing.T, handlers []TestRequestHandler, clientCAPath string) (string, func()) {
+func StartHttpsServer(t *testing.T, handlers []TestRequestHandler, clientCAPath string) string {
+ t.Helper()
+
crt := path.Join(testhelper.TestRoot, "certs/valid/server.crt")
key := path.Join(testhelper.TestRoot, "certs/valid/server.key")
@@ -63,7 +71,7 @@ func StartHttpsServer(t *testing.T, handlers []TestRequestHandler, clientCAPath
server.TLS = &tls.Config{
Certificates: []tls.Certificate{cer},
- MinVersion: tls.VersionTLS12,
+ MinVersion: tls.VersionTLS12,
}
server.TLS.BuildNameToCertificate()
@@ -80,11 +88,9 @@ func StartHttpsServer(t *testing.T, handlers []TestRequestHandler, clientCAPath
server.StartTLS()
- return server.URL, server.Close
-}
+ t.Cleanup(func() { server.Close() })
-func cleanupSocket() {
- os.RemoveAll(tempDir)
+ return server.URL
}
func buildHandler(handlers []TestRequestHandler) http.Handler {