Commit graph android_packages_modules_Co.../tests/unit/java/com/android
Message SHA1
Add tests for testing if [start|finish]Op is called or not
Add a test for testing if [start|finish]Op will be called when
[start|stop]VpnProfile is called.
Also add a test to ensure that the startOp will not be called
again when seamless handover is happened.

Bug: 197135981
Test: atest FrameworksNetTests:VpnTest
Change-Id: I778ea4edf7c4a2d20b3b8e1877e7942feac5372a

lucaslin   commited 2021-10-26 03:46:46 +08:00
d4e7b00b2b
Merge "Add underlying networks into NetworkAgentInfo if any"
Lucas Lin   authored and   Gerrit Code Review   commited 2021-10-21 08:33:29 +00:00
9c9850b944
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

Chalard Jean   authored and   paulhu   commited 2021-10-19 16:43:50 +08:00
4b918ab1a4
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

lucaslin   commited 2021-10-19 15:04:56 +08:00
6adf5ac19b
Merge "Remove "when" usage in ConnectivityServiceTest" am: f697c61406
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1844176

Change-Id: I9197503f4f19748824ab3cc1efc8d540779399ec

Treehugger Robot   authored and   Automerger Merge Worker   commited 2021-10-04 10:00:40 +00:00
7366c89d64
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

Remi NGUYEN VAN   commited 2021-10-04 17:03:44 +09:00
d7331e929f
Merge "Modify Nsd{Service,Manager}Test to conform to its change"
Luke Huang   authored and   Gerrit Code Review   commited 2021-09-29 03:35:20 +00:00
38f82199ab
Merge "Add a mode for cell radios unable to time share" am: c80a5d56db
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1827923

Change-Id: I5ded48c8498c32977adcfe2363599d6cfa246e1b

Chalard Jean   authored and   Automerger Merge Worker   commited 2021-09-18 12:50:52 +00:00
d4ec13a400
Merge "Add a mode for cell radios unable to time share"
Chalard Jean   authored and   Gerrit Code Review   commited 2021-09-18 12:39:24 +00:00
c80a5d56db
Add a mode for cell radios unable to time share
Upon changing the default SIM card, the radio will create a
new connection to the new subscription. If that subscription
works correctly, the stack will prefer it to the old one as
the new subscription will be marked with a Primary policy
flag it its score.

Normally, at this point the old network lingers to give apps
an opportunity to gracefully migrate their connections. But
with some radios, this may have a dramatic effect on the
performance of the new connection.

This patch introduces a flag so that devices with such radios
can be marked. In this case the stack will move to a degraded
mode and eschew the grace delay for apps and give them a hard
break instead, so that the new network can reach a good
performance immediately. Apps with existing connections will
suffer a worse experience.

If there is a request that can only be served by the old
connection, still keep it, as arguably the user still
expects their MMS be sent on the old connection, even if the
new connection doesn't work well until it's done.

Test: new test in this patch, and add relevant tests in both modes
      also manually change the value of the flag and run
      FrameworksNetTests and CtsNetTestCasesLatestSdk
Bug: 200226979
Change-Id: I4ace82f90e873bf06298cc689bb1d794ed5124bd

Chalard Jean   commited 2021-09-18 04:03:13 +00:00
0702f98edc
Merge "Remove ForceAllNetworkTypes from test" am: f7762c823a
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1824632

Change-Id: Ib5ef798b75c473e4e2c62cf295b55e3669508648

Aaron Huang   authored and   Automerger Merge Worker   commited 2021-09-17 12:25:04 +00:00
fed2d0614f
Merge "Remove ForceAllNetworkTypes from test"
Aaron Huang   authored and   Gerrit Code Review   commited 2021-09-17 12:08:59 +00:00
f7762c823a
Merge "Add logging on UnfinishedStubbingException" am: f2ddb4151c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1805818

Change-Id: Id8aa8e2c460891500b2926b0585edd0bfd972fa9

Treehugger Robot   authored and   Automerger Merge Worker   commited 2021-09-13 02:46:35 +00:00
e41baf1752
Merge "Add logging on UnfinishedStubbingException"
Treehugger Robot   authored and   Gerrit Code Review   commited 2021-09-13 02:34:27 +00:00
f2ddb4151c
Modify Nsd{Service,Manager}Test to conform to its change
(clean cherry-pick from downstream branch)
Test: atest NsdManagerTest NsdServiceTest
Bug: 191844585
Merged-In: I3cf658498bef5755dcb01127a94fff913b6e6298

