Skip to content

Commit dfe7244

Browse files
authored
refactor: simplify package setup in tests (#13)
This PR simplifies package setup in tests by removing temporary directory management and using [`T.TempDir`](https://pkg.go.dev/testing#T.TempDir).
1 parent 32ba7d4 commit dfe7244

File tree

2 files changed

+12
-31
lines changed

2 files changed

+12
-31
lines changed

check_test.go

Lines changed: 8 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,7 @@ func main() {
2626
}
2727
}
2828
`
29-
tmpdir, pkgs := setupPackages(t, code)
30-
defer teardownPackage(t, tmpdir)
29+
pkgs := setupPackages(t, code)
3130

3231
errs := Run(pkgs, Config{DefaultSignifiesExhaustive: true})
3332
assert.Equal(t, 1, len(errs))
@@ -57,8 +56,7 @@ func main() {
5756
}
5857
}
5958
`
60-
tmpdir, pkgs := setupPackages(t, code)
61-
defer teardownPackage(t, tmpdir)
59+
pkgs := setupPackages(t, code)
6260

6361
errs := Run(pkgs, Config{DefaultSignifiesExhaustive: true})
6462
assert.Equal(t, 1, len(errs))
@@ -88,8 +86,7 @@ func main() {
8886
}
8987
}
9088
`
91-
tmpdir, pkgs := setupPackages(t, code)
92-
defer teardownPackage(t, tmpdir)
89+
pkgs := setupPackages(t, code)
9390

9491
errs := Run(pkgs, Config{DefaultSignifiesExhaustive: true})
9592
assert.Equal(t, 1, len(errs))
@@ -119,8 +116,7 @@ func main() {
119116
}
120117
}
121118
`
122-
tmpdir, pkgs := setupPackages(t, code)
123-
defer teardownPackage(t, tmpdir)
119+
pkgs := setupPackages(t, code)
124120

125121
errs := Run(pkgs, Config{DefaultSignifiesExhaustive: true})
126122
assert.Equal(t, 0, len(errs))
@@ -149,8 +145,7 @@ func main() {
149145
}
150146
}
151147
`
152-
tmpdir, pkgs := setupPackages(t, code)
153-
defer teardownPackage(t, tmpdir)
148+
pkgs := setupPackages(t, code)
154149

155150
errs := Run(pkgs, Config{DefaultSignifiesExhaustive: true})
156151
assert.Equal(t, 0, len(errs))
@@ -179,8 +174,7 @@ func main() {
179174
}
180175
}
181176
`
182-
tmpdir, pkgs := setupPackages(t, code)
183-
defer teardownPackage(t, tmpdir)
177+
pkgs := setupPackages(t, code)
184178

185179
errs := Run(pkgs, Config{DefaultSignifiesExhaustive: false})
186180
assert.Equal(t, 1, len(errs))
@@ -198,8 +192,7 @@ type T interface {}
198192
199193
func main() {}
200194
`
201-
tmpdir, pkgs := setupPackages(t, code)
202-
defer teardownPackage(t, tmpdir)
195+
pkgs := setupPackages(t, code)
203196

204197
errs := Run(pkgs, Config{DefaultSignifiesExhaustive: true})
205198
assert.Equal(t, 1, len(errs))
@@ -217,8 +210,7 @@ type T struct {}
217210
218211
func main() {}
219212
`
220-
tmpdir, pkgs := setupPackages(t, code)
221-
defer teardownPackage(t, tmpdir)
213+
pkgs := setupPackages(t, code)
222214

223215
errs := Run(pkgs, Config{DefaultSignifiesExhaustive: true})
224216
assert.Equal(t, 1, len(errs))

help_test.go

Lines changed: 4 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,23 @@
11
package gochecksumtype
22

33
import (
4-
"io/ioutil"
54
"os"
65
"path/filepath"
76
"testing"
87

98
"golang.org/x/tools/go/packages"
109
)
1110

12-
func setupPackages(t *testing.T, code string) (string, []*packages.Package) {
13-
tmpdir, err := ioutil.TempDir("", "go-test-sumtype-")
14-
if err != nil {
15-
t.Fatal(err)
16-
}
17-
srcPath := filepath.Join(tmpdir, "src.go")
18-
if err := ioutil.WriteFile(srcPath, []byte(code), 0600); err != nil {
11+
func setupPackages(t *testing.T, code string) []*packages.Package {
12+
srcPath := filepath.Join(t.TempDir(), "src.go")
13+
if err := os.WriteFile(srcPath, []byte(code), 0600); err != nil {
1914
t.Fatal(err)
2015
}
2116
pkgs, err := tycheckAll([]string{srcPath})
2217
if err != nil {
2318
t.Fatal(err)
2419
}
25-
return tmpdir, pkgs
26-
}
27-
28-
func teardownPackage(t *testing.T, dir string) {
29-
if err := os.RemoveAll(dir); err != nil {
30-
t.Fatal(err)
31-
}
20+
return pkgs
3221
}
3322

3423
func tycheckAll(args []string) ([]*packages.Package, error) {

0 commit comments

Comments
 (0)