diff options
| author | George Zacharia <george.zcharia@gmail.com> | 2024-07-04 12:11:39 +0530 |
|---|---|---|
| committer | George Zacharia <george.zcharia@gmail.com> | 2024-07-04 12:11:39 +0530 |
| commit | 5d39b58c917af54cc5364cb54a91a2fbb35c0684 (patch) | |
| tree | 785644acbdb68cb56f5935928fd3ccd8cc5602cc /tests/resolv_private_dns_test.cpp | |
| parent | 31fe821335034ba4fb29953fe77395c804e51a33 (diff) | |
| parent | fe72ac15ad7f0428e662415458cc51e03746e33e (diff) | |
Merge tag 'android-14.0.0_r50' of https://android.googlesource.com/platform/packages/modules/DnsResolver into u14.0HEADu14.0
Android 14.0.0 Release 50 (AP2A.240605.024)
Diffstat (limited to 'tests/resolv_private_dns_test.cpp')
| -rw-r--r-- | tests/resolv_private_dns_test.cpp | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/tests/resolv_private_dns_test.cpp b/tests/resolv_private_dns_test.cpp index c9b8f46c..1f5a2328 100644 --- a/tests/resolv_private_dns_test.cpp +++ b/tests/resolv_private_dns_test.cpp @@ -541,6 +541,13 @@ TEST_P(TransportParameterizedTest, BlockDnsQuery) { dot_backend.addMapping(r.host_name, r.type, r.addr); doh_backend.addMapping(r.host_name, r.type, r.addr); + // TODO: Remove the flags and fix the test. + // These two flags are not necessary for this test case because the test does not expect DNS + // queries to be sent by DNS resolver. However, We should still set these two flags so that we + // don't forget to set them when writing similar tests in the future by referring to this one. + ScopedSystemProperties sp1(kDotAsyncHandshakeFlag, "0"); + ScopedSystemProperties sp2(kDotMaxretriesFlag, "3"); + auto parcel = DnsResponderClient::GetDefaultResolverParamsParcel(); ASSERT_TRUE(mDnsClient.SetResolversFromParcel(parcel)); @@ -575,14 +582,14 @@ TEST_P(TransportParameterizedTest, BlockDnsQuery) { // DataSaver information is only meaningful after V. // TODO: Add 'else' to check that DNS queries are not blocked before V. if (android::modules::sdklevel::IsAtLeastV()) { - expectQueriesAreBlocked(); + EXPECT_NO_FAILURE(expectQueriesAreBlocked()); } } else { // Block network access by setting UID firewall rules. ScopeBlockedUIDRule scopeBlockUidRule(mDnsClient.netdService(), TEST_UID); - expectQueriesAreBlocked(); + EXPECT_NO_FAILURE(expectQueriesAreBlocked()); } - expectQueries(0 /* dns */, 0 /* dot */, 0 /* doh */); + EXPECT_NO_FAILURE(expectQueries(0 /* dns */, 0 /* dot */, 0 /* doh */)); } } @@ -601,6 +608,13 @@ TEST_P(TransportParameterizedTest, BlockDnsQuery_FlaggedOff) { doh_backend.addMapping(r.host_name, r.type, r.addr); ScopedSystemProperties sp1(kFailFastOnUidNetworkBlockingFlag, "0"); + // TODO: Remove the flags and fix the test. + // Context: Fake DoT server closes SSL connection after replying to each query. But a single DNS + // API can send two queries for A and AAAA. One of them will failed in MTS because the current + // setting pushed by server is no retry. + ScopedSystemProperties sp2(kDotAsyncHandshakeFlag, "0"); + ScopedSystemProperties sp3(kDotMaxretriesFlag, "3"); + resetNetwork(); auto parcel = DnsResponderClient::GetDefaultResolverParamsParcel(); @@ -642,11 +656,12 @@ TEST_P(TransportParameterizedTest, BlockDnsQuery_FlaggedOff) { if (testParamHasDoh()) { EXPECT_NO_FAILURE(expectQueries(0 /* dns */, 0 /* dot */, 2 /* doh */)); - dot.clearQueries(); + doh.clearQueries(); } else { EXPECT_NO_FAILURE(expectQueries(0 /* dns */, 2 /* dot */, 0 /* doh */)); - doh.clearQueries(); + dot.clearQueries(); } + flushCache(); } } |
