Commit Graph

43063 Commits

Author SHA1 Message Date
Lucas Lin
acd3e2be33 Merge "Wait for network to be validated when setting a valid private DNS" 2021-10-21 11:34:35 +00:00
lucaslin
4d441a9b8d Wait for network to be validated when setting a valid private DNS
The previous design just set a valid private DNS and checked
whether onCapabilitiesChanged() has received and
NetworkCapabilities#isPrivateDnsBroken is false. It cannot ensure
that the private DNS is working until the network is validated.
So change the design to waiting the network to be validated after
setting a valid private DNS.

Bug: 196769780
Test: atest CtsNetTestCases:ConnectivityManagerTest
Change-Id: I9c173a70e2b81788efa2ecbf928acda0379846da
2021-10-21 16:47:26 +08:00
Lucas Lin
9c9850b944 Merge "Add underlying networks into NetworkAgentInfo if any" 2021-10-21 08:33:29 +00:00
Treehugger Robot
5dc1edd9a8 Merge "Dependency update for StateMachine" 2021-10-20 13:43:58 +00:00
Chalard Jean
7949b8c557 Merge "Cleanup shims usage in Tethering" 2021-10-20 13:06:24 +00:00
Chalard Jean
732ebcbc7f Cleanup shims usage in Tethering
Now that S has gone to AOSP, this dependency is no longer
needed. It is, on the contrary, harmful as it prevents us
from adding shims that depend on T APIs in AOSP.

Test: builds
Change-Id: I64f0f394e826e58a9b7e772043bb6008428892e6
2021-10-20 19:44:09 +09:00
Treehugger Robot
f8d1f3d1cd Merge "Unregister the tethering internal callback in finalize" 2021-10-20 08:40:08 +00:00
Treehugger Robot
9d0c5419c9 Merge "Test TetheringManager could be GC after getting connector" 2021-10-20 07:48:10 +00:00
markchien
819e19ea2a Unregister the tethering internal callback in finalize
Bug: 177265744
Bug: 191798390
Bug: 187972579
Test: atest TetheringServiceTest
Change-Id: Ie7f9535b923db5073a59329ead22546a54e6ef47
2021-10-20 06:57:58 +00:00
Paul Hu
7a30d04659 Merge "Crash bad callers earlier" 2021-10-20 06:53:39 +00:00
markchien
e7b4a505aa Test TetheringManager could be GC after getting connector
There is pollingConnector thread which start polling connector if
TetheringManager is created earlier than TetheringService started(during
device boot up). TetheringManager won't be GCed if pollingConnector
thread do not finish its task yet.

Bug: 177265744
Bug: 191798390
Bug: 187972579
Test: atest TetheringServiceTest
Change-Id: Id8c7d10c5172e1d5de460c5311ff9c20261facef
2021-10-20 06:06:04 +00:00
Paul Hu
c4898b85ce Merge "Specify which callback is unexpected in testMobileDataPreferredUids" 2021-10-20 05:39:19 +00:00
Treehugger Robot
d7d41a73e7 Merge "Fix TetheringManager memory leak" 2021-10-20 03:59:59 +00:00
Treehugger Robot
9755b43575 Merge "Exclude testGetMultipathPreference on no Wi-Fi devices" 2021-10-20 02:10:47 +00:00
paulhu
c344c9fb9c Specify which callback is unexpected in testMobileDataPreferredUids
This test is flaky due to assertNoCallback(). Because this
method expects no any callback received but the wifi network
may update its capabilities during testing and trigger
onCapabilitiesChanged() to cause test failed. Thus, these
callbacks should be ignored in the tests.

Replace the assertNoCallback to assertNoCallbackThat with
callback type specified to deflake tests.

Also align the available callback verification in the test to
avoid confusion.

Fix: 198367703
Test: atest android.net.cts.ConnectivityManagerTest\
      --iterations 20
Change-Id: Ifde5e9730823c3b6f32590cc436cc4ba11d2b36e
2021-10-19 18:27:19 +08:00
Chalard Jean
4b918ab1a4 Crash bad callers earlier
Instead of crashing when parceling the NetworkInfo object,
crash at the time the bad call is made.

Bug: 145972387
Test: FrameworksNetTests
Change-Id: If8b5fd3d7b800c97211bcd16c9a8c5812708d4ab
2021-10-19 16:43:50 +08:00
lucaslin
6adf5ac19b Add underlying networks into NetworkAgentInfo if any
Now, VPN will set underlying networks into NetworkCapabilities
directly. So the declaredUnderlyingNetworks can also be set
directly when creating a NetworkAgentInfo.

