From 1aa9f2809e9fe4399081613e9de10ee85ac5e4a3 Mon Sep 17 00:00:00 2001 From: John Guo Date: Wed, 12 Apr 2023 10:12:11 +0800 Subject: [PATCH] improve stream response for http (#2564) --- container/gqueue/gqueue_z_unit_test.go | 6 +++--- net/ghttp/ghttp_response_writer.go | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/container/gqueue/gqueue_z_unit_test.go b/container/gqueue/gqueue_z_unit_test.go index 9fee57afc..95ca6761f 100644 --- a/container/gqueue/gqueue_z_unit_test.go +++ b/container/gqueue/gqueue_z_unit_test.go @@ -95,11 +95,11 @@ func Test_Issue2509(t *testing.T) { q.Push(1) q.Push(2) q.Push(3) - t.Assert(q.Len(), 3) + t.AssertLE(q.Len(), 3) t.Assert(<-q.C, 1) - t.Assert(q.Len(), 2) + t.AssertLE(q.Len(), 2) t.Assert(<-q.C, 2) - t.Assert(q.Len(), 1) + t.AssertLE(q.Len(), 1) t.Assert(<-q.C, 3) t.Assert(q.Len(), 0) }) diff --git a/net/ghttp/ghttp_response_writer.go b/net/ghttp/ghttp_response_writer.go index 7d560d644..9ed6f6a28 100644 --- a/net/ghttp/ghttp_response_writer.go +++ b/net/ghttp/ghttp_response_writer.go @@ -65,5 +65,8 @@ func (w *ResponseWriter) Flush() { if w.buffer.Len() > 0 { _, _ = w.writer.Write(w.buffer.Bytes()) w.buffer.Reset() + if flusher, ok := w.RawWriter().(http.Flusher); ok { + flusher.Flush() + } } }