Commit graph android_packages_modules_Co.../tests/unit/java/com/android
Message SHA1
Replace MdnsPointerRecord contructor usage for queries
This is a test only change, replacing the MdnsPointerRecord
constructor usage for queries with the new version.

Bug: 312657709
Test: atest FrameworksNetTests
Change-Id: Ie9e51df78bfc27090503b861c5ac979201f10608

Paul Hu   commited 2023-12-07 08:38:48 +00:00
516e27f9c3
Merge "Remove unused Vpn Dependency methods in VpnTest." into main
Hansen Kurli   authored and   Gerrit Code Review   commited 2023-12-04 05:23:06 +00:00
997bb6c79e
Merge "Add support to update the registered service in place" into main
Yuyang Huang   authored and   Gerrit Code Review   commited 2023-12-02 08:49:23 +00:00
283ff70585
Add support to update the registered service in place
The current implementation of MdnsAdvertiser doesn't support updating an
existing registration. For an update request, the client needs to
unregister it first, which will trigger an exit message and then
register again, which will trigger an announcement message. There are
some clients that don't want to trigger the exit and announcement
message every time. This CL adds the API to support that use case.

Bug: 309372239
Test: TH
Change-Id: Iabe69a987a11104090082e01969e7595f05504e8

Yuyang Huang   commited 2023-12-01 18:15:58 +09:00
e5cba9cb87
Merge "Update registerOffloadEngine() permission check" into main
Yuyang Huang   authored and   Gerrit Code Review   commited 2023-11-30 05:57:02 +00:00
4c969a65ae
Merge "Log bpf rc file if it differs from the template files." into main
Yuyang Huang   authored and   Gerrit Code Review   commited 2023-11-30 03:32:56 +00:00
8670809d7f
Log bpf rc file if it differs from the template files.
Check if the bpf loader rc file is differs from the template files when
ConnectivityService starts. Use Log.wtf() to log the file if there is a
diff.

Bug: 312638861
Test: TH
Change-Id: I0b9ed9962ad0954a051a17b01357d04a0e655ff4

Yuyang Huang   commited 2023-11-29 19:58:15 +09:00
41557553f6
Update registerOffloadEngine() permission check
Update registerOffloadEngine() permission check to check the
DEVICE_POWER permission in U. This change is required to allow the
android TV device to access the API in U because the
REGISTER_NSD_OFFLOAD_ENGINE permission can not be backported.

Bug: 313546516
Test: TH
Change-Id: I84b80d102a34487ad54719a86eb525b319e2fd8b

Yuyang Huang   commited 2023-11-29 13:38:40 +09:00
d5896e7721
Replace useTls with mode in PrivateDnsConfig
In PrivateDnsConfig class, `useTls` is replaced with `mode`.
This CL a corresponding change.

Bug: 240259333
Test: atest ConnectivityCoverageTests
Change-Id: I60c53e52f287fc7fa05543603a62632d934bb2e6

Mike Yu   commited 2023-11-28 07:49:58 +00:00
9738b47758
Remove unused Vpn Dependency methods in VpnTest.
Vpn.Dependencies contains methods used for legacy VPNs that are
now unused. Remove them.

Bug: 161776767
Test: atest FrameworksNetTests
Change-Id: I68bbb3e519f5558f9006f680df79ae8073e196cd

Hansen Kurli   commited 2023-11-28 15:49:14 +08:00
b27602c8d9
Merge "Prompt user to add data on mobile portals" into main
Remi NGUYEN VAN   authored and   Gerrit Code Review   commited 2023-11-27 02:45:14 +00:00
5db2089717
Merge "Revert "Prioritize non-slices over slices"" into main
Jean Chalard   authored and   Gerrit Code Review   commited 2023-11-24 02:50:35 +00:00
11162e97c6
Prompt user to add data on mobile portals
On mobile networks it is more likely that the user needs to top up or
get a mobile data subscription, rather than "sign in" as the previous
messaging was suggesting.
Following feedback from interaction designers / UX writers, change the
strings to be more appropriate for the most common use-case.

Bug: 153673376
Test: atest FrameworksNetTests
      manual test on mobile network force-detecting a portal.
Change-Id: I5b4d4a17fd507d8cf3c9863cf23b5fedb258852e

Remi NGUYEN VAN   commited 2023-11-24 11:02:19 +09:00
3f2ff2e3d7
Merge "Add Thread#join to guarantee the termination of the thread" into main
Paul Hu   authored and   Gerrit Code Review   commited 2023-11-22 06:22:23 +00:00
976e52a2c4
Merge "Fix the memory leak in nsd tests" into main
Paul Hu   authored and   Gerrit Code Review   commited 2023-11-22 02:57:24 +00:00
005fb887e6
Merge "Update Andorid.bp to use DnsResolver v13" into main
Mike Yu   authored and   Gerrit Code Review   commited 2023-11-21 12:04:30 +00:00
faa10d066b
Revert "Prioritize non-slices over slices"
This reverts commit 14499f0119.

