test: check cleanup errors (#22)

This commit is contained in:
2025-07-13 14:08:23 +03:00
committed by GitHub
parent ef2296d45e
commit b017814c6d
4 changed files with 57 additions and 13 deletions

View File

@@ -16,7 +16,11 @@ func TestDefaultConfig(t *testing.T) {
if err != nil { if err != nil {
t.Fatalf("Failed to create temp directory: %v", err) t.Fatalf("Failed to create temp directory: %v", err)
} }
defer os.RemoveAll(tmpDir) defer func() {
if err := os.RemoveAll(tmpDir); err != nil {
t.Fatalf("cleanup failed: %v", err)
}
}()
// Point Viper to the temp directory with no config file. // Point Viper to the temp directory with no config file.
originalConfigPaths := viper.ConfigFileUsed() originalConfigPaths := viper.ConfigFileUsed()
@@ -46,7 +50,11 @@ func TestLoadConfigFile(t *testing.T) {
if err != nil { if err != nil {
t.Fatalf("Failed to create temp directory: %v", err) t.Fatalf("Failed to create temp directory: %v", err)
} }
defer os.RemoveAll(tmpDir) defer func() {
if err := os.RemoveAll(tmpDir); err != nil {
t.Fatalf("cleanup failed: %v", err)
}
}()
// Prepare a minimal config file // Prepare a minimal config file
configContent := []byte(`--- configContent := []byte(`---

View File

@@ -15,7 +15,11 @@ func TestProdWalkerWithIgnore(t *testing.T) {
if err != nil { if err != nil {
t.Fatalf("Failed to create temp root directory: %v", err) t.Fatalf("Failed to create temp root directory: %v", err)
} }
defer os.RemoveAll(rootDir) defer func() {
if err := os.RemoveAll(rootDir); err != nil {
t.Fatalf("cleanup failed: %v", err)
}
}()
subDir := filepath.Join(rootDir, "vendor") subDir := filepath.Join(rootDir, "vendor")
if err := os.Mkdir(subDir, 0755); err != nil { if err := os.Mkdir(subDir, 0755); err != nil {
@@ -69,7 +73,11 @@ func TestProdWalkerBinaryCheck(t *testing.T) {
if err != nil { if err != nil {
t.Fatalf("Failed to create temp root directory: %v", err) t.Fatalf("Failed to create temp root directory: %v", err)
} }
defer os.RemoveAll(rootDir) defer func() {
if err := os.RemoveAll(rootDir); err != nil {
t.Fatalf("cleanup failed: %v", err)
}
}()
// Create a mock binary file // Create a mock binary file
binFile := filepath.Join(rootDir, "somefile.exe") binFile := filepath.Join(rootDir, "somefile.exe")
@@ -108,7 +116,11 @@ func TestProdWalkerSizeLimit(t *testing.T) {
if err != nil { if err != nil {
t.Fatalf("Failed to create temp root directory: %v", err) t.Fatalf("Failed to create temp root directory: %v", err)
} }
defer os.RemoveAll(rootDir) defer func() {
if err := os.RemoveAll(rootDir); err != nil {
t.Fatalf("cleanup failed: %v", err)
}
}()
// Create a file exceeding the size limit // Create a file exceeding the size limit
largeFilePath := filepath.Join(rootDir, "largefile.txt") largeFilePath := filepath.Join(rootDir, "largefile.txt")

View File

@@ -46,8 +46,12 @@ func TestStartWriter_Formats(t *testing.T) {
t.Fatalf("Failed to create temp file: %v", err) t.Fatalf("Failed to create temp file: %v", err)
} }
defer func() { defer func() {
outFile.Close() if err := outFile.Close(); err != nil {
os.Remove(outFile.Name()) t.Errorf("close temp file: %v", err)
}
if err := os.Remove(outFile.Name()); err != nil {
t.Errorf("remove temp file: %v", err)
}
}() }()
// Prepare channels // Prepare channels

View File

@@ -17,7 +17,11 @@ func TestIntegrationFullCLI(t *testing.T) {
if err != nil { if err != nil {
t.Fatalf("Failed to create temp source directory: %v", err) t.Fatalf("Failed to create temp source directory: %v", err)
} }
defer os.RemoveAll(srcDir) defer func() {
if err := os.RemoveAll(srcDir); err != nil {
t.Fatalf("cleanup failed: %v", err)
}
}()
// Create two test files. // Create two test files.
file1 := filepath.Join(srcDir, "file1.txt") file1 := filepath.Join(srcDir, "file1.txt")
@@ -35,8 +39,14 @@ func TestIntegrationFullCLI(t *testing.T) {
t.Fatalf("Failed to create temp output file: %v", err) t.Fatalf("Failed to create temp output file: %v", err)
} }
outFilePath := outFile.Name() outFilePath := outFile.Name()
outFile.Close() if err := outFile.Close(); err != nil {
defer os.Remove(outFilePath) t.Fatalf("close temp file: %v", err)
}
defer func() {
if err := os.Remove(outFilePath); err != nil {
t.Fatalf("cleanup output file: %v", err)
}
}()
// Set up CLI arguments. // Set up CLI arguments.
os.Args = []string{ os.Args = []string{
@@ -78,7 +88,11 @@ func TestIntegrationCancellation(t *testing.T) {
if err != nil { if err != nil {
t.Fatalf("Failed to create temp source directory: %v", err) t.Fatalf("Failed to create temp source directory: %v", err)
} }
defer os.RemoveAll(srcDir) defer func() {
if err := os.RemoveAll(srcDir); err != nil {
t.Fatalf("cleanup failed: %v", err)
}
}()
// Create a large number of small files. // Create a large number of small files.
for i := 0; i < 1000; i++ { for i := 0; i < 1000; i++ {
@@ -94,8 +108,14 @@ func TestIntegrationCancellation(t *testing.T) {
t.Fatalf("Failed to create temp output file: %v", err) t.Fatalf("Failed to create temp output file: %v", err)
} }
outFilePath := outFile.Name() outFilePath := outFile.Name()
outFile.Close() if err := outFile.Close(); err != nil {
defer os.Remove(outFilePath) t.Fatalf("close temp file: %v", err)
}
defer func() {
if err := os.Remove(outFilePath); err != nil {
t.Fatalf("cleanup output file: %v", err)
}
}()
// Set up CLI arguments. // Set up CLI arguments.
os.Args = []string{ os.Args = []string{