Commit Graph

2186 Commits

Author SHA1 Message Date
Treehugger Robot
1c4a66ddc4 Merge "Fix a possible flake in disconnectFromWiFi" 2021-11-22 07:34:57 +00:00
Treehugger Robot
2c75c0444d Merge "Disable CtsNetTestCases if needed" 2021-11-18 11:43:07 +00:00
Taras Antoshchuk
bc3f86dfa3 Disable CtsNetTestCases if needed
Apply NetworkStackNextEnableDefaults to CtsNetTestCases to disable it
in branches where NetworkStackNext and related targets should not be
built.

Test: presubmit
Change-Id: I850b4294aa4c3c01f8871760185ca7fedc0f8584
2021-11-15 17:40:42 +01:00
Chalard Jean
dece0d805f S- not to crash on NetworkInfo(null) or setDetailedState(null)
When NetworkInfo(null) or setDetailedState(null, any, any) are
called, S used to not crash but plant a null bomb for later
which may explode in some calls (notably, parceling) : see the
bug referenced below for details.

To help catching these errors earlier a patch was made to crash
as soon as one of these methods is called with a null argument,
but this will also crash incorrect use on existing code that
may never actually step on the mine, crashing code that used not
to crash. For safety, implement the new behavior only on T.

Bug: 145972387
Test: NetworkInfoTest
Change-Id: Ib710497d83b2d26439c2bd4d2f572310db97d6fd
2021-11-15 21:18:25 +09:00
Chalard Jean
05c291e5a3 Fix a possible flake in disconnectFromWiFi
1. There is a theoretical issue where the callback is not yet
   registered when wifi is disabled, but there is no evidence
   of it actually happening
2. 2 minutes timeout makes no sense for these tests that have a
   total 1 minute timeout anyway

Bug: 196387278
Test: CtsNetTestCases
Change-Id: I120af9b312ca34431d0e62dd85233fcdaa1b09b9
2021-11-15 11:58:07 +00:00
Maciej Żenczykowski
8834250ef8 replace R + 1 with S
Test: TreeHugger
Bug: 170424293
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I43f53268b6c1605d928ce3431cc95b8a66b6c052
2021-11-10 18:20:01 -08:00
Treehugger Robot
27979bd116 Merge "Include the failing stats in stats failure assertions." 2021-11-08 06:20:39 +00:00
Lorenzo Colitti
5156e787f3 Include the failing stats in stats failure assertions.
Currently debugging IpSecManagerTest counter test failures is
difficult because the assertion message does not say how many
bytes/packets were expected.

Add this information to the assertion message.

Bug: 204860049
Test: test-only change
Change-Id: I4e12be9a58a688fcee3362dceb31d9f21e981d6c
2021-11-08 13:25:45 +09:00
Remi NGUYEN VAN
defc74fb2f Merge "Use ConnectivityCheckTargetPreparer in CTS" 2021-11-05 04:27:47 +00:00
Remi NGUYEN VAN
9c358cd831 Use ConnectivityCheckTargetPreparer in CTS
The preparer does basic checks for device configuration before any test
is run, so that wrong device configuration can be identified at the
module level, rather than fail individual test cases.

If test devices are not properly configured with a wifi configuration
and data-enabled SIM cards, the run will fail before starting the test
module.

As the preparer uses much of CtsNetUtils code for connecting to wifi,
refactor that code out of CtsNetUtils.

Test: atest CtsNetCasesLatestSdk
Change-Id: I1214b6d6916e836bcd68d15c50486092c7fb9a6e
2021-10-28 15:15:53 +09:00
Remi NGUYEN VAN
9a689f81f4 Add RequiresDevice to relevant tests
Replace SkipPresubmit with RequiresDevice on relevant tests, as
RequiresDevices is more standard and more specific.

This allows creating test configurations using virtual devices which are
not necessarily in presubmit.

