Skip to content

Commit 4d7d7a4

Browse files
perillotklauser
authored andcommitted
os: replace os.MkdirTemp with T.TempDir
Updates #45402 Change-Id: Ib8e62a13ddff884e4d34b3a0fdc9a10db2b68da6 Reviewed-on: https://go-review.googlesource.com/c/go/+/308109 Run-TryBot: Ian Lance Taylor <[email protected]> TryBot-Result: Go Bot <[email protected]> Reviewed-by: Ian Lance Taylor <[email protected]> Reviewed-by: Tobias Klauser <[email protected]>
1 parent 8518aac commit 4d7d7a4

8 files changed

+45
-175
lines changed

src/os/error_test.go

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,13 +54,7 @@ func testErrNotExist(name string) string {
5454
}
5555

5656
func TestErrIsNotExist(t *testing.T) {
57-
tmpDir, err := os.MkdirTemp("", "_Go_ErrIsNotExist")
58-
if err != nil {
59-
t.Fatalf("create ErrIsNotExist tempdir: %s", err)
60-
return
61-
}
62-
defer os.RemoveAll(tmpDir)
63-
57+
tmpDir := t.TempDir()
6458
name := filepath.Join(tmpDir, "NotExists")
6559
if s := testErrNotExist(name); s != "" {
6660
t.Fatal(s)

src/os/fifo_test.go

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,7 @@ func TestFifoEOF(t *testing.T) {
3131
t.Skip("skipping on OpenBSD; issue 25877")
3232
}
3333

34-
dir, err := os.MkdirTemp("", "TestFifoEOF")
35-
if err != nil {
36-
t.Fatal(err)
37-
}
38-
defer os.RemoveAll(dir)
39-
34+
dir := t.TempDir()
4035
fifoName := filepath.Join(dir, "fifo")
4136
if err := syscall.Mkfifo(fifoName, 0600); err != nil {
4237
t.Fatal(err)

src/os/os_test.go

Lines changed: 7 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -617,11 +617,7 @@ func TestReaddirNValues(t *testing.T) {
617617
if testing.Short() {
618618
t.Skip("test.short; skipping")
619619
}
620-
dir, err := os.MkdirTemp("", "")
621-
if err != nil {
622-
t.Fatalf("TempDir: %v", err)
623-
}
624-
defer RemoveAll(dir)
620+
dir := t.TempDir()
625621
for i := 1; i <= 105; i++ {
626622
f, err := Create(filepath.Join(dir, fmt.Sprintf("%d", i)))
627623
if err != nil {
@@ -716,11 +712,7 @@ func TestReaddirStatFailures(t *testing.T) {
716712
// testing it wouldn't work.
717713
t.Skipf("skipping test on %v", runtime.GOOS)
718714
}
719-
dir, err := os.MkdirTemp("", "")
720-
if err != nil {
721-
t.Fatalf("TempDir: %v", err)
722-
}
723-
defer RemoveAll(dir)
715+
dir := t.TempDir()
724716
touch(t, filepath.Join(dir, "good1"))
725717
touch(t, filepath.Join(dir, "x")) // will disappear or have an error
726718
touch(t, filepath.Join(dir, "good2"))
@@ -1949,22 +1941,16 @@ func TestAppend(t *testing.T) {
19491941

19501942
func TestStatDirWithTrailingSlash(t *testing.T) {
19511943
// Create new temporary directory and arrange to clean it up.
1952-
path, err := os.MkdirTemp("", "_TestStatDirWithSlash_")
1953-
if err != nil {
1954-
t.Fatalf("TempDir: %s", err)
1955-
}
1956-
defer RemoveAll(path)
1944+
path := t.TempDir()
19571945

19581946
// Stat of path should succeed.
1959-
_, err = Stat(path)
1960-
if err != nil {
1947+
if _, err := Stat(path); err != nil {
19611948
t.Fatalf("stat %s failed: %s", path, err)
19621949
}
19631950

19641951
// Stat of path+"/" should succeed too.
19651952
path += "/"
1966-
_, err = Stat(path)
1967-
if err != nil {
1953+
if _, err := Stat(path); err != nil {
19681954
t.Fatalf("stat %s failed: %s", path, err)
19691955
}
19701956
}
@@ -2091,12 +2077,7 @@ func TestLargeWriteToConsole(t *testing.T) {
20912077
func TestStatDirModeExec(t *testing.T) {
20922078
const mode = 0111
20932079

2094-
path, err := os.MkdirTemp("", "go-build")
2095-
if err != nil {
2096-
t.Fatalf("Failed to create temp directory: %v", err)
2097-
}
2098-
defer RemoveAll(path)
2099-
2080+
path := t.TempDir()
21002081
if err := Chmod(path, 0777); err != nil {
21012082
t.Fatalf("Chmod %q 0777: %v", path, err)
21022083
}
@@ -2160,12 +2141,7 @@ func TestStatStdin(t *testing.T) {
21602141
func TestStatRelativeSymlink(t *testing.T) {
21612142
testenv.MustHaveSymlink(t)
21622143

2163-
tmpdir, err := os.MkdirTemp("", "TestStatRelativeSymlink")
2164-
if err != nil {
2165-
t.Fatal(err)
2166-
}
2167-
defer RemoveAll(tmpdir)
2168-
2144+
tmpdir := t.TempDir()
21692145
target := filepath.Join(tmpdir, "target")
21702146
f, err := Create(target)
21712147
if err != nil {

src/os/os_windows_test.go

Lines changed: 6 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -626,11 +626,7 @@ func TestOpenVolumeName(t *testing.T) {
626626
}
627627

628628
func TestDeleteReadOnly(t *testing.T) {
629-
tmpdir, err := os.MkdirTemp("", "TestDeleteReadOnly")
630-
if err != nil {
631-
t.Fatal(err)
632-
}
633-
defer os.RemoveAll(tmpdir)
629+
tmpdir := t.TempDir()
634630
p := filepath.Join(tmpdir, "a")
635631
// This sets FILE_ATTRIBUTE_READONLY.
636632
f, err := os.OpenFile(p, os.O_CREATE, 0400)
@@ -796,11 +792,7 @@ func compareCommandLineToArgvWithSyscall(t *testing.T, cmd string) {
796792
}
797793

798794
func TestCmdArgs(t *testing.T) {
799-
tmpdir, err := os.MkdirTemp("", "TestCmdArgs")
800-
if err != nil {
801-
t.Fatal(err)
802-
}
803-
defer os.RemoveAll(tmpdir)
795+
tmpdir := t.TempDir()
804796

805797
const prog = `
806798
package main
@@ -815,8 +807,7 @@ func main() {
815807
}
816808
`
817809
src := filepath.Join(tmpdir, "main.go")
818-
err = os.WriteFile(src, []byte(prog), 0666)
819-
if err != nil {
810+
if err := os.WriteFile(src, []byte(prog), 0666); err != nil {
820811
t.Fatal(err)
821812
}
822813

@@ -963,21 +954,14 @@ func TestSymlinkCreation(t *testing.T) {
963954
}
964955
t.Parallel()
965956

966-
temp, err := os.MkdirTemp("", "TestSymlinkCreation")
967-
if err != nil {
968-
t.Fatal(err)
969-
}
970-
defer os.RemoveAll(temp)
971-
957+
temp := t.TempDir()
972958
dummyFile := filepath.Join(temp, "file")
973-
err = os.WriteFile(dummyFile, []byte(""), 0644)
974-
if err != nil {
959+
if err := os.WriteFile(dummyFile, []byte(""), 0644); err != nil {
975960
t.Fatal(err)
976961
}
977962

978963
linkFile := filepath.Join(temp, "link")
979-
err = os.Symlink(dummyFile, linkFile)
980-
if err != nil {
964+
if err := os.Symlink(dummyFile, linkFile); err != nil {
981965
t.Fatal(err)
982966
}
983967
}

src/os/path_test.go

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ package os_test
66

77
import (
88
"internal/testenv"
9-
"os"
109
. "os"
1110
"path/filepath"
1211
"runtime"
@@ -78,27 +77,19 @@ func TestMkdirAll(t *testing.T) {
7877
func TestMkdirAllWithSymlink(t *testing.T) {
7978
testenv.MustHaveSymlink(t)
8079

81-
tmpDir, err := os.MkdirTemp("", "TestMkdirAllWithSymlink-")
82-
if err != nil {
83-
t.Fatal(err)
84-
}
85-
defer RemoveAll(tmpDir)
86-
80+
tmpDir := t.TempDir()
8781
dir := tmpDir + "/dir"
88-
err = Mkdir(dir, 0755)
89-
if err != nil {
82+
if err := Mkdir(dir, 0755); err != nil {
9083
t.Fatalf("Mkdir %s: %s", dir, err)
9184
}
9285

9386
link := tmpDir + "/link"
94-
err = Symlink("dir", link)
95-
if err != nil {
87+
if err := Symlink("dir", link); err != nil {
9688
t.Fatalf("Symlink %s: %s", link, err)
9789
}
9890

9991
path := link + "/foo"
100-
err = MkdirAll(path, 0755)
101-
if err != nil {
92+
if err := MkdirAll(path, 0755); err != nil {
10293
t.Errorf("MkdirAll %q: %s", path, err)
10394
}
10495
}

src/os/path_windows_test.go

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -50,31 +50,21 @@ func TestFixLongPath(t *testing.T) {
5050
}
5151

5252
func TestMkdirAllLongPath(t *testing.T) {
53-
tmpDir, err := os.MkdirTemp("", "TestMkdirAllLongPath")
54-
if err != nil {
55-
t.Fatal(err)
56-
}
57-
defer os.RemoveAll(tmpDir)
53+
tmpDir := t.TempDir()
5854
path := tmpDir
5955
for i := 0; i < 100; i++ {
6056
path += `\another-path-component`
6157
}
62-
err = os.MkdirAll(path, 0777)
63-
if err != nil {
58+
if err := os.MkdirAll(path, 0777); err != nil {
6459
t.Fatalf("MkdirAll(%q) failed; %v", path, err)
6560
}
66-
err = os.RemoveAll(tmpDir)
67-
if err != nil {
61+
if err := os.RemoveAll(tmpDir); err != nil {
6862
t.Fatalf("RemoveAll(%q) failed; %v", tmpDir, err)
6963
}
7064
}
7165

7266
func TestMkdirAllExtendedLength(t *testing.T) {
73-
tmpDir, err := os.MkdirTemp("", "TestMkdirAllExtendedLength")
74-
if err != nil {
75-
t.Fatal(err)
76-
}
77-
defer os.RemoveAll(tmpDir)
67+
tmpDir := t.TempDir()
7868

7969
const prefix = `\\?\`
8070
if len(tmpDir) < 4 || tmpDir[:4] != prefix {
@@ -85,14 +75,12 @@ func TestMkdirAllExtendedLength(t *testing.T) {
8575
tmpDir = prefix + fullPath
8676
}
8777
path := tmpDir + `\dir\`
88-
err = os.MkdirAll(path, 0777)
89-
if err != nil {
78+
if err := os.MkdirAll(path, 0777); err != nil {
9079
t.Fatalf("MkdirAll(%q) failed: %v", path, err)
9180
}
9281

9382
path = path + `.\dir2`
94-
err = os.MkdirAll(path, 0777)
95-
if err == nil {
83+
if err := os.MkdirAll(path, 0777); err == nil {
9684
t.Fatalf("MkdirAll(%q) should have failed, but did not", path)
9785
}
9886
}

src/os/removeall_test.go

Lines changed: 9 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,7 @@ import (
1515
)
1616

1717
func TestRemoveAll(t *testing.T) {
18-
tmpDir, err := os.MkdirTemp("", "TestRemoveAll-")
19-
if err != nil {
20-
t.Fatal(err)
21-
}
22-
defer RemoveAll(tmpDir)
23-
18+
tmpDir := t.TempDir()
2419
if err := RemoveAll(""); err != nil {
2520
t.Errorf("RemoveAll(\"\"): %v; want nil", err)
2621
}
@@ -128,12 +123,7 @@ func TestRemoveAllLarge(t *testing.T) {
128123
t.Skip("skipping in short mode")
129124
}
130125

131-
tmpDir, err := os.MkdirTemp("", "TestRemoveAll-")
132-
if err != nil {
133-
t.Fatal(err)
134-
}
135-
defer RemoveAll(tmpDir)
136-
126+
tmpDir := t.TempDir()
137127
path := filepath.Join(tmpDir, "_TestRemoveAllLarge_")
138128

139129
// Make directory with 1000 files and remove.
@@ -236,12 +226,7 @@ func TestRemoveAllDot(t *testing.T) {
236226
func TestRemoveAllDotDot(t *testing.T) {
237227
t.Parallel()
238228

239-
tempDir, err := os.MkdirTemp("", "TestRemoveAllDotDot-")
240-
if err != nil {
241-
t.Fatal(err)
242-
}
243-
defer RemoveAll(tempDir)
244-
229+
tempDir := t.TempDir()
245230
subdir := filepath.Join(tempDir, "x")
246231
subsubdir := filepath.Join(subdir, "y")
247232
if err := MkdirAll(subsubdir, 0777); err != nil {
@@ -261,12 +246,7 @@ func TestRemoveAllDotDot(t *testing.T) {
261246
func TestRemoveReadOnlyDir(t *testing.T) {
262247
t.Parallel()
263248

264-
tempDir, err := os.MkdirTemp("", "TestRemoveReadOnlyDir-")
265-
if err != nil {
266-
t.Fatal(err)
267-
}
268-
defer RemoveAll(tempDir)
269-
249+
tempDir := t.TempDir()
270250
subdir := filepath.Join(tempDir, "x")
271251
if err := Mkdir(subdir, 0); err != nil {
272252
t.Fatal(err)
@@ -298,12 +278,7 @@ func TestRemoveAllButReadOnlyAndPathError(t *testing.T) {
298278

299279
t.Parallel()
300280

301-
tempDir, err := os.MkdirTemp("", "TestRemoveAllButReadOnly-")
302-
if err != nil {
303-
t.Fatal(err)
304-
}
305-
defer RemoveAll(tempDir)
306-
281+
tempDir := t.TempDir()
307282
dirs := []string{
308283
"a",
309284
"a/x",
@@ -347,7 +322,7 @@ func TestRemoveAllButReadOnlyAndPathError(t *testing.T) {
347322
defer Chmod(d, 0777)
348323
}
349324

350-
err = RemoveAll(tempDir)
325+
err := RemoveAll(tempDir)
351326
if err == nil {
352327
t.Fatal("RemoveAll succeeded unexpectedly")
353328
}
@@ -389,12 +364,7 @@ func TestRemoveUnreadableDir(t *testing.T) {
389364

390365
t.Parallel()
391366

392-
tempDir, err := os.MkdirTemp("", "TestRemoveAllButReadOnly-")
393-
if err != nil {
394-
t.Fatal(err)
395-
}
396-
defer RemoveAll(tempDir)
397-
367+
tempDir := t.TempDir()
398368
target := filepath.Join(tempDir, "d0", "d1", "d2")
399369
if err := MkdirAll(target, 0755); err != nil {
400370
t.Fatal(err)
@@ -413,12 +383,7 @@ func TestRemoveAllWithMoreErrorThanReqSize(t *testing.T) {
413383
t.Skip("skipping in short mode")
414384
}
415385

416-
tmpDir, err := os.MkdirTemp("", "TestRemoveAll-")
417-
if err != nil {
418-
t.Fatal(err)
419-
}
420-
defer RemoveAll(tmpDir)
421-
386+
tmpDir := t.TempDir()
422387
path := filepath.Join(tmpDir, "_TestRemoveAllWithMoreErrorThanReqSize_")
423388

424389
// Make directory with 1025 read-only files.
@@ -443,7 +408,7 @@ func TestRemoveAllWithMoreErrorThanReqSize(t *testing.T) {
443408

444409
// This call should not hang, even on a platform that disallows file deletion
445410
// from read-only directories.
446-
err = RemoveAll(path)
411+
err := RemoveAll(path)
447412

448413
if Getuid() == 0 {
449414
// On many platforms, root can remove files from read-only directories.

0 commit comments

Comments
 (0)