From a3088a6ce8f3b90c4445867f9924020fb02706be Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Tue, 30 Jan 2018 23:38:26 +0100 Subject: [PATCH] fix rounding problem in EchoDeadline test --- test/cpp/end2end/end2end_test.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/test/cpp/end2end/end2end_test.cc b/test/cpp/end2end/end2end_test.cc index 2edd10898c9..578f26e9c2d 100644 --- a/test/cpp/end2end/end2end_test.cc +++ b/test/cpp/end2end/end2end_test.cc @@ -1333,8 +1333,11 @@ TEST_P(ProxyEnd2endTest, EchoDeadline) { EXPECT_TRUE(s.ok()); gpr_timespec sent_deadline; Timepoint2Timespec(deadline, &sent_deadline); - // Allow 1 second error. - EXPECT_LE(response.param().request_deadline() - sent_deadline.tv_sec, 1); + // We want to allow some reasonable error given: + // - request_deadline() only has 1sec resolution so the best we can do is +-1 + // - if sent_deadline.tv_nsec is very close to the next second's boundary we + // can end up being off by 2 in one direction. + EXPECT_LE(response.param().request_deadline() - sent_deadline.tv_sec, 2); EXPECT_GE(response.param().request_deadline() - sent_deadline.tv_sec, -1); }