test: use T.TempDir to create temporary test directory (#15400)

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>
This commit is contained in:
Eng Zer Jun
2022-07-26 03:37:26 +08:00
committed by GitHub
parent f23f442d33
commit 0a3b1ad4eb
24 changed files with 137 additions and 412 deletions

View File

@@ -24,8 +24,6 @@ import (
"bytes"
"context"
"fmt"
"io/ioutil"
"os"
"testing"
)
@@ -42,16 +40,10 @@ func TestUNCPaths(t *testing.T) {
{string(bytes.Repeat([]byte("界"), 280)), false},
{`/p/q/r/s/t`, true},
}
dir, err := ioutil.TempDir("", "testdisk-")
if err != nil {
t.Fatal(err)
}
// Cleanup on exit of test
defer os.RemoveAll(dir)
dir := t.TempDir()
// Instantiate posix object to manage a disk
var fs StorageAPI
fs, err = newLocalXLStorage(dir)
fs, err := newLocalXLStorage(dir)
if err != nil {
t.Fatal(err)
}
@@ -81,15 +73,9 @@ func TestUNCPaths(t *testing.T) {
// Test to validate xlStorage behavior on windows when a non-final path component is a file.
func TestUNCPathENOTDIR(t *testing.T) {
// Instantiate posix object to manage a disk
dir, err := ioutil.TempDir("", "testdisk-")
if err != nil {
t.Fatal(err)
}
// Cleanup on exit of test
defer os.RemoveAll(dir)
dir := t.TempDir()
var fs StorageAPI
fs, err = newLocalXLStorage(dir)
fs, err := newLocalXLStorage(dir)
if err != nil {
t.Fatal(err)
}