Commit graph android_packages_modules_Co.../thread/tests
Message SHA1
[Thread] add private API ThreadNetworkSpecifier
Bug: 374037595
Change-Id: I8d63a742ec2a03a1cf2f023711696379c975ff80

Kangping Dong   commited 2024-11-05 13:36:44 +08:00
2967cfaf4e
Merge "[Thread] Disable flaky test nat64_withAilNat64Prefix_threadDevicePingIpv4InfraDevice_outboundPacketIsForwarded" into main
Treehugger Robot   authored and   Gerrit Code Review   commited 2024-10-31 15:41:14 +00:00
0f0885aa40
Merge "[Thread] add private API for disabling border router" into main
Treehugger Robot   authored and   Gerrit Code Review   commited 2024-10-31 15:30:43 +00:00
a2f666e08a
[Thread] add private API for disabling border router
Bug: 374036806
Change-Id: Ib8ca8bbd2b3018c39c9250e1b3ce70b193273c1b

Kangping Dong   commited 2024-10-31 14:30:25 +08:00
56449db1be
[Thread] Disable flaky test nat64_withAilNat64Prefix_threadDevicePingIpv4InfraDevice_outboundPacketIsForwarded
Bug: 376573921
Change-Id: I017a7c3bfbb46a367a32156159495930120adb35

Handa Wang   commited 2024-10-31 05:09:38 +00:00
833b22da87
[Thread] add an integration test case for resolving a host via DNS recursive resolver
This CL adds new test cases for verifying the Thread Border Router's
DNS Recursive Resolver feature: The DNS clients resolves google.com
successfully when the feature is enabled.

Bug: 354868095
Test: atest ThreadNetworkIntegrationTests:android.net.thread.InternetAccessTest

Change-Id: I1b021151c6843b30c3f47559ab20dec405af5dea

Handa Wang   commited 2024-10-30 06:42:17 +00:00
5e8a1fdfda
Merge "[Thread] request/release the NAT64 CIDR" into main
Handa Wang   authored and   Gerrit Code Review   commited 2024-10-23 07:11:52 +00:00
ec5bc1fc13
[Thread] request/release the NAT64 CIDR
This CL implements the logic to maintain the NAT64 CIDR at ThreadNetworkControllerService. When NAT64 is enabled, the service needs to request a CIDR via RoutingCoordinatorManager#requestDownstreamAddress(). When NAT64 is disabled, the service needs to release the CIDR via RoutingCoordinatorManager#releaseDownstreamAddress().

Bug: 350699020

Change-Id: I16397fd48c2925efd9d4833a335cf73832b4f4d6

Handa Wang   commited 2024-10-23 01:31:43 +00:00
a7318da774
[Thread] fix the test util of setNat64EnabledAndWait to apply old config
Bug: 356770473
Change-Id: I6d1e3d6acc9a101b3e783ab4493ed25a3aa732a1

Yang Sun   commited 2024-10-21 08:45:59 +00:00
ee4ab96116
[Thread] use setConfiguration API in NAT64 tests
Bug: 356770473

Change-Id: I98c80de24cbaaa7206ddbd2bf62350066c998ba5

Handa Wang   commited 2024-10-21 06:04:09 +00:00
52c72a11bf
Merge "Add test for meshcop service state bit for epskc." into main
Treehugger Robot   authored and   Gerrit Code Review   commited 2024-10-18 09:53:11 +00:00
2c2e1cce3a
Add test for meshcop service state bit for epskc.
Bug: 373749923

Test: atest CtsThreadNetworkTestCases

Change-Id: I7e8661eb447f4055dce19a0b16857324d7cd9b18

Yang Sun   commited 2024-10-18 08:00:54 +00:00
a9efc24ade
[Thread] add CLI commands for getting/setting config
Bug: 364237115

Change-Id: Ice42d7d02cfefd733042282939635502c259d9d5

Handa Wang   commited 2024-10-17 07:40:42 +00:00
7eb1bbd369
Merge "[Thread] add configuration methods in ThreadNetworkControllerWrapper" into main
Handa Wang   authored and   Gerrit Code Review   commited 2024-10-17 05:37:33 +00:00
fe6dedde08
[Thread] add configuration methods in ThreadNetworkControllerWrapper
Change-Id: I56b4ca76e7f62d924f99527b36eac24ed151c53b

Handa Wang   commited 2024-10-16 14:55:19 +00:00
1c7d51a743
Rename TapPacketReader to PollPacketReader for broader applicability
* Renamed TapPacketReader to PollPacketReader to better reflect its
  functionality beyond TAP interface interaction.
