Index: net/websockets/websocket_basic_stream_test.cc |
diff --git a/net/websockets/websocket_basic_stream_test.cc b/net/websockets/websocket_basic_stream_test.cc |
index 0671114da86f3658dba013d0cf03a7409d33dcfb..54ed6de31706552a9ba2a3b6baef248b1fe021d7 100644 |
--- a/net/websockets/websocket_basic_stream_test.cc |
+++ b/net/websockets/websocket_basic_stream_test.cc |
@@ -20,8 +20,13 @@ |
#include "net/base/test_completion_callback.h" |
#include "net/log/test_net_log.h" |
#include "net/socket/socket_test_util.h" |
+#include "net/test/gtest_util.h" |
+#include "testing/gmock/include/gmock/gmock.h" |
#include "testing/gtest/include/gtest/gtest.h" |
+using net::test::IsError; |
+using net::test::IsOk; |
+ |
namespace net { |
namespace { |
@@ -270,7 +275,7 @@ TEST_F(WebSocketBasicStreamSocketTest, ConstructionWorks) { |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, SyncReadWorks) { |
CreateRead(MockRead(SYNCHRONOUS, kSampleFrame, kSampleFrameSize)); |
int result = stream_->ReadFrames(&frames_, cb_.callback()); |
- EXPECT_EQ(OK, result); |
+ EXPECT_THAT(result, IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(UINT64_C(6), frames_[0]->header.payload_length); |
EXPECT_TRUE(frames_[0]->header.final); |
@@ -279,8 +284,8 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, SyncReadWorks) { |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, AsyncReadWorks) { |
CreateRead(MockRead(ASYNC, kSampleFrame, kSampleFrameSize)); |
int result = stream_->ReadFrames(&frames_, cb_.callback()); |
- ASSERT_EQ(ERR_IO_PENDING, result); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(result, IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(UINT64_C(6), frames_[0]->header.payload_length); |
// Don't repeat all the tests from SyncReadWorks; just enough to be sure the |
@@ -292,7 +297,7 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, HeaderFragmentedSync) { |
CreateChunkedRead( |
SYNCHRONOUS, kSampleFrame, kSampleFrameSize, 1, 2, LAST_FRAME_BIG); |
int result = stream_->ReadFrames(&frames_, cb_.callback()); |
- EXPECT_EQ(OK, result); |
+ EXPECT_THAT(result, IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(UINT64_C(6), frames_[0]->header.payload_length); |
} |
@@ -302,8 +307,8 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, HeaderFragmentedAsync) { |
CreateChunkedRead( |
ASYNC, kSampleFrame, kSampleFrameSize, 1, 2, LAST_FRAME_BIG); |
int result = stream_->ReadFrames(&frames_, cb_.callback()); |
- ASSERT_EQ(ERR_IO_PENDING, result); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(result, IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(UINT64_C(6), frames_[0]->header.payload_length); |
} |
@@ -315,8 +320,8 @@ TEST_F(WebSocketBasicStreamSocketTest, HeaderFragmentedSyncAsync) { |
MockRead(ASYNC, kSampleFrame + 1, kSampleFrameSize - 1)}; |
CreateReadOnly(reads); |
int result = stream_->ReadFrames(&frames_, cb_.callback()); |
- ASSERT_EQ(ERR_IO_PENDING, result); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(result, IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(UINT64_C(6), frames_[0]->header.payload_length); |
} |
@@ -328,14 +333,15 @@ TEST_F(WebSocketBasicStreamSocketTest, FragmentedLargeHeader) { |
MockRead(SYNCHRONOUS, kPartialLargeFrame, kLargeFrameHeaderSize - 1), |
MockRead(SYNCHRONOUS, ERR_IO_PENDING)}; |
CreateReadOnly(reads); |
- EXPECT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
} |
// A frame that does not arrive in a single read should be broken into separate |
// frames. |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, LargeFrameFirstChunk) { |
CreateRead(MockRead(SYNCHRONOUS, kPartialLargeFrame, kPartialLargeFrameSize)); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_FALSE(frames_[0]->header.final); |
EXPECT_EQ(kPartialLargeFrameSize - kLargeFrameHeaderSize, |
@@ -347,7 +353,7 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, LargeFrameFirstChunk) { |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, HeaderOnlyChunk) { |
CreateRead(MockRead(SYNCHRONOUS, kPartialLargeFrame, kLargeFrameHeaderSize)); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(NULL, frames_[0]->data.get()); |
EXPECT_EQ(0U, frames_[0]->header.payload_length); |
@@ -363,13 +369,14 @@ TEST_F(WebSocketBasicStreamSocketTest, HeaderBodySeparated) { |
kPartialLargeFrame + kLargeFrameHeaderSize, |
kPartialLargeFrameSize - kLargeFrameHeaderSize)}; |
CreateReadOnly(reads); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(NULL, frames_[0]->data.get()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodeText, frames_[0]->header.opcode); |
frames_.clear(); |
- EXPECT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(kPartialLargeFrameSize - kLargeFrameHeaderSize, |
frames_[0]->header.payload_length); |
@@ -388,15 +395,17 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, LargeFrameTwoChunks) { |
LAST_FRAME_NOT_BIG); |
TestCompletionCallback cb[2]; |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb[0].callback())); |
- EXPECT_EQ(OK, cb[0].WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb[0].callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb[0].WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(kChunkSize - kLargeFrameHeaderSize, |
frames_[0]->header.payload_length); |
frames_.clear(); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb[1].callback())); |
- EXPECT_EQ(OK, cb[1].WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb[1].callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb[1].WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(kChunkSize, frames_[0]->header.payload_length); |
} |
@@ -412,14 +421,16 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, OnlyFinalChunkIsFinal) { |
LAST_FRAME_BIG); |
TestCompletionCallback cb[2]; |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb[0].callback())); |
- EXPECT_EQ(OK, cb[0].WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb[0].callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb[0].WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
ASSERT_FALSE(frames_[0]->header.final); |
frames_.clear(); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb[1].callback())); |
- EXPECT_EQ(OK, cb[1].WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb[1].callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb[1].WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
ASSERT_TRUE(frames_[0]->header.final); |
} |
@@ -438,8 +449,9 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, ContinuationOpCodeUsed) { |
LAST_FRAME_BIG); |
TestCompletionCallback cb[kChunkCount]; |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb[0].callback())); |
- EXPECT_EQ(OK, cb[0].WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb[0].callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb[0].WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodeText, frames_[0]->header.opcode); |
@@ -447,8 +459,9 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, ContinuationOpCodeUsed) { |
// after the first is converted to Continuation. |
for (int i = 1; i < kChunkCount; ++i) { |
frames_.clear(); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb[i].callback())); |
- EXPECT_EQ(OK, cb[i].WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb[i].callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb[i].WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodeContinuation, |
frames_[0]->header.opcode); |
@@ -459,7 +472,7 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, ContinuationOpCodeUsed) { |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, ThreeFramesTogether) { |
CreateRead(MockRead(SYNCHRONOUS, kMultipleFrames, kMultipleFramesSize)); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(3U, frames_.size()); |
EXPECT_TRUE(frames_[0]->header.final); |
EXPECT_TRUE(frames_[1]->header.final); |
@@ -477,8 +490,9 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, SyncClose) { |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, AsyncClose) { |
CreateRead(MockRead(ASYNC, "", 0)); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(ERR_CONNECTION_CLOSED, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsError(ERR_CONNECTION_CLOSED)); |
} |
// The result should be the same if the socket returns |
@@ -495,8 +509,9 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, SyncCloseWithErr) { |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, AsyncCloseWithErr) { |
CreateRead(MockRead(ASYNC, ERR_CONNECTION_CLOSED)); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(ERR_CONNECTION_CLOSED, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsError(ERR_CONNECTION_CLOSED)); |
} |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, SyncErrorsPassedThrough) { |
@@ -511,8 +526,9 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, SyncErrorsPassedThrough) { |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, AsyncErrorsPassedThrough) { |
CreateRead(MockRead(ASYNC, ERR_INSUFFICIENT_RESOURCES)); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(ERR_INSUFFICIENT_RESOURCES, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsError(ERR_INSUFFICIENT_RESOURCES)); |
} |
// If we get a frame followed by a close, we should receive them separately. |
@@ -526,7 +542,7 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, CloseAfterFrame) { |
2, |
LAST_FRAME_NOT_BIG); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
EXPECT_EQ(1U, frames_.size()); |
frames_.clear(); |
EXPECT_EQ(ERR_CONNECTION_CLOSED, |
@@ -540,8 +556,9 @@ TEST_F(WebSocketBasicStreamSocketTest, AsyncCloseAfterIncompleteHeader) { |
MockRead(SYNCHRONOUS, "", 0)}; |
CreateReadOnly(reads); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(ERR_CONNECTION_CLOSED, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsError(ERR_CONNECTION_CLOSED)); |
} |
// When Stream::Read returns ERR_CONNECTION_CLOSED we get the same result via a |
@@ -551,15 +568,16 @@ TEST_F(WebSocketBasicStreamSocketTest, AsyncErrCloseAfterIncompleteHeader) { |
MockRead(SYNCHRONOUS, ERR_CONNECTION_CLOSED)}; |
CreateReadOnly(reads); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(ERR_CONNECTION_CLOSED, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsError(ERR_CONNECTION_CLOSED)); |
} |
// An empty first frame is not ignored. |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, EmptyFirstFrame) { |
CreateRead(MockRead(SYNCHRONOUS, kEmptyFirstFrame, kEmptyFirstFrameSize)); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(NULL, frames_[0]->data.get()); |
EXPECT_EQ(0U, frames_[0]->header.payload_length); |
@@ -573,10 +591,11 @@ TEST_F(WebSocketBasicStreamSocketTest, EmptyMiddleFrame) { |
MockRead(SYNCHRONOUS, ERR_IO_PENDING)}; |
CreateReadOnly(reads); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
EXPECT_EQ(1U, frames_.size()); |
frames_.clear(); |
- EXPECT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
} |
// An empty frame in the middle of a message that arrives separately is still |
@@ -590,11 +609,12 @@ TEST_F(WebSocketBasicStreamSocketTest, EmptyMiddleFrameAsync) { |
MockRead(ASYNC, kValidPong, kValidPongSize)}; |
CreateReadOnly(reads); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
EXPECT_EQ(1U, frames_.size()); |
frames_.clear(); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodePong, frames_[0]->header.opcode); |
} |
@@ -604,7 +624,7 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, EmptyFinalFrame) { |
CreateRead( |
MockRead(SYNCHRONOUS, kEmptyFinalTextFrame, kEmptyFinalTextFrameSize)); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(NULL, frames_[0]->data.get()); |
EXPECT_EQ(0U, frames_[0]->header.payload_length); |
@@ -620,11 +640,11 @@ TEST_F(WebSocketBasicStreamSocketTest, ThreeFrameEmptyMessage) { |
kEmptyFinalContinuationFrameSize)}; |
CreateReadOnly(reads); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodeText, frames_[0]->header.opcode); |
frames_.clear(); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_TRUE(frames_[0]->header.final); |
} |
@@ -635,7 +655,7 @@ TEST_F(WebSocketBasicStreamSocketTest, HttpReadBufferIsUsed) { |
SetHttpReadBuffer(kSampleFrame, kSampleFrameSize); |
CreateNullStream(); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
ASSERT_TRUE(frames_[0]->data.get()); |
EXPECT_EQ(UINT64_C(6), frames_[0]->header.payload_length); |
@@ -648,8 +668,9 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, |
SetHttpReadBuffer(kSampleFrame, 1); |
CreateRead(MockRead(ASYNC, kSampleFrame + 1, kSampleFrameSize - 1)); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
ASSERT_TRUE(frames_[0]->data.get()); |
EXPECT_EQ(UINT64_C(6), frames_[0]->header.payload_length); |
@@ -666,8 +687,9 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, |
kCloseFrame + kPartialFrameBytes, |
kCloseFrameSize - kPartialFrameBytes)); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodeClose, frames_[0]->header.opcode); |
EXPECT_EQ(kCloseFrameSize - 2, frames_[0]->header.payload_length); |
@@ -686,7 +708,7 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, |
kCloseFrame + kPartialFrameBytes, |
kCloseFrameSize - kPartialFrameBytes)); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodeClose, frames_[0]->header.opcode); |
} |
@@ -702,8 +724,9 @@ TEST_F(WebSocketBasicStreamSocketSingleReadTest, SyncInvalidFrame) { |
TEST_F(WebSocketBasicStreamSocketSingleReadTest, AsyncInvalidFrame) { |
CreateRead(MockRead(ASYNC, kInvalidFrame, kInvalidFrameSize)); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(ERR_WS_PROTOCOL_ERROR, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsError(ERR_WS_PROTOCOL_ERROR)); |
} |
// A control frame without a FIN flag is invalid and should not be passed |
@@ -758,8 +781,9 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, |
2, |
LAST_FRAME_BIG); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(ERR_WS_PROTOCOL_ERROR, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsError(ERR_WS_PROTOCOL_ERROR)); |
// The caller should not call ReadFrames() again after receiving an error |
// other than ERR_IO_PENDING. |
EXPECT_TRUE(frames_.empty()); |
@@ -772,7 +796,7 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, SyncControlFrameAssembly) { |
CreateChunkedRead( |
SYNCHRONOUS, kCloseFrame, kCloseFrameSize, kChunkSize, 3, LAST_FRAME_BIG); |
- EXPECT_EQ(OK, stream_->ReadFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodeClose, frames_[0]->header.opcode); |
} |
@@ -784,8 +808,9 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, AsyncControlFrameAssembly) { |
CreateChunkedRead( |
ASYNC, kCloseFrame, kCloseFrameSize, kChunkSize, 3, LAST_FRAME_BIG); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_EQ(WebSocketFrameHeader::kOpCodeClose, frames_[0]->header.opcode); |
} |
@@ -813,8 +838,9 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, OneMegFrame) { |
for (size_t frame = 0; frame < kExpectedFrameCount; ++frame) { |
frames_.clear(); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
size_t expected_payload_size = kReadBufferSize; |
if (frame == 0) { |
@@ -841,14 +867,16 @@ TEST_F(WebSocketBasicStreamSocketChunkedReadTest, ReservedFlagCleared) { |
LAST_FRAME_BIG); |
TestCompletionCallback cb[2]; |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb[0].callback())); |
- EXPECT_EQ(OK, cb[0].WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb[0].callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb[0].WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_TRUE(frames_[0]->header.reserved1); |
frames_.clear(); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->ReadFrames(&frames_, cb[1].callback())); |
- EXPECT_EQ(OK, cb[1].WaitForResult()); |
+ ASSERT_THAT(stream_->ReadFrames(&frames_, cb[1].callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb[1].WaitForResult(), IsOk()); |
ASSERT_EQ(1U, frames_.size()); |
EXPECT_FALSE(frames_[0]->header.reserved1); |
} |
@@ -858,7 +886,7 @@ TEST_F(WebSocketBasicStreamSocketWriteTest, WriteAtOnce) { |
MockWrite writes[] = {MockWrite(SYNCHRONOUS, kWriteFrame, kWriteFrameSize)}; |
CreateWriteOnly(writes); |
- EXPECT_EQ(OK, stream_->WriteFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->WriteFrames(&frames_, cb_.callback()), IsOk()); |
} |
// Check that completely async writing works. |
@@ -866,8 +894,9 @@ TEST_F(WebSocketBasicStreamSocketWriteTest, AsyncWriteAtOnce) { |
MockWrite writes[] = {MockWrite(ASYNC, kWriteFrame, kWriteFrameSize)}; |
CreateWriteOnly(writes); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->WriteFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->WriteFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
} |
// Check that writing a frame to an extremely full kernel buffer (so that it |
@@ -879,8 +908,9 @@ TEST_F(WebSocketBasicStreamSocketWriteTest, WriteInBits) { |
MockWrite(ASYNC, kWriteFrame + 8, kWriteFrameSize - 8)}; |
CreateWriteOnly(writes); |
- ASSERT_EQ(ERR_IO_PENDING, stream_->WriteFrames(&frames_, cb_.callback())); |
- EXPECT_EQ(OK, cb_.WaitForResult()); |
+ ASSERT_THAT(stream_->WriteFrames(&frames_, cb_.callback()), |
+ IsError(ERR_IO_PENDING)); |
+ EXPECT_THAT(cb_.WaitForResult(), IsOk()); |
} |
// Check that writing a Pong frame with a NULL body works. |
@@ -897,7 +927,7 @@ TEST_F(WebSocketBasicStreamSocketWriteTest, WriteNullPong) { |
header.payload_length = 0; |
std::vector<std::unique_ptr<WebSocketFrame>> frames; |
frames.push_back(std::move(frame)); |
- EXPECT_EQ(OK, stream_->WriteFrames(&frames, cb_.callback())); |
+ EXPECT_THAT(stream_->WriteFrames(&frames, cb_.callback()), IsOk()); |
} |
// Check that writing with a non-NULL mask works correctly. |
@@ -922,7 +952,7 @@ TEST_F(WebSocketBasicStreamSocketTest, WriteNonNulMask) { |
header.payload_length = payload_size; |
frames_.push_back(std::move(frame)); |
- EXPECT_EQ(OK, stream_->WriteFrames(&frames_, cb_.callback())); |
+ EXPECT_THAT(stream_->WriteFrames(&frames_, cb_.callback()), IsOk()); |
} |
TEST_F(WebSocketBasicStreamSocketTest, GetExtensionsWorks) { |