mirror of
https://github.com/kemko/nomad.git
synced 2026-01-04 17:35:43 +03:00
test: use T.TempDir to create temporary test directory (#12853)
* test: use `T.TempDir` to create temporary test directory
This commit replaces `ioutil.TempDir` with `t.TempDir` in tests. The
directory created by `t.TempDir` is automatically removed when the test
and all its subtests complete.
Prior to this commit, temporary directory created using `ioutil.TempDir`
needs to be removed manually by calling `os.RemoveAll`, which is omitted
in some tests. The error handling boilerplate e.g.
defer func() {
if err := os.RemoveAll(dir); err != nil {
t.Fatal(err)
}
}
is also tedious, but `t.TempDir` handles this for us nicely.
Reference: https://pkg.go.dev/testing#T.TempDir
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
* test: fix TestLogmon_Start_restart on Windows
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
* test: fix failing TestConsul_Integration
t.TempDir fails to perform the cleanup properly because the folder is
still in use
testing.go:967: TempDir RemoveAll cleanup: unlinkat /tmp/TestConsul_Integration2837567823/002/191a6f1a-5371-cf7c-da38-220fe85d10e5/web/secrets: device or resource busy
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
This commit is contained in:
@@ -3,7 +3,6 @@ package agent
|
||||
import (
|
||||
"io/ioutil"
|
||||
"math"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
"testing"
|
||||
@@ -24,11 +23,7 @@ func TestCommand_Implements(t *testing.T) {
|
||||
|
||||
func TestCommand_Args(t *testing.T) {
|
||||
ci.Parallel(t)
|
||||
tmpDir, err := ioutil.TempDir("", "nomad")
|
||||
if err != nil {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
defer os.RemoveAll(tmpDir)
|
||||
tmpDir := t.TempDir()
|
||||
|
||||
type tcase struct {
|
||||
args []string
|
||||
@@ -99,11 +94,7 @@ func TestCommand_Args(t *testing.T) {
|
||||
func TestCommand_MetaConfigValidation(t *testing.T) {
|
||||
ci.Parallel(t)
|
||||
|
||||
tmpDir, err := ioutil.TempDir("", "nomad")
|
||||
if err != nil {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
defer os.RemoveAll(tmpDir)
|
||||
tmpDir := t.TempDir()
|
||||
|
||||
tcases := []string{
|
||||
"foo..invalid",
|
||||
@@ -112,7 +103,7 @@ func TestCommand_MetaConfigValidation(t *testing.T) {
|
||||
}
|
||||
for _, tc := range tcases {
|
||||
configFile := filepath.Join(tmpDir, "conf1.hcl")
|
||||
err = ioutil.WriteFile(configFile, []byte(`client{
|
||||
err := ioutil.WriteFile(configFile, []byte(`client{
|
||||
enabled = true
|
||||
meta = {
|
||||
"valid" = "yes"
|
||||
@@ -154,11 +145,7 @@ func TestCommand_MetaConfigValidation(t *testing.T) {
|
||||
func TestCommand_NullCharInDatacenter(t *testing.T) {
|
||||
ci.Parallel(t)
|
||||
|
||||
tmpDir, err := ioutil.TempDir("", "nomad")
|
||||
if err != nil {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
defer os.RemoveAll(tmpDir)
|
||||
tmpDir := t.TempDir()
|
||||
|
||||
tcases := []string{
|
||||
"char-\\000-in-the-middle",
|
||||
@@ -167,7 +154,7 @@ func TestCommand_NullCharInDatacenter(t *testing.T) {
|
||||
}
|
||||
for _, tc := range tcases {
|
||||
configFile := filepath.Join(tmpDir, "conf1.hcl")
|
||||
err = ioutil.WriteFile(configFile, []byte(`
|
||||
err := ioutil.WriteFile(configFile, []byte(`
|
||||
datacenter = "`+tc+`"
|
||||
client{
|
||||
enabled = true
|
||||
@@ -205,11 +192,7 @@ func TestCommand_NullCharInDatacenter(t *testing.T) {
|
||||
func TestCommand_NullCharInRegion(t *testing.T) {
|
||||
ci.Parallel(t)
|
||||
|
||||
tmpDir, err := ioutil.TempDir("", "nomad")
|
||||
if err != nil {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
defer os.RemoveAll(tmpDir)
|
||||
tmpDir := t.TempDir()
|
||||
|
||||
tcases := []string{
|
||||
"char-\\000-in-the-middle",
|
||||
@@ -218,7 +201,7 @@ func TestCommand_NullCharInRegion(t *testing.T) {
|
||||
}
|
||||
for _, tc := range tcases {
|
||||
configFile := filepath.Join(tmpDir, "conf1.hcl")
|
||||
err = ioutil.WriteFile(configFile, []byte(`
|
||||
err := ioutil.WriteFile(configFile, []byte(`
|
||||
region = "`+tc+`"
|
||||
client{
|
||||
enabled = true
|
||||
|
||||
Reference in New Issue
Block a user