Skip to content

Commit a7e16ab

Browse files
ianwoolfodeke-em
authored andcommitted
runtime: replace os.MkdirTemp with T.TempDir
Updates #45402 Change-Id: I3aa82fc2486b4de49b45388bbab24f5ffe558f91 Reviewed-on: https://go-review.googlesource.com/c/go/+/307989 Run-TryBot: Ian Lance Taylor <[email protected]> TryBot-Result: Go Bot <[email protected]> Reviewed-by: Ian Lance Taylor <[email protected]> Trust: Tobias Klauser <[email protected]>
1 parent 2123dfb commit a7e16ab

7 files changed

+31
-113
lines changed

src/runtime/crash_unix_test.go

+1-5
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,7 @@ func TestCrashDumpsAllThreads(t *testing.T) {
8585

8686
t.Parallel()
8787

88-
dir, err := os.MkdirTemp("", "go-build")
89-
if err != nil {
90-
t.Fatalf("failed to create temp directory: %v", err)
91-
}
92-
defer os.RemoveAll(dir)
88+
dir := t.TempDir()
9389

9490
if err := os.WriteFile(filepath.Join(dir, "main.go"), []byte(crashDumpsAllThreadsSource), 0666); err != nil {
9591
t.Fatalf("failed to create Go file: %v", err)

src/runtime/race/output_test.go

+2-10
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,7 @@ import (
2020
)
2121

2222
func TestOutput(t *testing.T) {
23-
pkgdir, err := os.MkdirTemp("", "go-build-race-output")
24-
if err != nil {
25-
t.Fatal(err)
26-
}
27-
defer os.RemoveAll(pkgdir)
23+
pkgdir := t.TempDir()
2824
out, err := exec.Command(testenv.GoToolPath(t), "install", "-race", "-pkgdir="+pkgdir, "testing").CombinedOutput()
2925
if err != nil {
3026
t.Fatalf("go install -race: %v\n%s", err, out)
@@ -35,11 +31,7 @@ func TestOutput(t *testing.T) {
3531
t.Logf("test %v runs only on %v, skipping: ", test.name, test.goos)
3632
continue
3733
}
38-
dir, err := os.MkdirTemp("", "go-build")
39-
if err != nil {
40-
t.Fatalf("failed to create temp directory: %v", err)
41-
}
42-
defer os.RemoveAll(dir)
34+
dir := t.TempDir()
4335
source := "main.go"
4436
if test.run == "test" {
4537
source = "main_test.go"

src/runtime/race/testdata/io_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import (
1717

1818
func TestNoRaceIOFile(t *testing.T) {
1919
x := 0
20-
path, _ := os.MkdirTemp("", "race_test")
20+
path := t.TempDir()
2121
fname := filepath.Join(path, "data")
2222
go func() {
2323
x = 42

src/runtime/runtime-gdb_test.go

+12-36
Original file line numberDiff line numberDiff line change
@@ -169,11 +169,7 @@ func testGdbPython(t *testing.T, cgo bool) {
169169
checkGdbVersion(t)
170170
checkGdbPython(t)
171171

172-
dir, err := os.MkdirTemp("", "go-build")
173-
if err != nil {
174-
t.Fatalf("failed to create temp directory: %v", err)
175-
}
176-
defer os.RemoveAll(dir)
172+
dir := t.TempDir()
177173

178174
var buf bytes.Buffer
179175
buf.WriteString("package main\n")
@@ -194,7 +190,7 @@ func testGdbPython(t *testing.T, cgo bool) {
194190
}
195191
}
196192

197-
err = os.WriteFile(filepath.Join(dir, "main.go"), src, 0644)
193+
err := os.WriteFile(filepath.Join(dir, "main.go"), src, 0644)
198194
if err != nil {
199195
t.Fatalf("failed to create file: %v", err)
200196
}
@@ -403,15 +399,11 @@ func TestGdbBacktrace(t *testing.T) {
403399
t.Parallel()
404400
checkGdbVersion(t)
405401

406-
dir, err := os.MkdirTemp("", "go-build")
407-
if err != nil {
408-
t.Fatalf("failed to create temp directory: %v", err)
409-
}
410-
defer os.RemoveAll(dir)
402+
dir := t.TempDir()
411403

412404
// Build the source code.
413405
src := filepath.Join(dir, "main.go")
414-
err = os.WriteFile(src, []byte(backtraceSource), 0644)
406+
err := os.WriteFile(src, []byte(backtraceSource), 0644)
415407
if err != nil {
416408
t.Fatalf("failed to create file: %v", err)
417409
}
@@ -481,15 +473,11 @@ func TestGdbAutotmpTypes(t *testing.T) {
481473
t.Skip("TestGdbAutotmpTypes is too slow on aix/ppc64")
482474
}
483475

484-
dir, err := os.MkdirTemp("", "go-build")
485-
if err != nil {
486-
t.Fatalf("failed to create temp directory: %v", err)
487-
}
488-
defer os.RemoveAll(dir)
476+
dir := t.TempDir()
489477

490478
// Build the source code.
491479
src := filepath.Join(dir, "main.go")
492-
err = os.WriteFile(src, []byte(autotmpTypeSource), 0644)
480+
err := os.WriteFile(src, []byte(autotmpTypeSource), 0644)
493481
if err != nil {
494482
t.Fatalf("failed to create file: %v", err)
495483
}
@@ -550,15 +538,11 @@ func TestGdbConst(t *testing.T) {
550538
t.Parallel()
551539
checkGdbVersion(t)
552540

553-
dir, err := os.MkdirTemp("", "go-build")
554-
if err != nil {
555-
t.Fatalf("failed to create temp directory: %v", err)
556-
}
557-
defer os.RemoveAll(dir)
541+
dir := t.TempDir()
558542

559543
// Build the source code.
560544
src := filepath.Join(dir, "main.go")
561-
err = os.WriteFile(src, []byte(constsSource), 0644)
545+
err := os.WriteFile(src, []byte(constsSource), 0644)
562546
if err != nil {
563547
t.Fatalf("failed to create file: %v", err)
564548
}
@@ -617,15 +601,11 @@ func TestGdbPanic(t *testing.T) {
617601
t.Parallel()
618602
checkGdbVersion(t)
619603

620-
dir, err := os.MkdirTemp("", "go-build")
621-
if err != nil {
622-
t.Fatalf("failed to create temp directory: %v", err)
623-
}
624-
defer os.RemoveAll(dir)
604+
dir := t.TempDir()
625605

626606
// Build the source code.
627607
src := filepath.Join(dir, "main.go")
628-
err = os.WriteFile(src, []byte(panicSource), 0644)
608+
err := os.WriteFile(src, []byte(panicSource), 0644)
629609
if err != nil {
630610
t.Fatalf("failed to create file: %v", err)
631611
}
@@ -695,15 +675,11 @@ func TestGdbInfCallstack(t *testing.T) {
695675
t.Parallel()
696676
checkGdbVersion(t)
697677

698-
dir, err := os.MkdirTemp("", "go-build")
699-
if err != nil {
700-
t.Fatalf("failed to create temp directory: %v", err)
701-
}
702-
defer os.RemoveAll(dir)
678+
dir := t.TempDir()
703679

704680
// Build the source code.
705681
src := filepath.Join(dir, "main.go")
706-
err = os.WriteFile(src, []byte(InfCallstackSource), 0644)
682+
err := os.WriteFile(src, []byte(InfCallstackSource), 0644)
707683
if err != nil {
708684
t.Fatalf("failed to create file: %v", err)
709685
}

src/runtime/runtime-lldb_test.go

+2-6
Original file line numberDiff line numberDiff line change
@@ -142,14 +142,10 @@ func TestLldbPython(t *testing.T) {
142142

143143
checkLldbPython(t)
144144

145-
dir, err := os.MkdirTemp("", "go-build")
146-
if err != nil {
147-
t.Fatalf("failed to create temp directory: %v", err)
148-
}
149-
defer os.RemoveAll(dir)
145+
dir := t.TempDir()
150146

151147
src := filepath.Join(dir, "main.go")
152-
err = os.WriteFile(src, []byte(lldbHelloSource), 0644)
148+
err := os.WriteFile(src, []byte(lldbHelloSource), 0644)
153149
if err != nil {
154150
t.Fatalf("failed to create src file: %v", err)
155151
}

src/runtime/signal_windows_test.go

+2-11
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import (
88
"bytes"
99
"fmt"
1010
"internal/testenv"
11-
"os"
1211
"os/exec"
1312
"path/filepath"
1413
"runtime"
@@ -29,11 +28,7 @@ func TestVectoredHandlerDontCrashOnLibrary(t *testing.T) {
2928
testenv.MustHaveExecPath(t, "gcc")
3029
testprog.Lock()
3130
defer testprog.Unlock()
32-
dir, err := os.MkdirTemp("", "go-build")
33-
if err != nil {
34-
t.Fatalf("failed to create temp directory: %v", err)
35-
}
36-
defer os.RemoveAll(dir)
31+
dir := t.TempDir()
3732

3833
// build go dll
3934
dll := filepath.Join(dir, "testwinlib.dll")
@@ -157,11 +152,7 @@ func TestLibraryCtrlHandler(t *testing.T) {
157152
testenv.MustHaveExecPath(t, "gcc")
158153
testprog.Lock()
159154
defer testprog.Unlock()
160-
dir, err := os.MkdirTemp("", "go-build")
161-
if err != nil {
162-
t.Fatalf("failed to create temp directory: %v", err)
163-
}
164-
defer os.RemoveAll(dir)
155+
dir := t.TempDir()
165156

166157
// build go dll
167158
dll := filepath.Join(dir, "dummy.dll")

src/runtime/syscall_windows_test.go

+11-44
Original file line numberDiff line numberDiff line change
@@ -543,11 +543,7 @@ func TestStdcallAndCDeclCallbacks(t *testing.T) {
543543
if _, err := exec.LookPath("gcc"); err != nil {
544544
t.Skip("skipping test: gcc is missing")
545545
}
546-
tmp, err := os.MkdirTemp("", "TestCDeclCallback")
547-
if err != nil {
548-
t.Fatal("TempDir failed: ", err)
549-
}
550-
defer os.RemoveAll(tmp)
546+
tmp := t.TempDir()
551547

552548
oldRegs := runtime.SetIntArgRegs(abi.IntArgRegs)
553549
defer runtime.SetIntArgRegs(oldRegs)
@@ -702,14 +698,10 @@ uintptr_t cfunc(callback f, uintptr_t n) {
702698
return r;
703699
}
704700
`
705-
tmpdir, err := os.MkdirTemp("", "TestReturnAfterStackGrowInCallback")
706-
if err != nil {
707-
t.Fatal("TempDir failed: ", err)
708-
}
709-
defer os.RemoveAll(tmpdir)
701+
tmpdir := t.TempDir()
710702

711703
srcname := "mydll.c"
712-
err = os.WriteFile(filepath.Join(tmpdir, srcname), []byte(src), 0)
704+
err := os.WriteFile(filepath.Join(tmpdir, srcname), []byte(src), 0)
713705
if err != nil {
714706
t.Fatal(err)
715707
}
@@ -771,14 +763,10 @@ uintptr_t cfunc(uintptr_t a, double b, float c, double d) {
771763
return 0;
772764
}
773765
`
774-
tmpdir, err := os.MkdirTemp("", "TestFloatArgs")
775-
if err != nil {
776-
t.Fatal("TempDir failed: ", err)
777-
}
778-
defer os.RemoveAll(tmpdir)
766+
tmpdir := t.TempDir()
779767

780768
srcname := "mydll.c"
781-
err = os.WriteFile(filepath.Join(tmpdir, srcname), []byte(src), 0)
769+
err := os.WriteFile(filepath.Join(tmpdir, srcname), []byte(src), 0)
782770
if err != nil {
783771
t.Fatal(err)
784772
}
@@ -833,14 +821,10 @@ double cfuncDouble(uintptr_t a, double b, float c, double d) {
833821
return 0;
834822
}
835823
`
836-
tmpdir, err := os.MkdirTemp("", "TestFloatReturn")
837-
if err != nil {
838-
t.Fatal("TempDir failed: ", err)
839-
}
840-
defer os.RemoveAll(tmpdir)
824+
tmpdir := t.TempDir()
841825

842826
srcname := "mydll.c"
843-
err = os.WriteFile(filepath.Join(tmpdir, srcname), []byte(src), 0)
827+
err := os.WriteFile(filepath.Join(tmpdir, srcname), []byte(src), 0)
844828
if err != nil {
845829
t.Fatal(err)
846830
}
@@ -1048,16 +1032,7 @@ func TestDLLPreloadMitigation(t *testing.T) {
10481032
t.Skip("skipping test: gcc is missing")
10491033
}
10501034

1051-
tmpdir, err := os.MkdirTemp("", "TestDLLPreloadMitigation")
1052-
if err != nil {
1053-
t.Fatal("TempDir failed: ", err)
1054-
}
1055-
defer func() {
1056-
err := os.RemoveAll(tmpdir)
1057-
if err != nil {
1058-
t.Error(err)
1059-
}
1060-
}()
1035+
tmpdir := t.TempDir()
10611036

10621037
dir0, err := os.Getwd()
10631038
if err != nil {
@@ -1135,11 +1110,7 @@ func TestBigStackCallbackSyscall(t *testing.T) {
11351110
t.Fatal("Abs failed: ", err)
11361111
}
11371112

1138-
tmpdir, err := os.MkdirTemp("", "TestBigStackCallback")
1139-
if err != nil {
1140-
t.Fatal("TempDir failed: ", err)
1141-
}
1142-
defer os.RemoveAll(tmpdir)
1113+
tmpdir := t.TempDir()
11431114

11441115
outname := "mydll.dll"
11451116
cmd := exec.Command("gcc", "-shared", "-s", "-Werror", "-o", outname, srcname)
@@ -1284,14 +1255,10 @@ func BenchmarkOsYield(b *testing.B) {
12841255
}
12851256

12861257
func BenchmarkRunningGoProgram(b *testing.B) {
1287-
tmpdir, err := os.MkdirTemp("", "BenchmarkRunningGoProgram")
1288-
if err != nil {
1289-
b.Fatal(err)
1290-
}
1291-
defer os.RemoveAll(tmpdir)
1258+
tmpdir := b.TempDir()
12921259

12931260
src := filepath.Join(tmpdir, "main.go")
1294-
err = os.WriteFile(src, []byte(benchmarkRunningGoProgram), 0666)
1261+
err := os.WriteFile(src, []byte(benchmarkRunningGoProgram), 0666)
12951262
if err != nil {
12961263
b.Fatal(err)
12971264
}

0 commit comments

Comments
 (0)