Reason for revert: b/312408745

Change-Id: I8b03799fe6e0e256263240909ee7446c178bf508

Jean Chalard   authored and   Gerrit Code Review   commited 2023-11-21 10:25:14 +00:00
6121a7656c
Add Thread#join to guarantee the termination of the thread
Also add MonitorThreadLeak annotation to check thread leak.

Test: atest ConnectivityCoverageTests --test-filter mdns*
Change-Id: Ie47f30360e36784428173f6cc87a4a6b09826405

Paul Hu   commited 2023-11-21 16:08:41 +08:00
0788d8ee7e
Fix the memory leak in nsd tests
The NsdManager constructor creates a new thread, which is not
intended to be closed. However, the test in NsdMangerTest and
NsdServiceTest create a new NsdManager instance, resulting in a
large number of threads running during the tests. This can lead
to an out-of-memory error for the tests. To resolve this issue,
use the common singleton thread ConnectivityThread to handle
tasks from the various instances.

Fix: 308544734
Test: atest ConnectivityCoverageTests --test-filter Nsd*
Change-Id: I1908a2bb1bd20da8e0498353bca26f7e89e16626

Paul Hu   commited 2023-11-21 14:04:07 +08:00
27662f0cc3
Merge changes I30f8814c,Ifdf67318,If312b8f8 into main
* changes:
  Rename hasCarrierPrivilege... to isCarrierServiceUid...
  Detect discrepancies in subIds
  Allow carrier service UIDs to access their own WiFi networks.

Jean Chalard   authored and   Gerrit Code Review   commited 2023-11-20 06:55:04 +00:00
4a013c47c2
Stop CarrierPrivilegeAuthenticator thread in tests
Bug: 308519360
Test: CarrierPrivilegeAuthenticatorTest
Change-Id: I59164be00a9e1fcced8538537c1dcabd214f2170

Chalard Jean   commited 2023-11-20 14:31:32 +09:00
96ff954464
Rename hasCarrierPrivilege... to isCarrierServiceUid...
This method tests whether the UID is the carrier service
UID, not whether the UID has carrier privilege.

Note that in normal operation, the carrier service UID always
has carrier privilege.

Test: NetworkAgentTest
Change-Id: I30f8814cc0419a2d6bdbe75fdc82156516eba026

Chalard Jean   commited 2023-11-20 14:01:02 +09:00
8c63ed851f
Allow carrier service UIDs to access their own WiFi networks.
Bug: 236669534
Test: New tests in this patch
Change-Id: If312b8f8359888558969c022811d6b203be602a0

