summaryrefslogtreecommitdiff
path: root/pkg/hooks/read_test.go
diff options
context:
space:
mode:
authorEng Zer Jun <engzerjun@gmail.com>2022-05-05 21:09:41 +0800
committerEng Zer Jun <engzerjun@gmail.com>2022-05-05 21:09:41 +0800
commitcf35168f0a9cf457f0622cd89cff84bdbe610d58 (patch)
treedb3b776a982b2a6b615a2a7c9ee45ea6f89c9776 /pkg/hooks/read_test.go
parentb1e9ea38e5a680afb9294cb8a451311991d94765 (diff)
downloadpodman-cf35168f0a9cf457f0622cd89cff84bdbe610d58.tar.gz
podman-cf35168f0a9cf457f0622cd89cff84bdbe610d58.tar.bz2
podman-cf35168f0a9cf457f0622cd89cff84bdbe610d58.zip
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>
Diffstat (limited to 'pkg/hooks/read_test.go')
-rw-r--r--pkg/hooks/read_test.go40
1 files changed, 10 insertions, 30 deletions
diff --git a/pkg/hooks/read_test.go b/pkg/hooks/read_test.go
index 6e6c190bb..381d66bbe 100644
--- a/pkg/hooks/read_test.go
+++ b/pkg/hooks/read_test.go
@@ -29,14 +29,10 @@ func TestUnknownPath(t *testing.T) {
}
func TestGoodFile(t *testing.T) {
- dir, err := ioutil.TempDir("", "hooks-test-")
- if err != nil {
- t.Fatal(err)
- }
- defer os.RemoveAll(dir)
+ dir := t.TempDir()
jsonPath := filepath.Join(dir, "hook.json")
- err = ioutil.WriteFile(jsonPath, []byte(fmt.Sprintf("{\"version\": \"1.0.0\", \"hook\": {\"path\": \"%s\"}, \"when\": {\"always\": true}, \"stages\": [\"prestart\"]}", path)), 0644)
+ err := ioutil.WriteFile(jsonPath, []byte(fmt.Sprintf("{\"version\": \"1.0.0\", \"hook\": {\"path\": \"%s\"}, \"when\": {\"always\": true}, \"stages\": [\"prestart\"]}", path)), 0644)
if err != nil {
t.Fatal(err)
}
@@ -59,14 +55,10 @@ func TestGoodFile(t *testing.T) {
}
func TestBadFile(t *testing.T) {
- dir, err := ioutil.TempDir("", "hooks-test-")
- if err != nil {
- t.Fatal(err)
- }
- defer os.RemoveAll(dir)
+ dir := t.TempDir()
path := filepath.Join(dir, "hook.json")
- err = ioutil.WriteFile(path, []byte("{\"version\": \"1.0.0\", \"hook\": \"not-a-string\"}"), 0644)
+ err := ioutil.WriteFile(path, []byte("{\"version\": \"1.0.0\", \"hook\": \"not-a-string\"}"), 0644)
if err != nil {
t.Fatal(err)
}
@@ -121,13 +113,9 @@ func TestInvalidCurrentJSON(t *testing.T) {
}
func TestGoodDir(t *testing.T) {
- dir, err := ioutil.TempDir("", "hooks-test-")
- if err != nil {
- t.Fatal(err)
- }
- defer os.RemoveAll(dir)
+ dir := t.TempDir()
- err = ioutil.WriteFile(filepath.Join(dir, "README"), []byte("not a hook"), 0644)
+ err := ioutil.WriteFile(filepath.Join(dir, "README"), []byte("not a hook"), 0644)
if err != nil {
t.Fatal(err)
}
@@ -172,14 +160,10 @@ func TestUnknownDir(t *testing.T) {
}
func TestBadDir(t *testing.T) {
- dir, err := ioutil.TempDir("", "hooks-test-")
- if err != nil {
- t.Fatal(err)
- }
- defer os.RemoveAll(dir)
+ dir := t.TempDir()
jsonPath := filepath.Join(dir, "a.json")
- err = ioutil.WriteFile(jsonPath, []byte("{\"version\": \"-1\"}"), 0644)
+ err := ioutil.WriteFile(jsonPath, []byte("{\"version\": \"-1\"}"), 0644)
if err != nil {
t.Fatal(err)
}
@@ -193,14 +177,10 @@ func TestBadDir(t *testing.T) {
}
func TestHookExecutableDoesNotExit(t *testing.T) {
- dir, err := ioutil.TempDir("", "hooks-test-")
- if err != nil {
- t.Fatal(err)
- }
- defer os.RemoveAll(dir)
+ dir := t.TempDir()
jsonPath := filepath.Join(dir, "hook.json")
- err = ioutil.WriteFile(jsonPath, []byte("{\"version\": \"1.0.0\", \"hook\": {\"path\": \"/does/not/exist\"}, \"when\": {\"always\": true}, \"stages\": [\"prestart\"]}"), 0644)
+ err := ioutil.WriteFile(jsonPath, []byte("{\"version\": \"1.0.0\", \"hook\": {\"path\": \"/does/not/exist\"}, \"when\": {\"always\": true}, \"stages\": [\"prestart\"]}"), 0644)
if err != nil {
t.Fatal(err)
}