* The class includes general logic for polling and sending packets to
  file descriptors, making it suitable for wider use cases.

Test: TH
Change-Id: Icdf9a9d7ef6f49b589ed9cdbd05159ab95e7e5d9

Yuyang Huang   commited 2024-10-15 13:42:05 +09:00
eb3c631b89
[Thread] add unit test cases for Configuration API at
ThreadNetworkController

Bug: 368456504
Change-Id: I67b57f658c35b2b6e2045903d035d0f925b9b333

Handa Wang   commited 2024-10-14 02:34:49 +00:00
9a302c1e7a
Merge "Change OtDaemonState ephemeralKeyExpiryMillis to ephemeralKeyLifetimeMillis" into main
Yang Sun   authored and   Gerrit Code Review   commited 2024-10-11 01:19:01 +00:00
adee3295ff
Merge "[Thread] fix the issue that border routing is not available after ot-daemon restarts" into main
Treehugger Robot   authored and   Gerrit Code Review   commited 2024-10-10 15:33:01 +00:00
3e4eaf8c80
[Thread] fix the issue that border routing is not available after
ot-daemon restarts

This CL tries to fix issue by removing error-prone shortcircuit checks.
The checks skip configuring the ot-daemon if they think the new state
is equal to the old state. However, the old state mainainted in
ThreadNetworkControllerService may be stale which causes issues.

Bug: 372592886
Test: atest ThreadNetworkIntegrationTests

Change-Id: Icab25cf094f8bf33832b4097ab8ee77b54badc6b

Handa Wang   commited 2024-10-10 14:21:58 +00:00
485a7f1849
Change OtDaemonState ephemeralKeyExpiryMillis to ephemeralKeyLifetimeMillis
Bug: 372598146
Test: atest CtsThreadNetworkTestCases

Change-Id: I634ca0c22b5d80411df2b53493659c27ea07d2f2

Yang Sun   commited 2024-10-10 06:54:40 +00:00
fe0fb3081e
[Thread] make ThreadNetworkController#setConfiguration a system API
This CL turns setConfiguration into a system API, including the
ThreadConfiguration#Builder
and the #setNat64Enabled method.

Bug: 368456504

Change-Id: I0ff2ed81271dcceea295d169a46a02f05aeda5d6

Handa Wang   commited 2024-10-10 05:36:11 +00:00
651bfdaaf7
[Thread] implement the ThreadNetworkController#setConfiguration at
service

This CL implements the ThreadNetworkController#setConfiguration. When
the ThreadNetworkControllerService receives this call, the configuration
is passed to ot-daemon and triggers according OT APIs. On success, the
configuration is persisted to the local storage and triggers
OutcomeReceiver#onSuccess. On failure, it triggers
OutcomeReceiver#onError.

Bug: 368456504

Change-Id: I570ec3fead204cd3b6c05629ef409967245350b8

Handa Wang   commited 2024-10-10 05:36:06 +00:00
ed15725987
[Thread] Add unit test for ephemeral key API
Bug: 348323600

Test: atest ThreadNetworkUnitTests
Change-Id: I8148b20b02010d57020b2d5d2eb9a3e79e68b10f

Yang Sun   commited 2024-09-29 02:35:51 +00:00
018f163cc9
[Thread][API] add API for ephemeral key.
This CL adds the API for starting/stopping the ephemeral key mode, and
subscribing to the ephemeral key state changes.

Ephemeral key mode is started with a limit amount of time to allow
Thread credential sharing.

Bug: 348323500
Test: atest CtsThreadNetworkTestCases
Change-Id: I540c88ec4668291358fbe87a678d8f9d31a67e54

Yang Sun   commited 2024-09-29 02:35:44 +00:00
b8aa8bb47f
Merge "[Thread] support discovering NAT64 prefix from AIL" into main
Handa Wang   authored and   Gerrit Code Review   commited 2024-09-23 03:58:57 +00:00
5f9a3d042e
[Thread] support discovering NAT64 prefix from AIL
Bug: 357479886

Change-Id: I8dfd96a0ba3e927ed4cbc8ceecb18652adf98964

