aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/cpp/end2end/end2end_test.cc
diff options
context:
space:
mode:
authorGravatar Jan Tattermusch <jtattermusch@users.noreply.github.com>2016-03-11 14:47:07 -0800
committerGravatar Jan Tattermusch <jtattermusch@users.noreply.github.com>2016-03-11 14:47:07 -0800
commit52676ba0c250f55828f9b590c0e215ec18a9344c (patch)
tree4138d2fda2bac9430632bdb53cbd02e1366291d2 /test/cpp/end2end/end2end_test.cc
parent4d52cca1ef29837c7610e31897240b6f4abd6991 (diff)
parentaad4156a0ba79d963bfa3cd37e48a1074f956809 (diff)
Merge pull request #5694 from nicolasnoble/pre-0.13.1-downmerge
Pre 0.13.1 downmerge
Diffstat (limited to 'test/cpp/end2end/end2end_test.cc')
-rw-r--r--test/cpp/end2end/end2end_test.cc15
1 files changed, 10 insertions, 5 deletions
diff --git a/test/cpp/end2end/end2end_test.cc b/test/cpp/end2end/end2end_test.cc
index ce8e4d2a10..dc2c4f6426 100644
--- a/test/cpp/end2end/end2end_test.cc
+++ b/test/cpp/end2end/end2end_test.cc
@@ -437,9 +437,10 @@ class End2endServerTryCancelTest : public End2endTest {
break;
case CANCEL_AFTER_PROCESSING:
- // Server cancelled after writing all messages. Client must have read
- // all messages
- EXPECT_EQ(num_msgs_read, kNumResponseStreamsMsgs);
+ // Even though the Server cancelled after writing all messages, the RPC
+ // may be cancelled before the Client got a chance to read all the
+ // messages.
+ EXPECT_LE(num_msgs_read, kNumResponseStreamsMsgs);
break;
default: {
@@ -519,7 +520,11 @@ class End2endServerTryCancelTest : public End2endTest {
case CANCEL_AFTER_PROCESSING:
EXPECT_EQ(num_msgs_sent, num_messages);
- EXPECT_EQ(num_msgs_read, num_msgs_sent);
+
+ // The Server cancelled after reading the last message and after writing
+ // the message to the client. However, the RPC cancellation might have
+ // taken effect before the client actually read the response.
+ EXPECT_LE(num_msgs_read, num_msgs_sent);
break;
default:
@@ -904,9 +909,9 @@ TEST_P(End2endTest, SimultaneousReadWritesDone) {
std::thread reader_thread(ReaderThreadFunc, stream.get(), &ev);
gpr_event_wait(&ev, gpr_inf_future(GPR_CLOCK_REALTIME));
stream->WritesDone();
+ reader_thread.join();
Status s = stream->Finish();
EXPECT_TRUE(s.ok());
- reader_thread.join();
}
TEST_P(End2endTest, ChannelState) {