All checks were successful
Test / Create distribution (push) Successful in 1m32s
Test / Sandbox (race detector) (push) Successful in 11m28s
Test / ShareFS (push) Successful in 13m35s
Test / Sandbox (push) Successful in 2m33s
Test / Hakurei (push) Successful in 6m54s
Test / Hakurei (race detector) (push) Successful in 8m27s
Test / Flake checks (push) Successful in 2m20s
This is the daemon equivalent of CureAll in internal/rosa. Signed-off-by: Ophestra <cat@gensokyo.uk>
48 lines
800 B
Go
48 lines
800 B
Go
package main
|
|
|
|
import (
|
|
"net"
|
|
"os"
|
|
"testing"
|
|
|
|
"hakurei.app/internal/rosa"
|
|
)
|
|
|
|
func TestMain(m *testing.M) {
|
|
rosa.DropCaches(rosa.OptLLVMNoLTO)
|
|
os.Exit(m.Run())
|
|
}
|
|
|
|
func TestCureAll(t *testing.T) {
|
|
t.Parallel()
|
|
const env = "ROSA_TEST_DAEMON"
|
|
|
|
if !testing.Verbose() {
|
|
t.Skip("verbose flag not set")
|
|
}
|
|
|
|
pathname, ok := os.LookupEnv(env)
|
|
if !ok {
|
|
t.Skip(env + " not set")
|
|
}
|
|
|
|
addr := net.UnixAddr{Net: "unix", Name: pathname}
|
|
t.Cleanup(func() {
|
|
if t.Failed() {
|
|
if err := abortRemote(t.Context(), &addr, false); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
}
|
|
})
|
|
|
|
for i := range rosa.PresetEnd {
|
|
p := rosa.PArtifact(i)
|
|
t.Run(rosa.GetMetadata(p).Name, func(t *testing.T) {
|
|
_, err := cureRemote(t.Context(), &addr, rosa.Std.Load(p), 0)
|
|
if err != nil {
|
|
t.Error(err)
|
|
}
|
|
})
|
|
}
|
|
}
|