func testCleanup(t *testing.T, g *graph.Graph, cmds []helper.Cmd, names []string) { // cleanup side on the test testPassed := false onChange := func(ws *websocket.Conn) { g.Lock() defer g.Unlock() if !testPassed { clean := true for _, name := range names { n := g.LookupFirstNode(graph.Metadata{"Name": name}) if n != nil { clean = false break } } if clean { testPassed = true ws.Close() } } } testTopology(t, g, cmds, onChange) if !testPassed { t.Error("test not executed or failed") } helper.CleanGraph(g) }