Mitigate TestShutdown flakyness

This commit is contained in:
Romain 2025-10-23 14:30:05 +02:00 committed by GitHub
parent 5e2b393ceb
commit f3ecfa82bc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -250,13 +250,19 @@ func TestShutdown(t *testing.T) {
// Start sending packets, to create a "session" with the server.
requireEcho(t, "TEST", conn, time.Second)
shutdownStartedChan := make(chan struct{})
doneChan := make(chan struct{})
go func() {
close(shutdownStartedChan)
err := l.Shutdown(5 * time.Second)
require.NoError(t, err)
close(doneChan)
}()
// Wait until shutdown has started, and hopefully after 100 ms the listener has stopped accepting new sessions.
<-shutdownStartedChan
time.Sleep(100 * time.Millisecond)
// Make sure that our session is still live even after the shutdown.
requireEcho(t, "TEST2", conn, time.Second)