返回 DeepSeek-Reasonix
temphelper_test.go
根目录 / internal / serve / temphelper_test.go
1 package serve
2
3 import (
4 "os"
5 "testing"
6 "time"
7 )
8
9 // robustTempDir tolerates Windows holding session-store handles (ownership
10 // locks, query-cache writes) briefly past test end: retry removal instead of
11 // failing the test on cleanup-only races.
12 func robustTempDir(t *testing.T) string {
13 t.Helper()
14 dir, err := os.MkdirTemp("", "reasonix-serve-test-*")
15 if err != nil {
16 t.Fatalf("robustTempDir: %v", err)
17 }
18 t.Cleanup(func() {
19 var rmErr error
20 for range 100 {
21 if rmErr = os.RemoveAll(dir); rmErr == nil {
22 return
23 }
24 time.Sleep(20 * time.Millisecond)
25 }
26 t.Logf("robustTempDir: cleanup did not converge for %s: %v", dir, rmErr)
27 })
28 return dir
29 }
30
30 lines GO