Use testing.TempDir() where possible

Refactor tests to use go built-in temporary directory utility for tests.

Also avoid binding to default port (which may be in use)
This commit is contained in:
Marco Primi
2022-12-08 11:16:45 -08:00
parent dcd7ffdc4b
commit f8a030bc4a
49 changed files with 599 additions and 2237 deletions

View File

@@ -25,8 +25,6 @@ import (
"testing"
)
var tempRoot = filepath.Join(os.TempDir(), "nats-server")
func TestStdLogger(t *testing.T) {
logger := NewStdLogger(false, false, false, false, false)
@@ -104,9 +102,7 @@ func TestStdLoggerTraceWithOutDebug(t *testing.T) {
}
func TestFileLogger(t *testing.T) {
tmpDir := createDir(t, "_nats-server")
defer removeDir(t, tmpDir)
tmpDir := t.TempDir()
file := createFileAtDir(t, tmpDir, "nats-server:log_")
file.Close()
@@ -176,8 +172,7 @@ func TestFileLoggerSizeLimit(t *testing.T) {
}
logger.Close()
tmpDir := createDir(t, "nats-server")
defer removeDir(t, tmpDir)
tmpDir := t.TempDir()
file := createFileAtDir(t, tmpDir, "log_")
file.Close()
@@ -210,10 +205,7 @@ func TestFileLoggerSizeLimit(t *testing.T) {
t.Fatalf("Should be statement about rotated log and backup name, got %s", content)
}
// Remove all files
removeDir(t, tmpDir)
tmpDir = createDir(t, "nats-server")
defer removeDir(t, tmpDir)
tmpDir = t.TempDir()
// Recreate logger and don't set a limit
file = createFileAtDir(t, tmpDir, "log_")
@@ -325,18 +317,6 @@ func expectOutput(t *testing.T, f func(), expected string) {
}
}
func createDir(t *testing.T, prefix string) string {
t.Helper()
if err := os.MkdirAll(tempRoot, 0700); err != nil {
t.Fatal(err)
}
dir, err := os.MkdirTemp(tempRoot, prefix)
if err != nil {
t.Fatal(err)
}
return dir
}
func createFileAtDir(t *testing.T, dir, prefix string) *os.File {
t.Helper()
f, err := os.CreateTemp(dir, prefix)
@@ -345,10 +325,3 @@ func createFileAtDir(t *testing.T, dir, prefix string) *os.File {
}
return f
}
func removeDir(t *testing.T, dir string) {
t.Helper()
if err := os.RemoveAll(dir); err != nil {
t.Fatal(err)
}
}