tests: Add context cancelation (#15374)

A huge number of goroutines would build up from various monitors

When creating test filesystems provide a context so they can shut down when no longer needed.
This commit is contained in:
Klaus Post
2022-07-21 11:52:18 -07:00
committed by GitHub
parent cab8d3d568
commit 1e332f0eb1
22 changed files with 136 additions and 69 deletions

View File

@@ -18,6 +18,7 @@
package cmd
import (
"context"
"fmt"
"io/ioutil"
"os"
@@ -28,7 +29,10 @@ import (
// Test if config v1 is purged
func TestServerConfigMigrateV1(t *testing.T) {
objLayer, fsDir, err := prepareFS()
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
objLayer, fsDir, err := prepareFS(ctx)
if err != nil {
t.Fatal(err)
}
@@ -164,6 +168,9 @@ func TestServerConfigMigrateInexistentConfig(t *testing.T) {
// Test if a config migration from v2 to v33 is successfully done
func TestServerConfigMigrateV2toV33(t *testing.T) {
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
rootPath, err := ioutil.TempDir(globalTestTmpDir, "minio-")
if err != nil {
t.Fatal(err)
@@ -172,7 +179,7 @@ func TestServerConfigMigrateV2toV33(t *testing.T) {
globalConfigDir = &ConfigDir{path: rootPath}
objLayer, fsDir, err := prepareFS()
objLayer, fsDir, err := prepareFS(ctx)
if err != nil {
t.Fatal(err)
}