diff options
author | Nick Thomas <nick@gitlab.com> | 2021-07-14 14:55:06 +0000 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2021-07-14 14:55:06 +0000 |
commit | d3711d8d7e781dbff01d8ae5c7a1d5b800c5c8a2 (patch) | |
tree | cda5c6e501bfbc44814ef876be5b86ac75c11238 /internal | |
parent | b16c323cc832be3fa3b4bcedcc5a90bfcdc6841a (diff) | |
parent | e033223ef7ea1e5597fc7aea744b1aed4d667815 (diff) | |
download | gitlab-shell-d3711d8d7e781dbff01d8ae5c7a1d5b800c5c8a2.tar.gz |
Merge branch 'id-refactor-test-helper' into 'main'
Refactor testhelper.PrepareTestRootDir using t.Cleanup
See merge request gitlab-org/gitlab-shell!493
Diffstat (limited to 'internal')
-rw-r--r-- | internal/gitlabnet/accessverifier/client_test.go | 4 | ||||
-rw-r--r-- | internal/testhelper/testhelper.go | 39 |
2 files changed, 11 insertions, 32 deletions
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 { |