OSDN Git Service

DO NOT MERGE Fix getaddrinfo test to use random mapping ids
authorRobin Lee <rgl@google.com>
Thu, 15 Sep 2016 01:55:25 +0000 (10:55 +0900)
committerMichal Karpinski <mkarpinski@google.com>
Fri, 2 Dec 2016 13:40:07 +0000 (13:40 +0000)
This seems to have been intended but it's just using the loop index. In
fact the only thing the random index is used for is an assert to check
that it is a valid index.

Also stops the test segfaulting if num_queries > num_hosts

(cherry picked from commit c4aba0ab2e9539a5e185e3800d47b3fcda9af779)

Change-Id: Iae2369676c08fa8f8110c3cdebb0e4294a60b4b2

tests/netd_test.cpp

index 45ed211..1096fc7 100644 (file)
@@ -380,8 +380,7 @@ protected:
            thread = std::thread([this, &servers, &dns, &mappings, num_queries]() {
                 for (unsigned i = 0 ; i < num_queries ; ++i) {
                     uint32_t ofs = arc4random_uniform(mappings.size());
-                    ASSERT_TRUE(ofs < mappings.size());
-                    auto& mapping = mappings[i];
+                    auto& mapping = mappings[ofs];
                     addrinfo* result = nullptr;
                     int rv = getaddrinfo(mapping.host.c_str(), nullptr, nullptr, &result);
                     EXPECT_EQ(0, rv) << "error [" << rv << "] " << gai_strerror(rv);