|
|
|
@ -278,6 +278,7 @@ class AsyncEnd2endTest : public ::testing::TestWithParam<TestScenario> { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
void TearDown() override { |
|
|
|
|
gpr_tls_set(&g_is_async_end2end_test, 0); |
|
|
|
|
server_->Shutdown(); |
|
|
|
|
void* ignored_tag; |
|
|
|
|
bool ignored_ok; |
|
|
|
@ -285,7 +286,6 @@ class AsyncEnd2endTest : public ::testing::TestWithParam<TestScenario> { |
|
|
|
|
while (cq_->Next(&ignored_tag, &ignored_ok)) |
|
|
|
|
; |
|
|
|
|
poll_overrider_.reset(); |
|
|
|
|
gpr_tls_set(&g_is_async_end2end_test, 0); |
|
|
|
|
grpc_recycle_unused_port(port_); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -365,6 +365,7 @@ TEST_P(AsyncEnd2endTest, WaitAndShutdownTest) { |
|
|
|
|
ResetStub(); |
|
|
|
|
SendRpc(1); |
|
|
|
|
EXPECT_EQ(0, notify); |
|
|
|
|
gpr_tls_set(&g_is_async_end2end_test, 0); |
|
|
|
|
server_->Shutdown(); |
|
|
|
|
wait_thread.join(); |
|
|
|
|
EXPECT_EQ(1, notify); |
|
|
|
@ -373,8 +374,9 @@ TEST_P(AsyncEnd2endTest, WaitAndShutdownTest) { |
|
|
|
|
TEST_P(AsyncEnd2endTest, ShutdownThenWait) { |
|
|
|
|
ResetStub(); |
|
|
|
|
SendRpc(1); |
|
|
|
|
server_->Shutdown(); |
|
|
|
|
std::thread t([this]() { server_->Shutdown(); }); |
|
|
|
|
server_->Wait(); |
|
|
|
|
t.join(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// Test a simple RPC using the async version of Next
|
|
|
|
|