Bug: 191918368
Test: atest FrameworksNetTests:ConnectivityServiceTest
Change-Id: I507072d00ae1eb0c391e5261ab93e359b9c4cb5c
2021-10-19 15:04:56 +08:00
Lucas Lin
39379a40bd Merge "Add new APIs in NetworkCapabilities to set and get underlying networks" 2021-10-18 05:27:59 +00:00
lucaslin
8b2dfa7c02 Add new APIs in NetworkCapabilities to set and get underlying networks
Previously, the caller can only know about the transport type of
the underlying network. The information might not be enough if
the device support WiFi STA+STA.
Thus, provide an API for the caller to get the correct underlying
network.

Bug: 191918368
Test: atest FrameworksNetTests:NetworkCapabilitiesTest
Change-Id: I7752b2356770f4572f6ca4cbaecaa45c09d6d72f
2021-10-15 18:07:12 +08:00
Treehugger Robot
29f0350da3 Merge "Update Permission only if the network is created" 2021-10-14 06:13:54 +00:00
markchien
1110b725a0 Fix TetheringManager memory leak
TetheringCallbackInteranl is inner class which explicitly reference
TetheringManager object. This causes TetheringManager can't be GC. Using
static nested class which has its own lifecycle and weak reference
TetheringManager object.

Still have a leak inside Tethering that TetheringCallbackInternal is
never unregistered. Currently it rely on binder died to remove the
reference, which usually happen in kill process. If process keep alive,
the TetheringCallbackInternal would not be freed even TetheringManager is
gone. Will have follow CL to fix this.

Bug: 177265744
Bug: 191798390
Bug: 187972579
Test: 1. lunch Settings with ON/OFF tethering, dump java heap.
      2. close Settings and restart Settings again, dump java heap.
      3. Compare java heap between step 1 and step 2.
Change-Id: I0e2a21b7988115098a033a581cd98da8bffe2791
2021-10-14 14:02:11 +08:00
Treehugger Robot
6b6d2eb75b Merge "Ignore testRestrictedNetworkPermission on Q" 2021-10-13 07:01:33 +00:00
Chiachang Wang
1c3cdce86d Exclude testGetMultipathPreference on no Wi-Fi devices
Bug: 202228414
Test: atest CtsNetTestCases
Change-Id: I3112ffb816fd16b2fc7a87c35d8f95eef0144281
2021-10-07 13:19:32 +08:00
Xin Li
301d6bdfa6 Merge Android 12
Bug: 202323961
Merged-In: I3ae21d9b034e455ba48d9576712a102ccda0f647
Change-Id: I0b895d155dfb440a3788cc950a8c76fe8b505dd0
2021-10-06 22:54:04 +00:00
Treehugger Robot
6e1c375f50 Merge "Support wifi and ethernet connection for DnsResolverTest." am: f822038c1c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1833253

Change-Id: I3ae21d9b034e455ba48d9576712a102ccda0f647
2021-10-06 08:52:12 +00:00
Treehugger Robot
f822038c1c Merge "Support wifi and ethernet connection for DnsResolverTest." 2021-10-06 08:34:52 +00:00
Chalard Jean
7f40360e32 Merge "Add a small usage comment" am: a898f0a039
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1844182

Change-Id: Ibe27d64cd16a2ef44d6a41b94f81a0daa06c523b
2021-10-05 11:14:01 +00:00
Chalard Jean
a898f0a039 Merge "Add a small usage comment" 2021-10-05 10:57:59 +00:00
steven_fann
fa8dbc5da7 Support wifi and ethernet connection for DnsResolverTest.
Issue: 199675828
Test: atest CtsNetTestCases:android.net.cts.DnsResolverTest

Change-Id: Ie1c7522426314ccc83008b75f90a57f3a53339d4
2021-10-05 15:36:35 +08:00
Paul Hu
fe5e2742b6 Merge "Stop using PerUidCounter#transact" am: a7db5ddda5
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1821293

Change-Id: Icd1072ef5b8281fa54f71796e7eaa981b0fd943b
2021-10-04 13:58:26 +00:00
Paul Hu
a7db5ddda5 Merge "Stop using PerUidCounter#transact" 2021-10-04 13:48:07 +00:00
Treehugger Robot
b370da94ec Merge "Increase timeouts for loopers" am: 2ed9b3dc70
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1844177

Change-Id: I8062108d1faf53bf9efbfb947f3238f02b7cf34f
2021-10-04 10:58:27 +00:00
Treehugger Robot
2ed9b3dc70 Merge "Increase timeouts for loopers" 2021-10-04 10:42:59 +00:00
Treehugger Robot
1f3515bb48 Merge "Add Override anntation for TetheringConnector.setPreferTestNetworks" am: 1503bdc297
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1844178

Change-Id: Ie1f715a7b3ac4d46a25c58e799fb133dfdc55951
2021-10-04 10:00:56 +00:00
Treehugger Robot
7366c89d64 Merge "Remove "when" usage in ConnectivityServiceTest" am: f697c61406
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1844176

