From 5b2c12e0c202ed2e1fbf3bd19931e84740772d8e Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Mon, 13 Nov 2017 18:12:11 +0100 Subject: make stats_test skip values far from boundaries --- test/core/debug/stats_test.cc | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'test/core/debug/stats_test.cc') diff --git a/test/core/debug/stats_test.cc b/test/core/debug/stats_test.cc index c4b0d502e3..5fae61f8f6 100644 --- a/test/core/debug/stats_test.cc +++ b/test/core/debug/stats_test.cc @@ -109,11 +109,12 @@ TEST_P(HistogramTest, IncHistogram) { } }; std::vector test_values; - for (int j = -1000; - j < grpc_stats_histo_bucket_boundaries - [kHistogram][grpc_stats_histo_buckets[kHistogram] - 1] + - 1000; - j++) { + // largest bucket boundary for current histogram type. + int max_bucket_boundary = + grpc_stats_histo_bucket_boundaries[kHistogram] + [grpc_stats_histo_buckets[kHistogram] - + 1]; + for (int j = -1000; j < max_bucket_boundary + 1000;) { int expected_bucket = FindExpectedBucket(kHistogram, j); if (cur_bucket != expected_bucket) { threads.emplace_back( @@ -122,6 +123,14 @@ TEST_P(HistogramTest, IncHistogram) { test_values.clear(); } test_values.push_back(j); + if (j < max_bucket_boundary && + FindExpectedBucket(kHistogram, j + 1000) == expected_bucket && + FindExpectedBucket(kHistogram, j - 1000) == expected_bucket) { + // if we are far from bucket boundary, skip values to speed-up the tests + j += 500; + } else { + j++; + } } run(test_values, cur_bucket); for (auto& t : threads) { -- cgit v1.2.3