Bug: 201014262
Test: TH needs to verify test mapping run with new annotation
Change-Id: I6758d2a41a9a987a5244e47e4795bc49889c4d61
2021-10-28 09:49:42 +09:00
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
Paul Hu
c4898b85ce Merge "Specify which callback is unexpected in testMobileDataPreferredUids" 2021-10-20 05:39:19 +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
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
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
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
Chiachang Wang
d2bd93f2e2 Merge "Restore private dns host name after testing" am: 0ee7406d33
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1836114

Change-Id: I51344c514278433e66016a812e1458e5e2df0e8d
2021-10-01 00:54:23 +00:00
Chiachang Wang
0ee7406d33 Merge "Restore private dns host name after testing" 2021-10-01 00:37:15 +00:00
Chiachang Wang
c345dec57b Merge "Add test for CM#[add|remove]DefaultNetworkActiveListener" am: 2086865010
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1827918

Change-Id: I2b1e5ed720d2ca97f740713ed3b24a119edc8f28
2021-09-30 12:16:40 +00:00
Chiachang Wang
5e54074e6e Restore private dns host name after testing
The helper method in CtsNetUtils will not restore the private
dns hostname back if the device private dns mode is not strict
mode. It does not cause function break since the host
configuration is useful only when the private dns mode is in
strict mode. But tests should restore the setting back to its
old state to prevent break other tests or erase setttings.

Test: atest android.net.cts.ConnectivityManagerTest and
      check if the private dns server configuration is
      changed or not after testing
Change-Id: I7c85ddac7306c7c3eeac84679d96c4cfb11bd875
2021-09-30 10:32:04 +00:00
Chiachang Wang
859218c893 Add test for CM#[add|remove]DefaultNetworkActiveListener
Bug: 199753782
Test: atest FrameworksNetTests CtsNetTestCases
Change-Id: I2520f7f5feef61502479767aa023e281d1335ee4
2021-09-30 18:29:29 +08:00
markchien
3e14f7df9f Test QosSocketInfo.getNetwork am: 059bfa6149
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1826063

Change-Id: I29e01f008d6dfeb516dc71f7c3cf4637828b2b6c
2021-09-15 11:19:50 +00:00
markchien
059bfa6149 Test QosSocketInfo.getNetwork
Bug: 183239152
Test: atest NetworkAgentTest
Change-Id: I9848608e0aa500ff7668350a080537dd4a549214
2021-09-15 03:09:26 +00:00
paulhu
ee03a040e7 Ignore testRestrictedNetworkPermission on Q
testRestrictedNetworkPermission would fail on Q image because
NetworkCapabilities#Builder method is not existed on Android Q.

Bug: 199686391
Test: atest CtsNetTestCasesLatestSdk:ConnectivityManagerTest#\
      testRestrictedNetworkPermission on Q device.
Change-Id: I94b3551fce15489983ac159504cafe25c46fbe72
2021-09-14 16:51:45 +08:00
Paul Hu
acffb5cc5a Merge "Remove NetworkUtils.queryUserAccess in test" am: c7d5ea0bbd
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1775930

Change-Id: Id19cdd1a8ff7dfb4093ca09b4397619097310dc4
2021-09-11 06:11:55 +00:00
Paul Hu
c7d5ea0bbd Merge "Remove NetworkUtils.queryUserAccess in test" 2021-09-11 05:56:45 +00:00
Sergey Troshin
0e4b401e69 Delete AirplaneModeTest am: 2e0b45004c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1752425

Change-Id: I5038f3033261190c8e9d799fc115dfdb65e628bc
2021-09-10 13:43:09 +00:00
Sergey Troshin
2e0b45004c Delete AirplaneModeTest
It is flaky and redundant, functionality is covered in
ConnectivityManagerTest

Bug: 191856806
Test: N/A
Change-Id: I786f69f6f6cfb73e99cc5dea867024007f44d134
2021-09-10 09:17:39 +00:00
TreeHugger Robot
74f74987bc Merge "Add back tethering to TEST_MAPPING" into stage-aosp-master 2021-09-10 07:35:27 +00:00
Treehugger Robot
e6becb6820 Merge "Wait for validation of WiFi in OEM pref test" am: c60c1bc24e
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1821292

