chore: fix potential panic in tests

This commit is contained in:
jamesread 2026-03-11 00:27:42 +00:00
parent acd6cb839e
commit 606b705bdd
1 changed files with 11 additions and 5 deletions

View File

@ -640,11 +640,11 @@ func drainEventStreamUntilFinished(ch <-chan *apiv1.EventStreamResponse, timeout
deadline := time.Now().Add(timeout) deadline := time.Now().Add(timeout)
for time.Now().Before(deadline) { for time.Now().Before(deadline) {
ev, finished := recvEventStreamOne(ch, 50*time.Millisecond) ev, finished := recvEventStreamOne(ch, 50*time.Millisecond)
if ev != nil {
out = append(out, ev)
if finished { if finished {
return out return out
} }
if ev != nil {
out = append(out, ev)
} }
} }
return out return out
@ -652,7 +652,10 @@ func drainEventStreamUntilFinished(ch <-chan *apiv1.EventStreamResponse, timeout
func recvEventStreamOne(ch <-chan *apiv1.EventStreamResponse, timeout time.Duration) (*apiv1.EventStreamResponse, bool) { func recvEventStreamOne(ch <-chan *apiv1.EventStreamResponse, timeout time.Duration) (*apiv1.EventStreamResponse, bool) {
select { select {
case ev := <-ch: case ev, ok := <-ch:
if !ok {
return nil, true
}
return ev, ev.GetExecutionFinished() != nil return ev, ev.GetExecutionFinished() != nil
case <-time.After(timeout): case <-time.After(timeout):
return nil, true return nil, true
@ -663,7 +666,10 @@ func drainEventStreamWithTimeout(ch <-chan *apiv1.EventStreamResponse, timeout t
var out []*apiv1.EventStreamResponse var out []*apiv1.EventStreamResponse
for { for {
select { select {
case ev := <-ch: case ev, ok := <-ch:
if !ok {
return out
}
out = append(out, ev) out = append(out, ev)
case <-time.After(timeout): case <-time.After(timeout):
return out return out