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

Commit 07f29c24 authored by Mike Yu's avatar Mike Yu
Browse files

Test: Fix a flakiness in PrivateDnsConfigurationTest

Guard all the code in onValidationStateUpdate to ensure
`mObserver.serverStateMap` is updated before the tests check the
map.

Bug: 283705283
Test: ran resolv_unit_test 1000 times on HWAsan device
Change-Id: Ia1fbca01c8d2fbde3b32272d2ed3522baf3b452a
parent eef17ad7
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -57,8 +57,8 @@ class PrivateDnsConfigurationTest : public NetNativeTestBase {
        // must wait until every validation thread finishes.
        ON_CALL(mObserver, onValidationStateUpdate)
                .WillByDefault([&](const std::string& server, Validation validation, uint32_t) {
                    if (validation == Validation::in_process) {
                    std::lock_guard guard(mObserver.lock);
                    if (validation == Validation::in_process) {
                        auto it = mObserver.serverStateMap.find(server);
                        if (it == mObserver.serverStateMap.end() ||
                            it->second != Validation::in_process) {
@@ -73,7 +73,6 @@ class PrivateDnsConfigurationTest : public NetNativeTestBase {
                               validation == Validation::fail) {
                        mObserver.runningThreads--;
                    }
                    std::lock_guard guard(mObserver.lock);
                    mObserver.serverStateMap[server] = validation;
                });