Change-Id: I3cf658498bef5755dcb01127a94fff913b6e6298

Luke Huang   authored and   Remi NGUYEN VAN   commited 2021-09-13 10:18:04 +09:00
df75378ad4
Remove ForceAllNetworkTypes from test
Before sForceAllNetworkTypes is removed, the network
type and meteredness will be ignored when matchesMobile
or matchesMobileWildcard is called.

After sForceAllNetworkTypes is removed, the matches
method should check the network type and the meteredness.
Thus, if the test data contains different type or it's
not metered should not be counted.

Bug: 183776809
Test: FrameworksNetTests
Change-Id: Ie7194495d26c0f5ef7a247733f43c64688626c67

Aaron Huang   commited 2021-09-11 10:45:16 +08:00
7b4a4cbdd4
Merge "Include suspended network when getAllNetworkStateSnapshots" am: 48426bb2a4
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1797867

Change-Id: I700e16334e0f8aeea862555e8ecf784cf36fd315

Junyu Lai   authored and   Automerger Merge Worker   commited 2021-09-09 09:40:15 +00:00
6f988d4042
Merge "Include suspended network when getAllNetworkStateSnapshots"
Junyu Lai   authored and   Gerrit Code Review   commited 2021-09-09 09:24:04 +00:00
48426bb2a4
Include suspended network when getAllNetworkStateSnapshots
Suspended network should be considered as temporary shortage of
connectivity of a connected network. Thus, it should not be
excluded from network state snapshots and causes data usage to
stop accounting or iptables rules to be removed on the interface
of the suspended network.

This change also address the naming confusion of default networks
parameter of expectNotifyNetworkStatus.

Test: atest ConnectivityServiceTest#testGetAllNetworkStateSnapshots
Bug: 196079981
Change-Id: I8096356f9a472fb1c1246fbdf3fd5f981387fb1c

Junyu Lai   commited 2021-09-08 06:02:28 +00:00
ddecb66246
Merge changes Id2ffb056,I2a4e298b am: 420fa2baef
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1772667

Change-Id: I84acbefcaf5cb95cc208d27caf8a89c0717db94e

Paul Hu   authored and   Automerger Merge Worker   commited 2021-09-07 06:13:41 +00:00
9477c7b5ca
Merge changes Id2ffb056,I2a4e298b
* changes:
  Adjust some behaviors on PermissionMonitorTest
  Use common code

Paul Hu   authored and   Gerrit Code Review   commited 2021-09-07 06:01:54 +00:00
420fa2baef
Merge "Remove a forgotten log" am: 3d872e662e
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1803417

Change-Id: I5714b36c6f0f71887848aa8aa41697fca6c409aa

Chalard Jean   authored and   Automerger Merge Worker   commited 2021-09-07 04:51:49 +00:00
3fe1865b96
Merge "Remove a forgotten log"
Chalard Jean   authored and   Gerrit Code Review   commited 2021-09-07 04:37:23 +00:00
3d872e662e
Adjust some behaviors on PermissionMonitorTest
- This is a test only change.
- Remove calling startMonitoring() in setup() because this method
  should be called only once, so each test needs to call
  startMonitoring() if the testing function is running on it.
- Return empty list instead of null when getting installed
  pacakges in setup(). This can help test to have default user
  MOCK_USER1 when they call startMonitoring().

Bug: 192431153
Test: atests FrameworksNetTests
Change-Id: Id2ffb056b378873c3ba6a8bb31b7dedb56ad6d46

paulhu   commited 2021-09-07 09:46:23 +08:00
941fa70744
Merge "Correct uid to app id for netd traffic permission methods" am: 9fe8c8fc76
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1767733

Change-Id: I11d1e21c7510c5f2d07198d8930134c6a9976708

Paul Hu   authored and   Automerger Merge Worker   commited 2021-09-07 01:26:18 +00:00
2fe543353b
Use common code
- Some code are used many times, it's better to make them as
  common code for reducing inconsist behavior.
- Also stop using Boolean to represent network permissions and
  replace them with int value. Because using Boolean for
  permission comparison is really complicated and bizarre.
- Use PERMISSION_* for netd network permission directly.

