Skip to content

Commit b2730aa

Browse files
authored
Merge pull request kubernetes#95261 from sjenning/fix-pods-e2e
test: e2e: fix race in pods test
2 parents 60dd999 + b7c7433 commit b2730aa

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

test/e2e/node/pods.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,7 @@ var _ = SIGDescribe("Pods Extended", func() {
263263
start := time.Now()
264264
created := podClient.Create(pod)
265265
ch := make(chan []watch.Event)
266+
waitForWatch := make(chan struct{})
266267
go func() {
267268
defer ginkgo.GinkgoRecover()
268269
defer close(ch)
@@ -275,6 +276,7 @@ var _ = SIGDescribe("Pods Extended", func() {
275276
return
276277
}
277278
defer w.Stop()
279+
close(waitForWatch)
278280
events := []watch.Event{
279281
{Type: watch.Added, Object: created},
280282
}
@@ -291,6 +293,10 @@ var _ = SIGDescribe("Pods Extended", func() {
291293
ch <- events
292294
}()
293295

296+
select {
297+
case <-ch: // in case the goroutine above exits before establishing the watch
298+
case <-waitForWatch: // when the watch is established
299+
}
294300
t := time.Duration(rand.Intn(delay)) * time.Millisecond
295301
time.Sleep(t)
296302
err := podClient.Delete(context.TODO(), pod.Name, metav1.DeleteOptions{})

0 commit comments

Comments
 (0)