Handa Wang   commited 2024-09-23 02:35:07 +00:00
b47c325907
Merge "[Thread] refactor setInfraLinkState" into main
Treehugger Robot   authored and   Gerrit Code Review   commited 2024-09-20 09:51:58 +00:00
adc778d038
Merge "Allow ot-ctl command under ADB Thread Network Service : support of non-interactive mode" into main
Yang Song   authored and   Gerrit Code Review   commited 2024-09-20 07:32:01 +00:00
2d17714c24
[Thread] refactor setInfraLinkState
This CL integrates the refactoring of aosp/3264051.

Bug: 365892457
Change-Id: I77788c06db02abbf2275fda3015b0f3fa63920e0

Handa Wang   commited 2024-09-20 06:34:51 +00:00
e24b215bf2
Merge "Let NsdPublisher pass the interface index when a service is resolved." into main
Yang Sun   authored and   Gerrit Code Review   commited 2024-09-20 05:13:43 +00:00
631ded17fc
Allow ot-ctl command under ADB Thread Network Service : support of non-interactive mode
Bug: 351721329

Test: atest ThreadNetworkUnitTests

Change-Id: Id7443c24ea380d200e73cca4ead2284249f2052f

Yang Song   commited 2024-09-20 03:58:14 +00:00
ffceaae1b8
Let NsdPublisher pass the interface index when a service is resolved.
The mapping from network to interface name is passed from
ThreadNetworkControllerService to NsdPublisher, so that NsdPublisher can
send interface index to mdns subscribers when a service is resolved.

Bug: 321883491

Test: presubmit
Change-Id: I401c38ba3fbc7b2a2de5cbc9ab1132c657518f32

Yang Sun   commited 2024-09-20 11:09:54 +08:00
9bf8e48c2a
Make java_sdk_library dependencies explicit
modules should specify the submodule of java_sdk_library that the module
actually depends on

Test: CI
Bug: 358613520
Change-Id: I0367068c901df98483f6cf95160d3e7801881b0a

Jihoon Kang   commited 2024-09-10 00:01:31 +00:00
8401b6a9f0
Merge "[Thread] move infra network utilities to IntegrationTestUtils.kt" into main
Handa Wang   authored and   Gerrit Code Review   commited 2024-09-05 13:33:31 +00:00
7c831a94c6
Merge "[Thread] refactor IntegrationTestUtils to use Kotlin" into main
Treehugger Robot   authored and   Gerrit Code Review   commited 2024-09-05 07:57:05 +00:00
f991318e8c
[Thread] move infra network utilities to IntegrationTestUtils.kt
This CL moves setUpInfraNetwork(), tearDownInfraNetwork() and
startInfraDeviceAndWaitForOnLinkAddr() into IntegrationTestUtils.kt
because they'll also be used by Internet Access test cases which will be
in a new file.

The methods are refactored in Kotlin to be easier used in new test
cases. The new test cases will also be written in Kotlin.

Bug: 356770473

Change-Id: I2e5788ba87f9f86dd14d382db0b0de791bcbce6a

Handa Wang   commited 2024-09-05 05:59:51 +00:00
d92b389c63
[Thread] refactor IntegrationTestUtils to use Kotlin
This CL refactors IntegrationTestUtils class to Kotlin. As more test
cases are introduced, it's likely we'll add more code into this class.
It's worth a refactor of the code so that we can write the new code in
Kotlin which is more concise and safer.

Change-Id: I8b71c5183cad9224ee49e2192aa5aab62aae9ddb

Handa Wang   commited 2024-09-05 05:59:46 +00:00
26b68536bf
Enabled CtsThreadNetworkTestCases for secondary_user_on_secondary_display
secondary_user_on_secondary_display is for background users that have
access to UI on assigned displays (a.k.a. visible background users) on devices that have config_multiuserVisibleBackgroundUsers enabled. The main use case is Automotive's multi-display Whole Cabin experience where
passengers (modeled as visible background users) can interact with the display in front of them concurrently with the driver (modeled as the the current user) interacting with driver's display.

Tested on gcar_md emu

Flag: TEST_ONLY

Bug: 356700021
Bug: 354233217
Bug: 358707308
Test: atest --user-type secondary_user_on_secondary_display CtsThreadNetworkTestCases
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b642178a9426f854f4496c07c8440d5ed417167c)
Merged-In: Iad7deb2c2715f6ef684ecc16b95a2fbbc7bb5260
Change-Id: Iad7deb2c2715f6ef684ecc16b95a2fbbc7bb5260

Mayank Garg   authored and   Android Build Cherrypicker Worker   commited 2024-08-26 19:08:25 +00:00
47b87650d1
changes the API setChannelMaxPowers from hide API to system API
This CL changes the hiden API `setChannelMaxPowers` to system API
to allow the privilege app to set the max power of each Thread channel.