Chalard Jean   commited 2023-11-20 14:01:02 +09:00
a093b452f3
Merge "Add more powerful CTS for allowedUids" into main
Jean Chalard   authored and   Gerrit Code Review   commited 2023-11-20 04:44:22 +00:00
51c80a72d8
Add more powerful CTS for allowedUids
This tests that the network providers are subject to appropriate
limitations as to what they can set as allowedUids – both in the
positive (can do) case, and the negative (can't do) case.

Test: this
Change-Id: I115e2a4bc02ddcd03ecf2f35130fcb0378da22bd

Chalard Jean   commited 2023-11-20 12:16:39 +09:00
5301778ad8
Update Andorid.bp to use DnsResolver v13
Bug: 240259333
Test: atest ConnectivityCoverageTests
Change-Id: I92ab5e1eef7ba1715176e3628222084067d14603

Mike Yu   commited 2023-11-20 01:48:53 +00:00
d0ad17c2d1
Merge "Revert "Make PRIORITIZE_* networks non-default"" into main
MichaÅ‚ BrzeziÅ„ski   authored and   Gerrit Code Review   commited 2023-11-17 12:21:56 +00:00
dec578072a
Revert "Make PRIORITIZE_* networks non-default"
This reverts commit 30fb9b1ca4.

Reason for revert: Potential culprit for CtsLibcoreTestCases test failures b/311612650

Change-Id: Ie7de97159f92a174476a8fa8ea83e3e01914aea1

MichaÅ‚ BrzeziÅ„ski   authored and   Gerrit Code Review   commited 2023-11-17 11:18:56 +00:00
05cba24cd8
Merge "Update test as the parameters are removed from production code" into main
Chiachang Wang   authored and   Gerrit Code Review   commited 2023-11-17 08:55:12 +00:00
35c1bc4fbb
Merge "Make PRIORITIZE_* networks non-default" into main
Jean Chalard   authored and   Gerrit Code Review   commited 2023-11-17 05:55:22 +00:00
9a5252ba50
Update test as the parameters are removed from production code
Bug: 161776767
Test: atest FrameworksNetTests
Change-Id: Id2cef626c5893a4ff29161c801e497b7de551136

Chiachang Wang   commited 2023-11-17 01:25:22 +00:00
a34e045610
Merge "Test VpnProfile is not modified in startLegacyVpn" into main
Hansen Kurli   authored and   Gerrit Code Review   commited 2023-11-16 10:04:19 +00:00
77f9fb300f
Make PRIORITIZE_* networks non-default
As a specialized network, a network with PRIORITIZE_* is not
generally a good default network, and might cause unexpected
charges if allowed to become one.

Test: CSDefaultNetworkTests
Change-Id: I8f7184f80bb987da720bd067862bd7a546a38e26

Chalard Jean   commited 2023-11-16 18:45:10 +09:00
30fb9b1ca4
Merge "Add test for verifying if setVpnDefaultForUids() is called correctly" into main
Chiachang Wang   authored and   Gerrit Code Review   commited 2023-11-16 06:16:11 +00:00
dff6b91649
Merge "Use FromS() on LocalNetworkConfig" into main
Jean Chalard   authored and   Gerrit Code Review   commited 2023-11-16 04:45:15 +00:00
cc2e72735d
Test VpnProfile is not modified in startLegacyVpn
The profile is modified within startLegacyVpnPrivileged(), e.g.
ipsecCaCert, ipsecUserCert. This causes subsequent calls from
callers such as LockdownVpnTracker to fail.

Add a new test to ensure the VpnProfile is not modified in
startLegacyVpn.
Add testClone in VpnProfileTest.

Bug: 190572822
Bug: 309591931
Test: atest FrameworksNetTests, test before and after fix.
Test: Manual test
Change-Id: Id090e0dd3b9e74a7461ae90e68c41e802b458744

Hansen Kurli   commited 2023-11-16 12:28:12 +08:00
e949124bcc
Add test for verifying if setVpnDefaultForUids() is called correctly
This commit verifies that
- If VPN network preference is set when
    - Ikev2VpnRunner is created
    - Retrying VPN
    - Updating exclusion list
- If VPN network preference is cleared when
    - Exiting VPN runner
    - NOT_RECOVERABLE happens

Bug: 231749077
Test: atest FrameworksNetTests:VpnTest
Change-Id: I71f48f18fd4556e04c131d5939afaa1ef5a0f814

lucaslin   authored and   Hansen Kurli   commited 2023-11-16 12:03:13 +08:00
cca1652bdb
Merge "Pass VPN uid range to AutomaticOnOffKeepaliveTracker" into main
Chiachang Wang   authored and   Gerrit Code Review   commited 2023-11-16 01:30:48 +00:00
9481063d42
Merge changes from topic "multi_network_activity_tracking" into main
* changes:
  Make ConnectivityService update BatteryStats radio power state
  Track multiple network activities on V+
  Use netId as idleTimer label on V+

Motomu Utsumi   authored and   Gerrit Code Review   commited 2023-11-15 13:58:37 +00:00
1cd89fca86
Pass VPN uid range to AutomaticOnOffKeepaliveTracker
This is a preliminary change for filtering sockets that is not
in the uid ranges for automatic on/off keepalives. This commit
itself is a no-op change to pass the uid information to
AutomaticOnOffKeepaliveTracker.

Bug: 311119352
Test: atest FrameworksNetTests
Change-Id: I7d96e7a0d3f3054d1409de350420a24378b28cdb

Chiachang Wang   commited 2023-11-15 08:50:27 +00:00
59bcabe3f4
Merge "Ensure no thread leak after NetworkStatsServiceTest" into main
Junyu Lai   authored and   Gerrit Code Review   commited 2023-11-15 07:45:34 +00:00
c7126bb997
Use FromS() on LocalNetworkConfig
Like NetworkScore, this object is not available on R because
of the absence of the tethering module. Therefore it needs to
be wrapped to be protected against introspection by the test
libraries.

Change-Id: Ia5f84d2926433398cef33d89819a8c6588024ea0
Test: FrameworkNetTests

Chalard Jean   commited 2023-11-15 16:27:19 +09:00
b86a574fe9
Ensure no thread leak after NetworkStatsServiceTest
This change includes:
 1. A mechanism in DevSdkIngoreRunnrer to dump thread counts
    before/after tests, and compare thread counts to detect leaks.
 2. Add an annotation @MonitorThreadLeak for test classes to
    annotate the classes which should monitor thread leaks.
 3. Annotated NetworkStatsServiceTest to apply the enforcement.

Sample output:
[1/2] android.net.connectivity.com.android.server.net.NetworkStatsServiceTest#testDumpStatsMap: PASSED (1.187s)
[2/2] android.net.connectivity.com.android.server.net.NetworkStatsServiceTest#ThreadLeakMonitor: FAILED (7ms)

STACKTRACE:
java.lang.IllegalStateException: Expected threads: {binder:26055_3=1, Instr: androidx.test.runner.AndroidJUnitRunner=1, main=1, InstrumentationConnectionThread=1, binder:26055_2=1, binder:26055_1=1} but got: {binder:26055_3=1, NetworkStatsObservers=1, Instr: androidx.test.runner.AndroidJUnitRunner=1, main=1, InstrumentationConnectionThread=1, binder:26055_2=1, binder:26055_1=1}

Test: atest ConnectivityCoverageTests:android.net.connectivity.com.android.server.net.NetworkStatsServiceTest \
      --rerun-until-failure 100
Bug: 308544001
Bug: 307693729
Change-Id: Ia0bccb82c5985df608b8402009b32626b6b17c5a

Junyu Lai   commited 2023-11-15 14:03:45 +08:00
17f589cf47
Merge "Allow SysUi to see the connectivity diagnostic callbacks" into main
Quang Luong   authored and   Gerrit Code Review   commited 2023-11-15 05:51:28 +00:00
2cfffe7bfb
Allow SysUi to see the connectivity diagnostic callbacks
SysUi needs to see connectivity diagnostic callbacks to display
 "Checking for internet access..." -> "Connected" or "No internet access".

Bug: 307161342
Test: atest FrameworksNetTests, manually connect to a network without internet connectivity,
verify Internet Dialog doesn't get stuck showing
 "Checking for internet access..."

Change-Id: I86e2b852ff9e5dfbfc37ba711f477166b0ac6835

Quang Anh Luong   commited 2023-11-15 11:06:42 +09:00
28eefef05d
Check service ttl expiration
Now, every services are cached on MdnsServiceCache, so the
remaining TTL should be checked when retrieving services from
the MdnsServiceCache and have a callback to notify the
MdnsServiceTypeClient about expired services.

Bug: 265787401
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I99da6cc79bdf5df3c899e642e067907501bc9d4f

Paul Hu   commited 2023-11-14 09:13:42 +00:00
596a500607
Make ConnectivityService update BatteryStats radio power state
Currently, BatteryStatsService register netd callback and track radio
power state only for the default network.
So, battery stats are not accurate if cellular and Wi-Fi networks are
active at the same time.

aosp/2561090 updates BatteryStatsService not to register netd callback
on V+ devices.
This CL updates LegacyNetworkActivityTracker to call BatteryStats API
and update radio power state for networks including non default networks
on V+ devices.

Bug: 267870186
Bug: 279380356
Test: atest FrameworksNetTests
Change-Id: I826b3b4046cc7b8aef46c13300854eaf14b1b777

Motomu Utsumi   commited 2023-11-14 15:50:42 +09:00
db537accdc
Track multiple network activities on V+
on V+ devices, NetworkActivityTracker adds idleTimer when the network is
first connected and removes idleTimer when the network is disconnected
so that activity tracker can receive netd
onInterfaceClassActivityChanged callback for multiple networks.

Bug: 267870186
Bug: 279380356
Test: atest FrameworksNetTests
Change-Id: I6f3a95c27e3e58f3f60c40065f562d00431a56b1

Motomu Utsumi   commited 2023-11-14 15:50:36 +09:00
1f5ffa4273
Use netId as idleTimer label on V+
Following CL adds idleTimer for multiple networks and track activities
including non default network on V+
Current LegacyNetworkActivityTracker uses transport type as an idleTimer
label but this makes it difficult to have multiple idleTimers.
So, this CL updates LegacyNetworkActivityTracker to support using netId
as an idleTimer label.

Bug: 267870186
Bug: 279380356
Test: atest FrameworksNetTests
Change-Id: I0039f5624ae1d142dbacba53aa90ca9bf6d43599

Motomu Utsumi   commited 2023-11-14 13:43:45 +09:00
5fce43e548
Merge changes from topics "RemoveFindIPv4", "RemoveLegacyVpnRunner" into main
* changes:
  Expect no error for startLegacyVpn with IPv6.
  Remove tests related to LegacyVpnRunner.

Hansen Kurli   authored and   Gerrit Code Review   commited 2023-11-13 05:27:07 +00:00
8b61783b78