Skip to content

Commit

Permalink
test: use T.TempDir to create temporary test directory (#3725)
Browse files Browse the repository at this point in the history
Prior to this commit, temporary directories in tests were created using
`filepath.Join` and `os.MkdirAll`.

This commit replaces `os.MkdirAll` with `t.TempDir` in tests. The
directory created by `t.TempDir` is automatically removed when the test
and all its subtests complete.

Reference: https://pkg.go.dev/testing#T.TempDir
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>

Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
  • Loading branch information
Juneezee committed Nov 8, 2022
1 parent e1f881f commit 45ce6f6
Show file tree
Hide file tree
Showing 5 changed files with 8 additions and 43 deletions.
9 changes: 2 additions & 7 deletions config/config_source_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,15 @@ import (
"testing"
"time"

"github.com/google/uuid"
"github.com/stretchr/testify/assert"
)

func TestFileWatcherSource(t *testing.T) {
ctx := context.Background()

tmpdir := filepath.Join(os.TempDir(), uuid.New().String())
err := os.MkdirAll(tmpdir, 0o755)
if !assert.NoError(t, err) {
return
}
tmpdir := t.TempDir()

err = os.WriteFile(filepath.Join(tmpdir, "example.txt"), []byte{1, 2, 3, 4}, 0o600)
err := os.WriteFile(filepath.Join(tmpdir, "example.txt"), []byte{1, 2, 3, 4}, 0o600)
if !assert.NoError(t, err) {
return
}
Expand Down
10 changes: 1 addition & 9 deletions config/envoyconfig/filemgr/filemgr_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,11 @@ import (
"testing"

envoy_config_core_v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
"github.com/google/uuid"
"github.com/stretchr/testify/assert"
)

func Test(t *testing.T) {
dir := filepath.Join(os.TempDir(), uuid.New().String())
err := os.MkdirAll(dir, 0o755)
if !assert.NoError(t, err) {
return
}
defer func() {
_ = os.RemoveAll(dir)
}()
dir := t.TempDir()

t.Run("bytes", func(t *testing.T) {
mgr := NewManager(WithCacheDir(dir))
Expand Down
8 changes: 0 additions & 8 deletions databroker/cache_test.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
package databroker

import (
"log"
"os"
"testing"

"github.com/pomerium/pomerium/config"
Expand All @@ -11,12 +9,6 @@ import (
)

func TestNew(t *testing.T) {
dir, err := os.MkdirTemp("", "example")
if err != nil {
log.Fatal(err)
}
defer os.RemoveAll(dir)

tests := []struct {
name string
opts config.Options
Expand Down
6 changes: 1 addition & 5 deletions internal/autocert/manager_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ import (
"net/http"
"net/http/httptest"
"os"
"path/filepath"
"testing"
"time"

Expand All @@ -27,7 +26,6 @@ import (
"github.com/go-chi/chi/v5/middleware"
"github.com/google/go-cmp/cmp"
"github.com/google/go-cmp/cmp/cmpopts"
"github.com/google/uuid"
"github.com/mholt/acmez/acme"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
Expand Down Expand Up @@ -217,9 +215,7 @@ func TestConfig(t *testing.T) {

mockACME = newMockACME(ca, srv)

tmpdir := filepath.Join(os.TempDir(), uuid.New().String())
_ = os.MkdirAll(tmpdir, 0o755)
defer os.RemoveAll(tmpdir)
tmpdir := t.TempDir()

li, err := net.Listen("tcp", "127.0.0.1:0")
if !assert.NoError(t, err) {
Expand Down
18 changes: 4 additions & 14 deletions internal/fileutil/watcher_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,13 @@ import (
"testing"
"time"

"github.com/google/uuid"
"github.com/stretchr/testify/assert"
)

func TestWatcher(t *testing.T) {
tmpdir := filepath.Join(os.TempDir(), uuid.New().String())
err := os.MkdirAll(tmpdir, 0o755)
if !assert.NoError(t, err) {
return
}
tmpdir := t.TempDir()

err = os.WriteFile(filepath.Join(tmpdir, "test1.txt"), []byte{1, 2, 3, 4}, 0o666)
err := os.WriteFile(filepath.Join(tmpdir, "test1.txt"), []byte{1, 2, 3, 4}, 0o666)
if !assert.NoError(t, err) {
return
}
Expand All @@ -44,14 +39,9 @@ func TestWatcher(t *testing.T) {
func TestWatcherSymlink(t *testing.T) {
t.Parallel()

tmpdir := filepath.Join(os.TempDir(), uuid.New().String())
err := os.MkdirAll(tmpdir, 0o755)
if !assert.NoError(t, err) {
return
}
t.Cleanup(func() { os.RemoveAll(tmpdir) })
tmpdir := t.TempDir()

err = os.WriteFile(filepath.Join(tmpdir, "test1.txt"), []byte{1, 2, 3, 4}, 0o666)
err := os.WriteFile(filepath.Join(tmpdir, "test1.txt"), []byte{1, 2, 3, 4}, 0o666)
if !assert.NoError(t, err) {
return
}
Expand Down

0 comments on commit 45ce6f6

Please sign in to comment.