diff --git a/cmd/mesh-controller/composed_served_integration_test.go b/cmd/mesh-controller/composed_served_integration_test.go index dce07570..41819d3d 100644 --- a/cmd/mesh-controller/composed_served_integration_test.go +++ b/cmd/mesh-controller/composed_served_integration_test.go @@ -230,6 +230,13 @@ func aServedMesh(t *testing.T) *servedMesh { case <-time.After(30 * time.Second): t.Log("the controller did not stop within 30 s") } + // A stopping controller refuses every verb from then on as a handover (issue 289), which its process exits + // after; this one is the test process, so a later test's verb would be refused without running (issue 1945: + // the conditions verb's own process was never started). Its stop marks it once the serving context ends. + for deadline := time.Now().Add(5 * time.Second); !handingOver.Load() && time.Now().Before(deadline); { + time.Sleep(10 * time.Millisecond) + } + handingOver.Store(false) }) // Served once both nodes have their own composition: the start's pass ran. for _, node := range []string{"anchor", "laptop"} {