mirror of
https://github.com/juanfont/headscale.git
synced 2026-03-19 16:21:23 +01:00
Buffer the AuthRequest verdict channel to prevent a race where the sender blocks indefinitely if the receiver has already timed out, and increase the auth followup test timeout from 100ms to 5s to prevent spurious failures under load. Skip postgres-backed tests when the postgres server is unavailable instead of calling t.Fatal, which was preventing the rest of the test suite from running. Add TestMain to db, types, and policy/v2 packages to chdir to the source directory before running tests. This ensures relative testdata/ paths resolve correctly when the test binary is executed from an arbitrary working directory (e.g., via "go tool stress").
26 lines
585 B
Go
26 lines
585 B
Go
package db
|
|
|
|
import (
|
|
"os"
|
|
"path/filepath"
|
|
"runtime"
|
|
"testing"
|
|
)
|
|
|
|
// TestMain ensures the working directory is set to the package source directory
|
|
// so that relative testdata/ paths resolve correctly when the test binary is
|
|
// executed from an arbitrary location (e.g., via "go tool stress").
|
|
func TestMain(m *testing.M) {
|
|
_, filename, _, ok := runtime.Caller(0)
|
|
if !ok {
|
|
panic("could not determine test source directory")
|
|
}
|
|
|
|
err := os.Chdir(filepath.Dir(filename))
|
|
if err != nil {
|
|
panic("could not chdir to test source directory: " + err.Error())
|
|
}
|
|
|
|
os.Exit(m.Run())
|
|
}
|