summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Drozdov <idrozdov@gitlab.com>2021-07-14 17:43:36 +0300
committerIgor Drozdov <idrozdov@gitlab.com>2021-07-14 17:43:36 +0300
commite033223ef7ea1e5597fc7aea744b1aed4d667815 (patch)
tree0dd9adedd7bcf2b7de3e2e26855f2191c4725680
parent1adc5f1be786535783b689e12301871343d086a1 (diff)
downloadgitlab-shell-e033223ef7ea1e5597fc7aea744b1aed4d667815.tar.gz
Refactor testhelper.PrepareTestRootDir using t.Cleanup
-rw-r--r--client/client_test.go4
-rw-r--r--client/httpsclient_test.go4
-rw-r--r--cmd/gitlab-sshd/acceptance_test.go4
-rw-r--r--internal/gitlabnet/accessverifier/client_test.go4
-rw-r--r--internal/testhelper/testhelper.go39
5 files changed, 14 insertions, 41 deletions
diff --git a/client/client_test.go b/client/client_test.go
index 90cd499..8c5599e 100644
--- a/client/client_test.go
+++ b/client/client_test.go
@@ -18,9 +18,7 @@ import (
)
func TestClients(t *testing.T) {
- testDirCleanup, err := testhelper.PrepareTestRootDir()
- require.NoError(t, err)
- defer testDirCleanup()
+ testhelper.PrepareTestRootDir(t)
testCases := []struct {
desc string
diff --git a/client/httpsclient_test.go b/client/httpsclient_test.go
index 670f94a..48efa91 100644
--- a/client/httpsclient_test.go
+++ b/client/httpsclient_test.go
@@ -98,9 +98,7 @@ func TestFailedRequests(t *testing.T) {
}
func setupWithRequests(t *testing.T, caFile, caPath, clientCAPath, clientCertPath, clientKeyPath string, selfSigned bool) *GitlabNetClient {
- testDirCleanup, err := testhelper.PrepareTestRootDir()
- require.NoError(t, err)
- defer testDirCleanup()
+ testhelper.PrepareTestRootDir(t)
requests := []testserver.TestRequestHandler{
{
diff --git a/cmd/gitlab-sshd/acceptance_test.go b/cmd/gitlab-sshd/acceptance_test.go
index 973e376..c92a8aa 100644
--- a/cmd/gitlab-sshd/acceptance_test.go
+++ b/cmd/gitlab-sshd/acceptance_test.go
@@ -95,9 +95,7 @@ func successAPI(t *testing.T) http.Handler {
t.Helper()
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
- testDirCleanup, err := testhelper.PrepareTestRootDir()
- require.NoError(t, err)
- defer testDirCleanup()
+ testhelper.PrepareTestRootDir(t)
t.Logf("gitlab-api-mock: received request: %s %s", r.Method, r.RequestURI)
w.Header().Set("Content-Type", "application/json")
diff --git a/internal/gitlabnet/accessverifier/client_test.go b/internal/gitlabnet/accessverifier/client_test.go
index fdf5705..d3f34f6 100644
--- a/internal/gitlabnet/accessverifier/client_test.go
+++ b/internal/gitlabnet/accessverifier/client_test.go
@@ -163,9 +163,7 @@ func TestErrorResponses(t *testing.T) {
}
func setup(t *testing.T, allowedPayload string) *Client {
- testDirCleanup, err := testhelper.PrepareTestRootDir()
- require.NoError(t, err)
- defer testDirCleanup()
+ testhelper.PrepareTestRootDir(t)
body, err := ioutil.ReadFile(path.Join(testhelper.TestRoot, "responses/allowed.json"))
require.NoError(t, err)
diff --git a/internal/testhelper/testhelper.go b/internal/testhelper/testhelper.go
index 7361cbb..c2c7826 100644
--- a/internal/testhelper/testhelper.go
+++ b/internal/testhelper/testhelper.go
@@ -7,10 +7,12 @@ import (
"path"
"runtime"
"time"
+ "testing"
"github.com/otiai10/copy"
"github.com/sirupsen/logrus"
"github.com/sirupsen/logrus/hooks/test"
+ "github.com/stretchr/testify/require"
)
var (
@@ -31,42 +33,21 @@ func TempEnv(env map[string]string) func() {
}
}
-func PrepareTestRootDir() (func(), error) {
- if err := os.MkdirAll(TestRoot, 0700); err != nil {
- return nil, err
- }
+func PrepareTestRootDir(t *testing.T) {
+ t.Helper()
- var oldWd string
- cleanup := func() {
- if oldWd != "" {
- err := os.Chdir(oldWd)
- if err != nil {
- panic(err)
- }
- }
+ require.NoError(t, os.MkdirAll(TestRoot, 0700))
- if err := os.RemoveAll(TestRoot); err != nil {
- panic(err)
- }
- }
+ t.Cleanup(func() { os.RemoveAll(TestRoot) })
- if err := copyTestData(); err != nil {
- cleanup()
- return nil, err
- }
+ require.NoError(t, copyTestData())
oldWd, err := os.Getwd()
- if err != nil {
- cleanup()
- return nil, err
- }
+ require.NoError(t, err)
- if err := os.Chdir(TestRoot); err != nil {
- cleanup()
- return nil, err
- }
+ t.Cleanup(func() { os.Chdir(oldWd) })
- return cleanup, nil
+ require.NoError(t, os.Chdir(TestRoot))
}
func copyTestData() error {