fix: harden thothctl Windows safe I/O

This commit is contained in:
2026-08-04 17:55:36 +02:00
parent f5468f0d36
commit c90299f24d
9 changed files with 175 additions and 32 deletions
@@ -0,0 +1,19 @@
// Package testsupport provides portable helpers shared by thothctl tests.
package testsupport
import (
"os"
"testing"
)
// SymlinkOrSkip creates a symlink or skips only when Windows reports that symlink privilege is
// unavailable. All other failures remain test failures.
func SymlinkOrSkip(t testing.TB, target, link string) {
t.Helper()
if err := os.Symlink(target, link); err != nil {
if isSymlinkPrivilegeUnavailable(err) {
t.Skip("Windows symlink privilege is unavailable")
}
t.Fatal(err)
}
}