Change-Id: I7c26bb8a04b6c56257ef8ecb44a4afa50826a85e
2021-09-09 19:17:54 +00:00
Chalard Jean
ae4c414c1f Wait for validation of WiFi in OEM pref test
OEM_NETWORK_PREFERENCE_TEST prefers NOT_METERED&VALIDATED networks
then TEST networks. If the WiFi isn't validated by the time the
preference is set, then the TEST network is preferred and the test
fails. The best solution is simply to wait for the WiFi network to
validate before setting the preference.

Besides, some of the *wait* methods wait for validation and some
don't, creating confusion. Make this explicit on the
setWifiMeteredStatusAndWait method with a boolean argument, which
forces all users to make an explicit choice.

testSetOemNetworkPreferenceForTestOnlyPref is not affected, as
it does not change WiFi meteredness.

Bug: 195365654
Test: testSetOemNetworkPreferenceForTestPref
Change-Id: Icb9d7ff1ca5c3d93286ea3a79c27f15630d17ee6
2021-09-08 18:43:09 +09:00
paulhu
e02bb6052d Remove NetworkUtils.queryUserAccess in test
- This method always reuturns false which is not able to use for
  testing.
- Use test restricted network for testing instead.

Bug: 183485986
Test: atest ConnectivityManagerTest
Change-Id: If34d4f1952162f118d53be8074a96b07415a5c85
2021-09-07 15:18:06 +00:00
Chalard Jean
84e05d9e98 Merge "Add debug logs to CaptivePortalTests" am: fe1a4f6e60
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1819792

Change-Id: I273364a1086077eb9aa355e1cce7b49e382aefbc
2021-09-07 04:51:37 +00:00
Chalard Jean
d0d5c64bab Add debug logs to CaptivePortalTests
The point is to help with debugging flakes of this test by
clarifying the timing of these calls with respect to when
NetworkMonitor reads the settings and the values it obtains.

Test: CaptivePortalTest
Change-Id: I29ac1d8cff1f96c91be2459e9a8f34f8ba1f38e3
2021-09-06 18:08:45 +09:00
Remi NGUYEN VAN
171014dadf Add back tethering to TEST_MAPPING
Tethering was removed from test mapping during S development
in some branches, but needs to be part of mainline-test-mapping
testing.

Change-Id: I440e9ae1aa958addab1c53b441e5e9e87a6d757d
Ignore-AOSP-First: Fixes difference with AOSP
Bug: 196755836
Test: TH needs to test TEST_MAPPING config
2021-09-02 01:15:28 +00:00
Aaron Huang
d347dad799 Merge "Bypass cellular battery stats test if telephony is not supported" am: 1c603e7ec3
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1796589

Change-Id: I2e10702cee72d81da0564fb29f5fcddc465775c9
2021-08-19 05:54:28 +00:00
Xin Li
e534ce4c55 Merge "Merge sc-dev-plus-aosp-without-vendor@7634622" into stage-aosp-master 2021-08-17 18:15:09 +00:00
Aaron Huang
1e49ed0e84 Bypass cellular battery stats test if telephony is not supported
This test requires a cell network so the test will be failed if
the device does not support telephony. Add a condition to check
if the device supports telephony and skip cellular battery stats
test if telephony is not supported.

Bug: 196231205
Test: atest CtsNetTestCases:BatteryStatsManagerTest
Change-Id: I9ddc1da2a3f83f3fd2ab59059185f2f7a8d08701
2021-08-17 07:13:16 +00:00
Aaron Huang
114a5b2fd3 Skip wifi stats test if link layer stats is not supported
Wifi link layer is an optional feature so this test will be
failed on wifi stats check if a device does not support it.
Add a check to know if the  device supports wifi link layer
stats and skip it if it is not supported.