Change-Id: I9197503f4f19748824ab3cc1efc8d540779399ec
2021-10-04 10:00:40 +00:00
Treehugger Robot
1503bdc297 Merge "Add Override anntation for TetheringConnector.setPreferTestNetworks" 2021-10-04 09:50:19 +00:00
Treehugger Robot
f697c61406 Merge "Remove "when" usage in ConnectivityServiceTest" 2021-10-04 09:42:47 +00:00
Chalard Jean
025f40bc4f Add a small usage comment
Test: comment-only change
Bug: 201972281
Change-Id: Ifbdadbaacfaf364f6770e56ccb816eb3269003d5
2021-10-04 18:33:36 +09:00
Chalard Jean
1afb2e33e2 Increase timeouts for loopers
In coverage tests this seems to randomly fail, which suggests
some delay. Have a constant for timeout and increase its value
significantly where it makes no functional difference.

Test: FrameworksNetTests
Change-Id: I035d865f01688daf3bce30c5130ce550fa84b885
2021-10-04 18:02:17 +09:00
markchien
d3e0f2e896 Add Override anntation for TetheringConnector.setPreferTestNetworks
Test: TH
Change-Id: Idfaca3cb59580ffe4ee194466ad2ba8f47d8fac4
2021-10-04 16:14:08 +08:00
Aaron Huang
045f47bc31 Merge "Enable/disable FrameworksNetTests" am: d1ed1cb8b7
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1843117

Change-Id: Ida093c6792bed45d5f65e3ea0e567eb30de74807
2021-10-04 08:07:21 +00:00
Remi NGUYEN VAN
d7331e929f Remove "when" usage in ConnectivityServiceTest
"when" is not thread-safe, as it relies on global state to find which
mock was called with the method to mock in its parameters.

This causes flakes where non-test code that interacts with the mock may
be called from another thread between the contents of "when" and the
"when" method another thread, causing UnfinishedStubbingExceptions or
other test errors. In particular
ConnectivityService#getNetworkCapabilitiesInternal was seen to be
wrongly identified as a mocking site for Dependencies.

Replace all usages with doReturn().when(mock).method() syntax, which has
better thread safety since global state is not necessary to tie the
mock, mocked method and return value.

Bug: 195626111
Test: atest ConnectivityServiceTest
Change-Id: I57c5ffb3b3f799fc59c3af4ccb323fb5d6794fad
2021-10-04 17:03:44 +09:00
Aaron Huang
d1ed1cb8b7 Merge "Enable/disable FrameworksNetTests" 2021-10-04 07:53:09 +00:00
Treehugger Robot
3a44ebe9a1 Merge "Updating formatting and text for per-app dumpsys" am: 7ece4bb71e
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1723618

Change-Id: Id13fe82d772d51b935a86076b1b660f57b4f5032
2021-10-03 06:11:23 +00:00
Treehugger Robot
7ece4bb71e Merge "Updating formatting and text for per-app dumpsys" 2021-10-03 05:53:26 +00:00
William Escande
ea9e22e10b Dependency update for StateMachine
StateMachine was in a custom filegroup in base.
It's now built in stand-alone library in modules-utils.

Bug: 198418216
Tag: #refactor
Test: Build
Merged-In: I7499fad6c4c5076e2bd98f0d9f91c5f243fb1ed2
Change-Id: I7499fad6c4c5076e2bd98f0d9f91c5f243fb1ed2
2021-10-01 17:06:42 +02:00
Aaron Huang
1ed8affa72 Enable/disable FrameworksNetTests
Currently, there are some test for classes that are not in
connectivity module. If the platform code has a new change
that the test depends on it, then the test cannot verify the
behavior since the change does not exist in module branch.

This change moves the test for non-module classes out of
FrameworksNetTestsLib so that it doesn't go into coverage tests.
Then add those tests to FrameworksNetTests and use a variable
to enable/disable FrameworksNetTests which could minimize merge
conflicts.

Bug: 201265286
Test: make FrameworksNetTests

Change-Id: Ia9669da2c4d79054710e7f4173bc960e3f77f45a
2021-10-01 19:29:50 +08:00
Mark Chien
77c2e2ecb5 [automerger skipped] Merge "Use SettingsShim to hide different implementation in shim" am: 05fd386de8 -s ours
am skip reason: Merged-In I3e7f6525e9776992bd96b17c132b749b12285bbd with SHA-1 dfa5697a70 is already in history

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1700809

Change-Id: Iee833c651c7c8e77d9b828eb8d0ead9a57ce513d
2021-10-01 01:48:40 +00:00
paulhu
3c811e1e55 Add comment for not listening EXTERNAL_APPLICATIONS_UNAVAILABLE am: e7e02d7880
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1826071

Change-Id: Ib46d16e9d96ff331a486ec4151aa498236f29d8f
2021-10-01 01:48:36 +00:00
Mark Chien
05fd386de8 Merge "Use SettingsShim to hide different implementation in shim" 2021-10-01 01:47:00 +00:00