tstest: add RequireRoot helper

Start using a common helper for tests to declare that they require root.

This is step 1. A later step will then make this helper track which tests were
skipped so a subsequent pass will run these test as root.

Updates tailscale/corp#40007

Change-Id: I4979e1def0fa3691d38c83f48c89aaa443e7f62e
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
This commit is contained in:
Brad Fitzpatrick
2026-04-10 14:35:50 +00:00
committed by Brad Fitzpatrick
parent 399f048332
commit 5e81840b57
4 changed files with 15 additions and 18 deletions
+2 -3
View File
@@ -20,6 +20,7 @@ import (
"syscall"
"testing"
"tailscale.com/tstest"
"tailscale.com/types/logger"
)
@@ -71,9 +72,7 @@ func TestDoDropPrivileges(t *testing.T) {
os.Exit(0)
}
if os.Getuid() != 0 {
t.Skip("test only works when run as root")
}
tstest.RequireRoot(t)
rerunSelf := func(t *testing.T, input SubprocInput) []byte {
fpath := filepath.Join(t.TempDir(), "out.json")