Bug: 189705071
Test: atests FrameworksNetTests
Change-Id: I2a4e298b9a01f4b2874ae68e9d9539a0ab4aff4c

paulhu   commited 2021-09-07 09:25:31 +08:00
b7dd7a3f4b
Merge "Correct uid to app id for netd traffic permission methods"
Paul Hu   authored and   Gerrit Code Review   commited 2021-09-07 01:13:56 +00:00
9fe8c8fc76
Merge "Reduce duplicated code" am: 1d04d8362f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1767727

Change-Id: I7612eb48c780c94b47f4741eb85b91b3cdf0a44f

Paul Hu   authored and   Automerger Merge Worker   commited 2021-09-06 16:33:38 +00:00
f74a08823e
Merge "Reduce duplicated code"
Paul Hu   authored and   Gerrit Code Review   commited 2021-09-06 16:17:45 +00:00
1d04d8362f
Add logging on UnfinishedStubbingException
The test flakes with UnfinishedStubbingException, but the root cause
could not be identified. Add some logging to try to get more information
when that happens.

Bug: 195626111
Test: atest ConnectivityServiceTest

Change-Id: If12c1ea809789148ca9251386e5ee6ca6d74ff74

Remi NGUYEN VAN   commited 2021-09-06 15:13:09 +09:00
f68905683f
Correct uid to app id for netd traffic permission methods
Some uids should be app ids, correct them for avoiding confusion
and incorrect use.

Bug: 189705071
Test: atests FrameworksNetTests
Change-Id: I4a5930e5dc63b4d901e1567f8935ad7203866c89

paulhu   commited 2021-09-06 00:12:23 +08:00
1d4ec79020
Reduce duplicated code
- This is a test only change.
- Some methods are very similar and duplicated. So merge them to
  improve readability and reduce code complexity.
- Stop spying PermissionMonitor.

Bug: 189705071
Test: atests FrameworksNetTests
Change-Id: I8ec17bd2d396c4d49dd8b64be85d89d0145f4c3c

paulhu   commited 2021-09-03 15:58:15 +08:00
7a29739f2f
Remove a forgotten log
Test: ConnectivityServiceTest
Change-Id: Idc3b91422263bf5d062ee1682f41fc28616376b6

Chalard Jean   commited 2021-08-25 13:19:04 +09:00
1347844336
Merge "Fix an infinite loop with network offers" am: 77992bbfbb
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1800007

Change-Id: I1fe463232308fbc73753dc8d19f269142f6f8776

Chalard Jean   authored and   Automerger Merge Worker   commited 2021-08-20 06:39:30 +00:00
72ed43d6dc
Fix an infinite loop with network offers
When the avoidBadWifi configuration is false and not overridden,
a WiFi network that was validated in the past but becomes
unvalidated needs to outscore a cell network that is validated.
This is happening correctly when the stack compares two networks.
However, when the stack compares an existing network to an offer
for a cellular network, the offer was automatically considered
not to yield. This would mean the stack would be requesting cell
out of the telephony factory, only for that network to lose to
WiFi and be discarded immediately, then recreated again etc.

When there is some other reason cell should be up (such as the
"mobile always on" setting being active), this would not be
visible because the cell network would have another reason not
to be torn down.

Have offers correctly account for the current value of the
configuration and setting. This has the ranking of the offer
lose against WiFi like the actual network loses, meaning the
offer is not needed.

This also requires updating the offers whenever the value of
the setting changes.

Test: new test for this, also ConnectivityServiceTest
Bug: 195441367
Change-Id: I4fe5de98bc15bcf9bbbe25c6c7c8a7ba382f8db7

Chalard Jean   commited 2021-08-19 22:53:41 +09:00
bb902a5fee
Merge "Merge sc-dev-plus-aosp-without-vendor@7634622" into stage-aosp-master
Xin Li   authored and   Android (Google) Code Review   commited 2021-08-17 18:15:09 +00:00
e534ce4c55
Merge "Add a unit test for a bug in registerDefaultNetworkCallback."
Treehugger Robot   authored and   Gerrit Code Review   commited 2021-08-17 01:32:39 +00:00
b8178678df
Add a unit test for a bug in registerDefaultNetworkCallback.
Currently, when a VPN app calls registerDefaultNetworkCallback,
it will always get its own VPN, even if the VPN app called
VpnService.Builder#addDisallowedApplication to take itself out
of the VPN's UID ranges.

