Index: net/quic/quic_chromium_client_stream_test.cc |
diff --git a/net/quic/quic_chromium_client_stream_test.cc b/net/quic/quic_chromium_client_stream_test.cc |
index f384304002dec9dadbd690ddf45fa22ba522dd1d..f0c8d1988ce0266b40ace40f18f9bc32be3e7a58 100644 |
--- a/net/quic/quic_chromium_client_stream_test.cc |
+++ b/net/quic/quic_chromium_client_stream_test.cc |
@@ -309,10 +309,14 @@ TEST_P(QuicChromiumClientStreamTest, OnTrailers) { |
/*offset=*/0, data)); |
EXPECT_CALL(delegate_, OnDataAvailable()) |
+ .Times(1) |
.WillOnce(testing::Invoke(CreateFunctor( |
&QuicChromiumClientStreamTest::ReadData, base::Unretained(this), |
StringPiece(data, arraysize(data) - 1)))); |
+ // Wait until delegate_->OnDataAvailable is called. |
+ base::MessageLoop::current()->RunUntilIdle(); |
+ |
SpdyHeaderBlock trailers; |
trailers["bar"] = "foo"; |
std::string uncompressed_trailers = |
@@ -324,6 +328,13 @@ TEST_P(QuicChromiumClientStreamTest, OnTrailers) { |
EXPECT_CALL(delegate_, |
OnHeadersAvailable(trailers, uncompressed_trailers.length())); |
+ // Make sure that OnDataAvailable is invoked to force us to read FIN. |
+ EXPECT_CALL(delegate_, OnDataAvailable()) |
+ .Times(1) |
+ .WillOnce(testing::Invoke( |
+ CreateFunctor(&QuicChromiumClientStreamTest::ReadData, |
+ base::Unretained(this), StringPiece("")))); |
+ |
base::MessageLoop::current()->RunUntilIdle(); |
EXPECT_CALL(delegate_, OnClose(QUIC_NO_ERROR)); |
} |