Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0f20cddf authored by Mike Yu's avatar Mike Yu
Browse files

Fix flaky test ResolverTest.BrokenEdns

The test becomes flaky because of aosp/973195. The testing TLS
server have to stop in both OFF and OPPORTUNISTIC_UDP cases, or
there would be a timing issue in cuttlefish.

The test time is influenced accordingly, and now it takes about 3300ms.

Bug: 134372242
Test: ran 1000 times in cuttlefish
      resolv_integration_test --gtest_repeat=1000 --gtest_filter="ResolverTest.BrokenEdns"
Change-Id: I385149a5a0c372664244746db17f5e38b49c5699
parent 42540f4b
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -2182,7 +2182,6 @@ TEST_F(ResolverTest, BrokenEdns) {
    ASSERT_TRUE(dns.startServer());

    test::DnsTlsFrontend tls(CLEARTEXT_ADDR, TLS_PORT, CLEARTEXT_ADDR, CLEARTEXT_PORT);
    ASSERT_TRUE(tls.startServer());

    static const struct TestConfig {
        std::string mode;
@@ -2249,16 +2248,28 @@ TEST_F(ResolverTest, BrokenEdns) {
        dns.setEdns(config.edns);

        if (config.mode == OFF) {
            if (tls.running()) {
                ASSERT_TRUE(tls.stopServer());
            }
            ASSERT_TRUE(mDnsClient.SetResolversForNetwork(servers));
        } else if (config.mode == OPPORTUNISTIC_UDP) {
            if (tls.running()) {
                ASSERT_TRUE(tls.stopServer());
            }
            ASSERT_TRUE(mDnsClient.SetResolversWithTls(servers, kDefaultSearchDomains,
                                                       kDefaultParams, "", {}));
        } else if (config.mode == OPPORTUNISTIC_TLS) {
            if (!tls.running()) {
                ASSERT_TRUE(tls.startServer());
            }
            ASSERT_TRUE(mDnsClient.SetResolversWithTls(servers, kDefaultSearchDomains,
                                                       kDefaultParams, "", {}));
            // Wait for validation to complete.
            EXPECT_TRUE(tls.waitForQueries(1, 5000));
        } else if (config.mode == STRICT) {
            if (!tls.running()) {
                ASSERT_TRUE(tls.startServer());
            }
            ASSERT_TRUE(mDnsClient.SetResolversWithTls(servers, kDefaultSearchDomains,
                                                       kDefaultParams, "",
                                                       {base64Encode(tls.fingerprint())}));