From 079cd97c0a52e337b3dce5ba99b21d6dfbc60a91 Mon Sep 17 00:00:00 2001 From: congqixia Date: Tue, 30 Sep 2025 09:53:05 +0800 Subject: [PATCH] fix: [skip e2e] Wait eventch in `TestUpdateSessions` (#44640) Related to #44620 Make unittest stable by waiting eventch instead of async read len(eventCh), which is unstable Signed-off-by: Congqi Xia --- .../util/sessionutil/session_util_test.go | 29 ++++++++++++------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/internal/util/sessionutil/session_util_test.go b/internal/util/sessionutil/session_util_test.go index e392b9489a..d43fea206b 100644 --- a/internal/util/sessionutil/session_util_test.go +++ b/internal/util/sessionutil/session_util_test.go @@ -196,18 +196,27 @@ func TestUpdateSessions(t *testing.T) { sessionEvents := []*SessionEvent{} addEventLen := 0 delEventLen := 0 - eventLength := len(eventCh) - for i := 0; i < eventLength; i++ { - sessionEvent := <-eventCh - if sessionEvent.EventType == SessionAddEvent { - addEventLen++ + + ch := time.After(time.Second * 5) +LOOP: + for { + select { + case <-ch: + t.FailNow() + case sessionEvent := <-eventCh: + + if sessionEvent.EventType == SessionAddEvent { + addEventLen++ + } + if sessionEvent.EventType == SessionDelEvent { + delEventLen++ + } + sessionEvents = append(sessionEvents, sessionEvent) + if len(sessionEvents) == 20 { + break LOOP + } } - if sessionEvent.EventType == SessionDelEvent { - delEventLen++ - } - sessionEvents = append(sessionEvents, sessionEvent) } - assert.Equal(t, len(sessionEvents), 20) assert.Equal(t, addEventLen, 10) assert.Equal(t, delEventLen, 10) }