package daemon import ( "fmt" "os/exec" "testing" ) // startFakeFirecracker launches a bash sleep-loop rewritten to match // the firecracker command line a real process would expose, so // reconcile / handle-cache paths that grep /proc//cmdline accept // it as a firecracker process. Killed on test cleanup. func startFakeFirecracker(t *testing.T, apiSock string) *exec.Cmd { t.Helper() cmd := exec.Command("bash", "-lc", fmt.Sprintf("exec -a %q sleep 60", "firecracker --api-sock "+apiSock)) if err := cmd.Start(); err != nil { t.Fatalf("start fake firecracker: %v", err) } t.Cleanup(func() { if cmd.Process != nil { _ = cmd.Process.Kill() _, _ = cmd.Process.Wait() } }) return cmd }