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> Signed-off-by: Andrey Smirnov <andrey.smirnov@talos-systems.com>
This commit is contained in:
parent
6fc38bae69
commit
fb058a7c92
@ -153,12 +153,7 @@ func (suite *manifestSuite) verifyBlockdevice(manifest *install.Manifest, curren
|
||||
|
||||
// verify filesystems by mounting and unmounting
|
||||
|
||||
tempDir, err := ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
|
||||
defer func() {
|
||||
suite.Assert().NoError(os.RemoveAll(tempDir))
|
||||
}()
|
||||
tempDir := suite.T().TempDir()
|
||||
|
||||
mountpoints, err = manifest.SystemMountpoints()
|
||||
suite.Require().NoError(err)
|
||||
@ -326,11 +321,7 @@ func (suite *manifestSuite) TestExecuteManifestPreserve() {
|
||||
|
||||
func (suite *manifestSuite) TestTargetInstall() {
|
||||
// Create Temp dirname for mountpoint
|
||||
dir, err := ioutil.TempDir("", "talostest")
|
||||
suite.Require().NoError(err)
|
||||
|
||||
//nolint:errcheck
|
||||
defer os.RemoveAll(dir)
|
||||
dir := suite.T().TempDir()
|
||||
|
||||
// Create a tempfile for local copy
|
||||
src, err := ioutil.TempFile(dir, "example")
|
||||
|
@ -27,19 +27,14 @@ func TestRun(t *testing.T) {
|
||||
test := test
|
||||
|
||||
t.Run(name, func(t *testing.T) {
|
||||
tempDir, err := os.MkdirTemp("", "go-pkg-*")
|
||||
require.NoError(t, err)
|
||||
|
||||
t.Cleanup(func() {
|
||||
require.NoError(t, os.RemoveAll(tempDir))
|
||||
})
|
||||
tempDir := t.TempDir()
|
||||
|
||||
tmpFile := filepath.Join(tempDir, "my.go")
|
||||
origPath := filepath.Join("testdata", test.original)
|
||||
|
||||
require.NoError(t, CopyFile(origPath, tmpFile))
|
||||
|
||||
err = Run(tempDir)
|
||||
err := Run(tempDir)
|
||||
require.NoError(t, err)
|
||||
|
||||
fileData := string(must(os.ReadFile(tmpFile))(t))
|
||||
|
@ -65,8 +65,7 @@ type ContainerdSuite struct {
|
||||
func (suite *ContainerdSuite) SetupSuite() {
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
|
||||
suite.loggingManager = logging.NewFileLoggingManager(suite.tmpDir)
|
||||
|
||||
@ -146,8 +145,6 @@ func (suite *ContainerdSuite) TearDownSuite() {
|
||||
|
||||
suite.Require().NoError(suite.containerdRunner.Stop())
|
||||
suite.containerdWg.Wait()
|
||||
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
||||
func (suite *ContainerdSuite) getLogContents(filename string) []byte {
|
||||
|
@ -43,8 +43,7 @@ type GoroutineSuite struct {
|
||||
func (suite *GoroutineSuite) SetupSuite() {
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
|
||||
suite.loggingManager = logging.NewFileLoggingManager(suite.tmpDir)
|
||||
|
||||
@ -60,10 +59,6 @@ func (suite *GoroutineSuite) SetupSuite() {
|
||||
suite.r = r
|
||||
}
|
||||
|
||||
func (suite *GoroutineSuite) TearDownSuite() {
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
||||
func (suite *GoroutineSuite) TestRunSuccess() {
|
||||
r := goroutine.NewRunner(suite.r, "testsuccess",
|
||||
func(context.Context, runtime.Runtime, io.Writer) error {
|
||||
|
@ -39,10 +39,7 @@ type ProcessSuite struct {
|
||||
}
|
||||
|
||||
func (suite *ProcessSuite) SetupSuite() {
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
|
||||
suite.loggingManager = logging.NewFileLoggingManager(suite.tmpDir)
|
||||
|
||||
@ -55,8 +52,6 @@ func (suite *ProcessSuite) TearDownSuite() {
|
||||
if suite.runReaper {
|
||||
reaper.Shutdown()
|
||||
}
|
||||
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
||||
func (suite *ProcessSuite) TestRunSuccess() {
|
||||
|
@ -7,7 +7,6 @@ package containerd_test
|
||||
import (
|
||||
"context"
|
||||
"encoding/hex"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"sync"
|
||||
@ -69,8 +68,7 @@ func (suite *ContainerdSuite) SetupSuite() {
|
||||
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
|
||||
suite.loggingManager = logging.NewFileLoggingManager(suite.tmpDir)
|
||||
|
||||
@ -146,8 +144,6 @@ func (suite *ContainerdSuite) TearDownSuite() {
|
||||
|
||||
suite.Require().NoError(suite.containerdRunner.Stop())
|
||||
suite.containerdWg.Wait()
|
||||
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
||||
func (suite *ContainerdSuite) SetupTest() {
|
||||
|
@ -6,7 +6,6 @@ package cri_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"runtime/debug"
|
||||
@ -65,8 +64,7 @@ func (suite *CRISuite) SetupSuite() {
|
||||
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
|
||||
stateDir, rootDir := filepath.Join(suite.tmpDir, "state"), filepath.Join(suite.tmpDir, "root")
|
||||
suite.Require().NoError(os.Mkdir(stateDir, 0o777))
|
||||
@ -140,8 +138,6 @@ func (suite *CRISuite) TearDownSuite() {
|
||||
|
||||
suite.Require().NoError(suite.containerdRunner.Stop())
|
||||
suite.containerdWg.Wait()
|
||||
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
||||
func (suite *CRISuite) SetupTest() {
|
||||
|
@ -6,7 +6,6 @@ package cri_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"sync"
|
||||
@ -58,8 +57,7 @@ func (suite *CRISuite) SetupSuite() {
|
||||
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
|
||||
stateDir, rootDir := filepath.Join(suite.tmpDir, "state"), filepath.Join(suite.tmpDir, "root")
|
||||
suite.Require().NoError(os.Mkdir(stateDir, 0o777))
|
||||
@ -127,8 +125,6 @@ func (suite *CRISuite) TearDownSuite() {
|
||||
|
||||
suite.Require().NoError(suite.containerdRunner.Stop())
|
||||
suite.containerdWg.Wait()
|
||||
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
||||
func (suite *CRISuite) SetupTest() {
|
||||
|
@ -88,12 +88,7 @@ func (suite *manifestSuite) skipUnderBuildkit() {
|
||||
func (suite *manifestSuite) TestCleanCorrupedXFSFileSystem() {
|
||||
suite.skipUnderBuildkit()
|
||||
|
||||
tempDir, err := ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
|
||||
defer func() {
|
||||
suite.Assert().NoError(os.RemoveAll(tempDir))
|
||||
}()
|
||||
tempDir := suite.T().TempDir()
|
||||
|
||||
mountDir := filepath.Join(tempDir, "var")
|
||||
|
||||
|
@ -6,7 +6,6 @@ package archiver_test
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
|
||||
@ -58,10 +57,7 @@ var filesFixture = []struct {
|
||||
}
|
||||
|
||||
func (suite *CommonSuite) SetupSuite() {
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "archiver")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
|
||||
for _, file := range filesFixture {
|
||||
suite.Require().NoError(os.MkdirAll(filepath.Join(suite.tmpDir, filepath.Dir(file.Path)), 0o777))
|
||||
@ -90,7 +86,3 @@ func (suite *CommonSuite) SetupSuite() {
|
||||
suite.Require().NoError(f.Close())
|
||||
}
|
||||
}
|
||||
|
||||
func (suite *CommonSuite) TearDownSuite() {
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
@ -7,7 +7,6 @@ package file_test
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
@ -27,10 +26,7 @@ type FileChunkerSuite struct {
|
||||
}
|
||||
|
||||
func (suite *FileChunkerSuite) SetupSuite() {
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
}
|
||||
|
||||
func (suite *FileChunkerSuite) SetupTest() {
|
||||
@ -50,10 +46,6 @@ func (suite *FileChunkerSuite) TearDownTest() {
|
||||
suite.reader.Close() //nolint:errcheck
|
||||
}
|
||||
|
||||
func (suite *FileChunkerSuite) TearDownSuite() {
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
||||
func collectChunks(chunksCh <-chan []byte) <-chan []byte {
|
||||
combinedCh := make(chan []byte)
|
||||
|
||||
|
@ -6,7 +6,6 @@ package conditions_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
@ -24,13 +23,7 @@ type FilesSuite struct {
|
||||
}
|
||||
|
||||
func (suite *FilesSuite) SetupSuite() {
|
||||
var err error
|
||||
suite.tempDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
}
|
||||
|
||||
func (suite *FilesSuite) TearDownSuite() {
|
||||
suite.Require().NoError(os.RemoveAll(suite.tempDir))
|
||||
suite.tempDir = suite.T().TempDir()
|
||||
}
|
||||
|
||||
func (suite *FilesSuite) createFile(name string) (path string) {
|
||||
|
@ -9,7 +9,6 @@ import (
|
||||
"context"
|
||||
"fmt"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
@ -31,10 +30,7 @@ type FollowSuite struct {
|
||||
}
|
||||
|
||||
func (suite *FollowSuite) SetupSuite() {
|
||||
var err error
|
||||
|
||||
suite.tmpDir, err = ioutil.TempDir("", "talos")
|
||||
suite.Require().NoError(err)
|
||||
suite.tmpDir = suite.T().TempDir()
|
||||
}
|
||||
|
||||
func (suite *FollowSuite) SetupTest() {
|
||||
@ -55,10 +51,6 @@ func (suite *FollowSuite) TearDownTest() {
|
||||
suite.reader.Close() //nolint:errcheck
|
||||
}
|
||||
|
||||
func (suite *FollowSuite) TearDownSuite() {
|
||||
suite.Require().NoError(os.RemoveAll(suite.tmpDir))
|
||||
}
|
||||
|
||||
//nolint:unparam
|
||||
func (suite *FollowSuite) readAll(ctx context.Context, expectedError string, sizeHint int, timeout time.Duration) <-chan []byte {
|
||||
combinedCh := make(chan []byte)
|
||||
|
Loading…
x
Reference in New Issue
Block a user