Add a test for the current incorrect behaviour.

Also fix an indentation error elsewhere.

Bug: 195265065
Test: test-only change
Change-Id: Id9648ea71fc7ae10855aa311beeb7975569d17f2

Lorenzo Colitti   commited 2021-08-17 01:36:54 +09:00
bbadec37d2
Merge "Fix a flake in ConnectivityDiagnostics"
Treehugger Robot   authored and   Gerrit Code Review   commited 2021-08-16 09:01:58 +00:00
1ac3e27399
Fix a flake in ConnectivityDiagnostics
Bug: none
Test: ConnectivityServiceTest
Change-Id: I9242226be976e7c346addcbaf7e2b0154a3829f7

Chalard Jean   commited 2021-08-16 16:05:06 +09:00
4da146bd2f
Merge sc-dev-plus-aosp-without-vendor@7634622
Merged-In: I5a33f959c8ae5a34584f57508f392038e44062e7
Change-Id: Ib4e5e75ee8bbe19806bdc2f69590d164fb75774b

Xin Li   commited 2021-08-14 06:31:05 +00:00
3ec4468fb7
Merge "Prevent NPEs when registering/unregistering ConnDiags CBs."
Benedict Wong   authored and   Gerrit Code Review   commited 2021-08-12 20:35:39 +00:00
5805d3cfd2
Remove the @Ignore annotation on testAvoidBadWifi am: 73745baa38 am: 3bac051c7a
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1773885

Change-Id: Ibec81bed964cab7f9bc18cf7cabf0b52d0eeb824

Chiachang Wang   authored and   Automerger Merge Worker   commited 2021-08-10 05:41:23 +00:00
8787b2ab68
Remove the @Ignore annotation on testAvoidBadWifi
testAvoidBadWifi could pass without issue. The refactor should
also be done. The test does not need to be ignored now. Remove
the annotation to bring the test coverage back.

Bug: 178071397
Test: atest ConnectivityServiceTest
Change-Id: I5652fa817f16b8c241f1e2066a0b04ad2156a3b7

Chiachang Wang   commited 2021-08-10 05:17:29 +00:00
73745baa38
Merge "Add test for [stop|start]VpnProfile()" into sc-dev am: 2900ffbb5f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15359731

Change-Id: Ieb3774e45cacb9c9e2e3ebea1ba55c757d2679e8

Lucas Lin   authored and   Automerger Merge Worker   commited 2021-08-10 02:38:50 +00:00
9e2ffd6a23
Merge "Add test for [stop|start]VpnProfile()" into sc-dev
Lucas Lin   authored and   Android (Google) Code Review   commited 2021-08-10 02:28:24 +00:00
2900ffbb5f
Merge "Use dns resolver v9 in connectivity and set resolverOptions to null." into sc-dev
TreeHugger Robot   authored and   Android (Google) Code Review   commited 2021-08-06 18:35:45 +00:00
4e257a92ca
Merge "Use dns resolver v9 in connectivity and set resolverOptions to null." am: d4c0d59179 am: 29b6cb0288
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1789012

Change-Id: I601a0046b5ae33cee9d267c7a4bdc1ead949ae22

Luke Huang   authored and   Automerger Merge Worker   commited 2021-08-06 17:46:22 +00:00
2bb20e6637
Merge "Use dns resolver v9 in connectivity and set resolverOptions to null."
Luke Huang   authored and   Gerrit Code Review   commited 2021-08-06 17:10:36 +00:00
d4c0d59179
Use dns resolver v9 in connectivity and set resolverOptions to null.
The resolverOptions member of the ResolverParamsParcel has never
been set by AOSP code but was only used by OEMs modifying
DnsManager. Now that DnsManager is mainline code, this is no
longer possible. So the DNS resolver introduces a new
setResolverOptions IPC to allow OEMs to set the options and makes
the resolverOptions nullable.

Make DnsManager set resolverOptions to null, to ensure that when
DnsManager calls setResolverConfiguration, it does not overwrite
any options set by the OEM.

Bug: 194048056
Test: Device boots and has connectivity
Change-Id: I310a79521f5a365e50e2c65e9dd87d9b68f105d7
Merged-In: I310a79521f5a365e50e2c65e9dd87d9b68f105d7

Remi NGUYEN VAN   authored and   Lorenzo Colitti   commited 2021-08-06 22:21:51 +09:00
0ccf3fb461