mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
test: use T.TempDir
to create temporary test directory (#44947)
The directory created by `T.TempDir` is automatically removed when the test and all its subtests complete. Reference: https://pkg.go.dev/testing#T.TempDir Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
This commit is contained in:
parent
52fec0d7db
commit
b56848f006
@ -77,25 +77,15 @@ func TestCopyFile_NonExistentDestDir(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestCopyRecursive_NonExistentDest(t *testing.T) {
|
||||
src, err := ioutil.TempDir("", "")
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
err := os.RemoveAll(src)
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
src := t.TempDir()
|
||||
|
||||
err = os.MkdirAll(filepath.Join(src, "data"), 0750)
|
||||
err := os.MkdirAll(filepath.Join(src, "data"), 0750)
|
||||
require.NoError(t, err)
|
||||
// nolint:gosec
|
||||
err = ioutil.WriteFile(filepath.Join(src, "data", "file.txt"), []byte("Test"), 0644)
|
||||
require.NoError(t, err)
|
||||
|
||||
dstParent, err := ioutil.TempDir("", "")
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
err := os.RemoveAll(dstParent)
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
dstParent := t.TempDir()
|
||||
|
||||
dst := filepath.Join(dstParent, "dest")
|
||||
|
||||
@ -106,25 +96,15 @@ func TestCopyRecursive_NonExistentDest(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestCopyRecursive_ExistentDest(t *testing.T) {
|
||||
src, err := ioutil.TempDir("", "")
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
err := os.RemoveAll(src)
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
src := t.TempDir()
|
||||
|
||||
err = os.MkdirAll(filepath.Join(src, "data"), 0750)
|
||||
err := os.MkdirAll(filepath.Join(src, "data"), 0750)
|
||||
require.NoError(t, err)
|
||||
// nolint:gosec
|
||||
err = ioutil.WriteFile(filepath.Join(src, "data", "file.txt"), []byte("Test"), 0644)
|
||||
require.NoError(t, err)
|
||||
|
||||
dst, err := ioutil.TempDir("", "")
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
err := os.RemoveAll(dst)
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
dst := t.TempDir()
|
||||
|
||||
err = CopyRecursive(src, dst)
|
||||
require.NoError(t, err)
|
||||
|
@ -31,12 +31,7 @@ func TestExists_Existent(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestExists_Dir(t *testing.T) {
|
||||
f, err := ioutil.TempDir("", "")
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
err := os.Remove(f)
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
f := t.TempDir()
|
||||
|
||||
exists, err := Exists(f)
|
||||
|
||||
|
@ -2,9 +2,7 @@ package api
|
||||
|
||||
import (
|
||||
"context"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"os"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
@ -258,8 +256,7 @@ func createMultiOrgAlertmanager(t *testing.T) *notifier.MultiOrgAlertmanager {
|
||||
}
|
||||
configStore := notifier.NewFakeConfigStore(t, configs)
|
||||
orgStore := notifier.NewFakeOrgStore(t, []int64{1, 2, 3})
|
||||
tmpDir, err := ioutil.TempDir("", "test")
|
||||
require.NoError(t, err)
|
||||
tmpDir := t.TempDir()
|
||||
kvStore := notifier.NewFakeKVStore(t)
|
||||
secretsService := secretsManager.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
reg := prometheus.NewPedanticRegistry()
|
||||
@ -276,18 +273,11 @@ func createMultiOrgAlertmanager(t *testing.T) *notifier.MultiOrgAlertmanager {
|
||||
|
||||
mam, err := notifier.NewMultiOrgAlertmanager(cfg, &configStore, &orgStore, kvStore, decryptFn, m.GetMultiOrgAlertmanagerMetrics(), nil, log.New("testlogger"))
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(cleanOrgDirectories(tmpDir, t))
|
||||
err = mam.LoadAndSyncAlertmanagersForOrgs(context.Background())
|
||||
require.NoError(t, err)
|
||||
return mam
|
||||
}
|
||||
|
||||
func cleanOrgDirectories(path string, t *testing.T) func() {
|
||||
return func() {
|
||||
require.NoError(t, os.RemoveAll(path))
|
||||
}
|
||||
}
|
||||
|
||||
var validConfig = setting.GetAlertmanagerDefaultConfiguration()
|
||||
|
||||
var brokenConfig = `
|
||||
|
@ -3,8 +3,6 @@ package notifier
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"sort"
|
||||
"testing"
|
||||
"time"
|
||||
@ -29,11 +27,7 @@ import (
|
||||
)
|
||||
|
||||
func setupAMTest(t *testing.T) *Alertmanager {
|
||||
dir, err := ioutil.TempDir("", "")
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
require.NoError(t, os.RemoveAll(dir))
|
||||
})
|
||||
dir := t.TempDir()
|
||||
cfg := &setting.Cfg{
|
||||
DataPath: dir,
|
||||
}
|
||||
|
@ -5,7 +5,6 @@ import (
|
||||
"context"
|
||||
"errors"
|
||||
"io/fs"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
@ -31,8 +30,7 @@ func TestMultiOrgAlertmanager_SyncAlertmanagersForOrgs(t *testing.T) {
|
||||
orgs: []int64{1, 2, 3},
|
||||
}
|
||||
|
||||
tmpDir, err := ioutil.TempDir("", "test")
|
||||
require.NoError(t, err)
|
||||
tmpDir := t.TempDir()
|
||||
kvStore := NewFakeKVStore(t)
|
||||
secretsService := secretsManager.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
decryptFn := secretsService.GetDecryptedValue
|
||||
@ -50,8 +48,6 @@ func TestMultiOrgAlertmanager_SyncAlertmanagersForOrgs(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
ctx := context.Background()
|
||||
|
||||
t.Cleanup(cleanOrgDirectories(tmpDir, t))
|
||||
|
||||
// Ensure that one Alertmanager is created per org.
|
||||
{
|
||||
require.NoError(t, mam.LoadAndSyncAlertmanagersForOrgs(ctx))
|
||||
@ -159,8 +155,7 @@ func TestMultiOrgAlertmanager_SyncAlertmanagersForOrgsWithFailures(t *testing.T)
|
||||
orgs: []int64{1, 2, 3},
|
||||
}
|
||||
|
||||
tmpDir, err := ioutil.TempDir("", "test")
|
||||
require.NoError(t, err)
|
||||
tmpDir := t.TempDir()
|
||||
kvStore := NewFakeKVStore(t)
|
||||
secretsService := secretsManager.SetupTestService(t, fakes.NewFakeSecretsStore())
|
||||
decryptFn := secretsService.GetDecryptedValue
|
||||
@ -213,8 +208,7 @@ func TestMultiOrgAlertmanager_AlertmanagerFor(t *testing.T) {
|
||||
orgStore := &FakeOrgStore{
|
||||
orgs: []int64{1, 2, 3},
|
||||
}
|
||||
tmpDir, err := ioutil.TempDir("", "test")
|
||||
require.NoError(t, err)
|
||||
tmpDir := t.TempDir()
|
||||
cfg := &setting.Cfg{
|
||||
DataPath: tmpDir,
|
||||
UnifiedAlerting: setting.UnifiedAlertingSettings{AlertmanagerConfigPollInterval: 3 * time.Minute, DefaultConfiguration: setting.GetAlertmanagerDefaultConfiguration()}, // do not poll in tests.
|
||||
@ -228,8 +222,6 @@ func TestMultiOrgAlertmanager_AlertmanagerFor(t *testing.T) {
|
||||
require.NoError(t, err)
|
||||
ctx := context.Background()
|
||||
|
||||
t.Cleanup(cleanOrgDirectories(tmpDir, t))
|
||||
|
||||
// Ensure that one Alertmanagers is created per org.
|
||||
{
|
||||
require.NoError(t, mam.LoadAndSyncAlertmanagersForOrgs(ctx))
|
||||
@ -270,13 +262,6 @@ func TestMultiOrgAlertmanager_AlertmanagerFor(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// nolint:unused
|
||||
func cleanOrgDirectories(path string, t *testing.T) func() {
|
||||
return func() {
|
||||
require.NoError(t, os.RemoveAll(path))
|
||||
}
|
||||
}
|
||||
|
||||
var brokenConfig = `
|
||||
"alertmanager_config": {
|
||||
"route": {
|
||||
|
@ -3,7 +3,6 @@ package testinfra
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"net"
|
||||
"net/http"
|
||||
"os"
|
||||
@ -96,12 +95,7 @@ func SetUpDatabase(t *testing.T, grafDir string) *sqlstore.SQLStore {
|
||||
func CreateGrafDir(t *testing.T, opts ...GrafanaOpts) (string, string) {
|
||||
t.Helper()
|
||||
|
||||
tmpDir, err := ioutil.TempDir("", "")
|
||||
require.NoError(t, err)
|
||||
t.Cleanup(func() {
|
||||
err := os.RemoveAll(tmpDir)
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
tmpDir := t.TempDir()
|
||||
|
||||
// Search upwards in directory tree for project root
|
||||
var rootDir string
|
||||
@ -125,7 +119,7 @@ func CreateGrafDir(t *testing.T, opts ...GrafanaOpts) (string, string) {
|
||||
require.True(t, found, "Couldn't detect project root directory")
|
||||
|
||||
cfgDir := filepath.Join(tmpDir, "conf")
|
||||
err = os.MkdirAll(cfgDir, 0750)
|
||||
err := os.MkdirAll(cfgDir, 0750)
|
||||
require.NoError(t, err)
|
||||
dataDir := filepath.Join(tmpDir, "data")
|
||||
// nolint:gosec
|
||||
|
Loading…
Reference in New Issue
Block a user