Bug: b/346686506
Test: atest CtsThreadNetworkTestCases
Change-Id: I1089a4a315971c3bca8ec688a02143ddec93d039

Zhanglong Xia   commited 2024-08-26 10:07:36 +08:00
5bbfd91b04
Merge changes from topic "nat64-integration-test-case" into main
* changes:
  [Thread] add an integration test case for NAT64
  [Thread] support polling IPv4 packets in integration test

Treehugger Robot   authored and   Gerrit Code Review   commited 2024-08-07 02:23:23 +00:00
bf52fa708e
[Thread] add an integration test case for NAT64
This CL adds an integration test case for NAT64. Because the feature is
not fully ready, we need some extra setup steps to make the feature
work. That is, specifying a CIDR for NAT64. Also, this test case is
based on `ot-ctl` but eventually the test should be based on API.

This CL requires https://github.com/openthread/openthread/pull/10566.

Bug: 356770473
Test: atest ThreadNetworkIntegrationTests

Change-Id: Idfb5ad848f7b2369591e47558ea67017c0b31e19

Handa Wang   commited 2024-08-07 01:12:50 +00:00
d38b7cb30f
[Thread] support polling IPv4 packets in integration test
This CL also refactors the IntegratoinTestUtils a bit to make it more
reusable.

Bug: 356770473
Test: CI

Change-Id: Ief94e312e06e4b62c71284c8ff0ef710f0b632fb

Handa Wang   commited 2024-08-07 01:12:46 +00:00
09e71714fb
[Thread] add a test case to validate the default upstream network request
This CL adds a test case to verify the upstream network request has
desired transport types and network capabilities.

Bug: 356346764
Test: CI
Change-Id: Id81b5f60ce2ca574582aaf106840eab0b7aca927

Handa Wang   commited 2024-08-05 14:02:24 +00:00
89a81a15be
Merge "[Thread] fix upstream network selector to exclude VPN" into main
Handa Wang   authored and   Gerrit Code Review   commited 2024-08-01 03:20:46 +00:00
50644b75b8
[Thread] fix upstream network selector to exclude VPN
Previously the upstream network selector wrongly cleared the default
network capabilities so there's a risk of choosing VPN as the upstream
network, which is undesired.

Bug: 356346764
Test: atest ThreadNetworkIntegrationTests
ThreadNetworkControllerServiceTest

Change-Id: Ic1762775734d734f1974a753f100814b61d66589

Handa Wang   commited 2024-08-01 03:20:11 +00:00
4641f69608
[Thread] Make ThreadConfiguraiton a system API
This CL adds 3 things as @SystemApi:
- The ThreadConfiguration class except the Builder nested class.
- The ThreadNetworkController#registerConfigurationCallback method.
- The ThreadNetworkController#unregisterConfigurationCallback method.

Bug: 342519412
Test: CtsThreadNetworkTestCases

Change-Id: I8d3e48b73d471af1515f251451a1259a4bde69af

Handa Wang   commited 2024-07-29 08:07:17 +00:00
5fc74b9fd8
[Thread] fix ServiceDiscoveryTest
The test was flaky because we didn't give enough time for SRP
registration to complete.

The waiting should be counted as started when the SRP server is available).
Previously we started the waiting before the availability of SRP server
so the counted waiting time may be longer than expected which causes
the wait to timeout and fail the test case.

This CL also extracts some common utils from integration test cases to
the IntegrationTestUtils class.

Bug: 353836718
Test: Locally passed 50 times in a row

Change-Id: I2f648a21d57025b082296b4e562c46432ab04ff8

Handa Wang   commited 2024-07-22 05:33:36 +00:00
cc6d43690b
[Thread] disable handling of airplane mode
This is basically a revert of aosp/3079292 to disable the handling of
the airplane mode. The cause is that there are a few reported ANR issues
on real devices and they points to the handlers here in Thread module.

Before we figure out the root cause, let's disable the airplane mode
handler in Thread to recover the presubmit tests.

Bug: 353115531
Bug: 352484437
Bug: 350586929
Bug: 352316041
Change-Id: I569ced2855658f965ddf51242600ee3c325781a7

Kangping Dong   commited 2024-07-15 15:48:15 +08:00
14da81bc17
Merge "[Thread] add config_thread_mdns_vendor_specific_txts" into main
Treehugger Robot   authored and   Gerrit Code Review   commited 2024-07-10 11:03:52 +00:00
9365e728e5