Bug: 195518957
Test: CtsNetTestCases:BatteryStatsManagerTest
Change-Id: I592dd5f1d6e13b020beadb11b9d913857a82e524
Merged-In: I592dd5f1d6e13b020beadb11b9d913857a82e524
2021-08-17 07:12:54 +00:00
Remi NGUYEN VAN
7b2e5fe68e Fix ConnectivityDiagnosticsManagerTest for MTS
When run as part of NetworkStack MTS, ConnectivityDiagnosticsManagerTest
may fail as it verifies behavior that is only present will the latest
tethering (connectivity) module installed.

There is no guarantee that connectivity will be up-to-date for a given
NetworkStack version, especially considering that on R->S device upgrade
NetworkStack is likely to have been updated, but connectivity will be
the factory version. Therefore NetworkStack tests need to cover devices
that do not have an up-to-date connectivity module.

Fix the test by observing that at least on T both module will have newer
behavior. On S, accept both factory and updated behavior.

Bug: 195727283
Test: atest ConnectivityDiagnosticsManagerTest
Change-Id: Ifc0b09c884419d28817cfe619940c979ee1b0b9e
2021-08-11 21:31:37 +09:00
Aaron Huang
17bc178920 Merge "Skip wifi stats test if link layer stats is not supported" into sc-dev am: 9ac9c1d575
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/15479880

Change-Id: I5a33f959c8ae5a34584f57508f392038e44062e7
2021-08-11 03:51:12 +00:00
Aaron Huang
9ac9c1d575 Merge "Skip wifi stats test if link layer stats is not supported" into sc-dev 2021-08-11 03:33:53 +00:00
Aaron Huang
58b493abf6 Skip wifi stats test if link layer stats is not supported
Wifi link layer is an optional feature so this test will be
failed on wifi stats check if a device does not support it.
Add a check to know if the  device supports wifi link layer
stats and skip it if it is not supported.

Ignore-AOSP-First: Needs cherry-picks
Bug: 195518957
Test: CtsNetTestCases:BatteryStatsManagerTest
Change-Id: I592dd5f1d6e13b020beadb11b9d913857a82e524
2021-08-10 14:37:51 +08:00
Benedict Wong
ae00382c67 Update ConnDiags CTS test to expect validation result SKIPPED.
This CL updates ConnectivityDiagnosticsManagerTest to expect
NETWORK_VALIDATION_RESULT_SKIPPED for its TestNetworks. The tests also
expect a ConnectivityReport to be sent for all calls to
ConnectivityManager#reportNetworkConnectivity.

This change is different from the one pushed into AOSP & the mainline
modules; this allows both SKIPPED and VALID in the intermediate time
while module prebuilts are generated. MTS will enforce the stricter
SKIPPED check, while this allows both the S-release behavior and
mainline update behavior.

Bug: 162407730
Bug: 195727283
Test: atest ConnectivityDiagnosticsManagerTest
Change-Id: Ia0bf1bb53289b079f26597f09b0759a89deb681f
Merged-In: I78b78919d5b0f09348dfdd5fdb37418b8c7f861f
2021-08-06 18:08:48 +09:00
Chiachang Wang
a758f40ef9 Do callback unregistration automatically in tearDown am: 7a45f107de am: 4e0841524b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1787229

Change-Id: I8f72e741567288717bbc94e115f9aa0816cfad86
2021-08-05 14:14:02 +00:00
Chiachang Wang
7a45f107de Do callback unregistration automatically in tearDown
Ideally, unregisterCallbackQuietly() is only needed when the
callback is registered in the try block. The callbacks
registration located outside the try block should be
registered theoretically. Otherwise, it may be a bug if the
tests get the IllegalArgumentException.

Use unregisterCallbackQuietly() in all finally may cause bug
in unregisterNetworkCallback invisible.

However, it may cause different tests with different code to
do the unregistration. Thus, do a refactor to add some methods
to wrap the NetworkCallback registration. This allows the tests
to do the unregister automatically in the tearDown().

Bug: 195364778
Test: atest android.net.cts.ConnectivityManagerTest
Change-Id: If06993f643ac7aeb23638a283347c427934a2f99
2021-08-05 19:47:20 +08:00