Commit Graph

1762 Commits

Author SHA1 Message Date
Luke Huang
fd4a967604 Deflaky test for DnsResolverTest
It's possible that private DNS setting is not in the state we expected
when we tried to enable strict mode during tests. The problem here is
that there are 2 setting Uris(mode and specifier) relating to strict
mode, each of them might trigger private DNS setting changing evnet in
ConnectivityService.
Previously, we tried to enable strict mode with first set private DNS
mode and then private DNS specifier. This may result in 2 consecutive
private DNS changes events with very short intervals, which caused
conflicts between DnsResolver / NetworkMonitor and lead to flaky tests.

So
0. Use opportunistic as default mode if no default mode existed.
1. Change the order (mode and specifier) for enabling strict mode.
2. Change private DNS mode only when needed.
     (If original mode is "hostname", then we only need to set
     specifier)

Bug: 153624005
Bug: 151122313
Bug: 150952393
Test: atest DnsResolverTest --rerun-until-failure 100
Test: forrest (git_master, cts/networking/gce-all)
Test: forrest (git_rvc-dev, atest CtsNetTestCases)
Test: forrest (git_rvc-dev, mts/dnsresolver/device-all)
Merged-In: I224a6493c87cebaf0bf954c2644e2945ccd50db1
Change-Id: Ib61ad7bd510341366ebbbb72aa451e5809ee3e9d
(cherry picked from commit 7561b1499c1b8da0334b32c0452d49113d9e4806)
2020-05-26 08:05:15 +00:00
Remi NGUYEN VAN
b407f77bd0 Merge "Use Q permission on Q for startCaptivePortalApp" into rvc-dev 2020-05-26 02:00:19 +00:00
Remi NGUYEN VAN
6b23e3b0e3 Merge "Skip testTemporarilyNotMeteredCapability on Q" into rvc-dev 2020-05-26 02:00:05 +00:00
Remi NGUYEN VAN
d79613570d Skip testTemporarilyNotMeteredCapability on Q
The capability did not exist on Q.

Bug: 155993662
Test: atest NetworkRequestTest
Original-Change: https://android-review.googlesource.com/1316082
Merged-In: I94e874e37cadadd90397278bf519db68db48a50f
Change-Id: I94e874e37cadadd90397278bf519db68db48a50f
2020-05-26 00:51:56 +00:00
Remi NGUYEN VAN
e878df691e Use Q permission on Q for startCaptivePortalApp
on Q startCaptivePortalApp was guarded by CONNECTIVITY_INTERNAL instead
of NETWORK_SETTINGS: change the permission adopted by shell on Q to
match the platform.

Test: atest CaptivePortalTest on a Q device
Bug: 150904735

Original-Change: https://android-review.googlesource.com/1316081
Merged-In: I24b6907d164aba07df0f5a1a3715669e99cddd88
Change-Id: I24b6907d164aba07df0f5a1a3715669e99cddd88
2020-05-26 00:51:39 +00:00
Remi NGUYEN VAN
8c91b0feaf Fix and deflake ConnectivityManagerTest
- Migrate the test to JUnit4, as JUnit3 cannot use assumeTrue
 - Skip IPv4 keepalive tests on networks that do not have native IPv4.
 - Refactor usage of adoptShellPermissionIdentity to use try / finally
   or runAsShellPermissionIdentity: test failures could lead to
   permission failures in other tests due to mismatched adopt/drop.
 - Fix ensureWifiConnected to support the "wifi enabled but not fully
   connected" case.

Bug: 150949391
Test: atest CtsNetTestCasesLatestSdk:ConnectivityManagerTest \
      --rerun-until-failure 50
Original-Change: https://android-review.googlesource.com/1310419
Merged-In: I7459753b1068e1760a95337760db58d1df213fad
Change-Id: I7459753b1068e1760a95337760db58d1df213fad
2020-05-26 00:48:51 +00:00
paulhu
5a86f4b18a Add a cts test for PermissionMonitor security problem
Add a cts test to check whether app can have netd sytem
permission even the app didn't grant the
CONNECTIVITY_USE_RESTRICTED_NETWORKS permission.

Bug: 144679405
Test: atest android.net.cts.ConnectivityManagerTest
Change-Id: I2c717a11bda43db166a55d343eb752ab45947fe8
Merged-In: I2c717a11bda43db166a55d343eb752ab45947fe8
(cherry picked from commit 1bc6b39789, ag/10285567)
2020-05-25 05:43:18 +00:00
TreeHugger Robot
ed6b680e0c Merge "Create NetworkAgent CTS for NET_CAP_TEMP_NOT_METERED" into rvc-dev 2020-05-21 05:30:50 +00:00
Sarah Chin
8e28d8789d Create NetworkAgent CTS for NET_CAP_TEMP_NOT_METERED
Test: atest NetworkAgentTest
Bug: 155993662
Change-Id: Ic968bf37075c23e9ea7d98eaec7f4f37d9ebc337
2020-05-20 18:58:21 -07:00
Sarah Chin
0a0d71f1ec Add cts for TEMPORARILY_NOT_METERED
Bug: 155993662
Test: atest NetworkRequestTest
Change-Id: I6838dff70e6608f166119b99750db3bc59c59e42
2020-05-20 15:03:38 -07:00
TreeHugger Robot
eded3fd9be Merge "Apply MainlineTestModuleController to tethering cts tests" into rvc-dev 2020-05-19 19:32:00 +00:00
Chen Zhu
f021c464fd Apply MainlineTestModuleController to tethering cts tests
to only run them when com.google.android.tethering is

installed on device. This does not change any existing CTS run.

The logic only applies when the test triggered by mts-tradefed

to make sure it runs appropriate set of tests against the device.

For example, the test will be skipped when running MTS on Q because

tethering and wifi are not on Q devices.

Bug: 154845935
Test: m mts && mts-tradefed run mts-tethering
Change-Id: I9e6bd60982d4ef67538ad506e7008366bbf35363
2020-05-19 18:04:33 +00:00
Remi NGUYEN VAN
e196a61cbb Fix CtsNetTestCasesLatestSdk fail on Q platform
The CtsNetTestCasesLatestSdk needs to build against platform (for hidden
API access), The JNI library libnativedns_jni used by
CtsNetTestCasesLatestSdk needs to build against stable SDK (for running
on Q). To fulfill the combination, property jni_uses_sdk_apis must be
set.

Bug: 151122313
Bug: 150904735
Bug: 150918852
Test: atest CtsNetTestCasesLatestSdk on R and Q platforms
Merged-In: I5db3cb28829847e74412d270db7d17b81c5e26a2
Change-Id: I8e9af302b487199b144f4fd791bc39d57f002fe2
(cherry picked from commit 452ef123caa60eeebc1744b14137197c47704d6b)
2020-05-19 10:10:15 +00:00
Luke Huang
ce6a5df073 Revert "Fix flaky test for DnsResolverTest"
This reverts commit dd9608b7d1147a4eaf36ea634b9fc2f0feca1145.

Reason for revert: This CL made whole test failed.

Bug: 153624005
Bug: 150952393
Bug: 151122313
Merged-In: I083529616dbf80421ea6a322bb57d2bb0f2bca62
Change-Id: I002c39d6535fb31b13bc463812517fe1882f1884
(cherry picked from commit 98015badd01863fa4a79c089f371d9a50f2ae98c)
2020-05-19 01:53:45 +00:00
Luke Huang
402077cc3a Fix flaky test for DnsResolverTest
It's possible that private DNS setting is not in the state we expected
when we tried to enable strict mode during tests. The problem here is
that there are 2 setting Uris(mode and specifier) relating to strict
mode, each of them might trigger private DNS setting changing evnet in
ConnectivityService.
Previously, we tried to enable strict mode with first set private DNS
mode and then private DNS specifier. This may result in 2 consecutive
private DNS changes events with very short intervals, which caused
conflicts between DnsResolver / NetworkMonitor and lead to flaky tests.

So
1. Change the order (mode and specifier) for enabling strict mode.
2. Change private DNS mode only when needed.
     (If original mode is "hostname", then we only need to set
     specifier)

Bug: 153624005
Bug: 153624702
Test: atest DnsResolverTest --rerun-until-failure 100
Merged-In: Iaed6285677f74a5ee6cc6684534ddc0758b25974
Change-Id: I566bdfa98dc070247b52fe29ca1f31cbd1bb8cc2
(cherry picked from commit 877af1ee3ed2c3a9e9256e216709908d2beb3bfb)
2020-05-18 02:40:06 +00:00
Paul Hu
c0f0623482 Merge "Address aosp/1272946 leftover comment" into rvc-dev 2020-05-18 01:37:41 +00:00
Kweku Adams
66c5773f79 Ensure airplane mode is off.
If the device is put into airplane mode before the network tests run,
the tests fail. This ensures that airplane mode is off before the tests
run.

Bug: 150788500
Test: atest CtsHostsideNetworkTests
Change-Id: I7a84be751e5e9efb534d48c6d8ff457875ebe716
2020-05-15 10:09:41 -07:00
Paul Hu
30e4e9a202 Address aosp/1272946 leftover comment
Verify that entitlement check bypass with TETHER_ERROR_NO_ERROR
response.

Bug: 152829363
Test: atests CtsTetheringTest
Change-Id: I6272d7b297bdf0e641612a09ffe12942cc2b42e1
Merged-In: I6272d7b297bdf0e641612a09ffe12942cc2b42e1
(cherry picked from commit 92133d472ffbe6301db00c93060d76d90cdd02d2, aosp/1307453)
2020-05-15 08:24:46 +00:00
Chiachang Wang
1621a260a2 Move testInvariantInCanBeSatisfiedBy to be its own test
Bug: 154451660
Test: atest CtsNetTestCasesLatestSdk:android.net.cts.NetworkRequestTest
Merged-In: Id65b7189202108b232905535587f8a282e48007b
Change-Id: Id65b7189202108b232905535587f8a282e48007b
2020-05-12 09:03:41 +00:00
Chiachang Wang
54978bda2d Use local defined NetworkSpecifier to verify test
Test will be affected by logic modification from different
NetworkSpecifiers. Since this test tries to test the behavior
of NetworkRequest but not NetworkSpecifier, use local defined
NetworkSpecifier to test to prevent repeating noisy breaks.
Also update test for testing invariant.

Bug: 154451660
Test: atest CtsNetTestCasesLatestSdk:android.net.cts.NetworkRequestTest
Merged-In: I7e357c75a68244432231d59646ddf67c8d969c6d
Change-Id: I7e357c75a68244432231d59646ddf67c8d969c6d
2020-05-12 00:51:06 +00:00
Lucas Lin
c06ab57a8d Merge "Refine NetworkCallbackTest" into rvc-dev 2020-05-08 05:33:29 +00:00
lucaslin
63203afe0e Refine NetworkCallbackTest
In R, to avoid data overages due to apps not detecting a
meteredness change, when a wifi network changes from unmetered
to metered the network will go down and will be replaced with a
new network. It will make NetworkCallbackTest fail because the
original design is getting the active network in setUp(). So once
the wifi reconnects, the network which is got in setUp() will be
meaningless and make the test fail due to network mismatches.
The new changes are:
1. Moving some initial pre-configurations into setUp().
2. Override the onCapabilitiesChanged() to check if network has
   changed to metered or not.
3. Add unregisterNetworkCallback() into iMyService.aidl so that
   NetworkCallbackTest can call it to unregister the network
   callback.
4. Enlarge the timeout of connecting network and receiving
   callback to prevent network cannot reconnect in time or
   callback cannot be received in a short time.

Bug: 153485744
Test: atest CtsHostsideNetworkTests:com.android.cts.net.HostsideNetworkCallbackTests
Change-Id: I1aa0e107cf6797b06dee4a15896c63321d822156
2020-05-08 11:02:46 +08:00
Mark Chien
a25d852b12 Tag CtsTetheringTest for sim card required
Bug: 155598732
Test: atest CtsTetheringTest
Merged-In: I79f841682049707d7cc26bf1ecc3e5affc86d196
Change-Id: I79f841682049707d7cc26bf1ecc3e5affc86d196
2020-05-07 10:32:38 +00:00
Kweku Adams
627f2b69ef Merge "Test that idle apps get network when device charges." into rvc-dev 2020-05-07 01:25:28 +00:00
Hai Zhang
9c3108c681 Merge "Declare MANAGE_EXTERNAL_STORAGE for test apps." into rvc-dev 2020-05-04 23:33:47 +00:00
Kweku Adams
efb1857443 Test that idle apps get network when device charges.
This is a partial revert of the change that removed the parole
(Icd7b6eff8777f9b53a10eca521b73988f58f2d84).

Bug: 151802309
Test: atest --rerun-until-failure 10 com.android.cts.net.HostsideRestrictBackgroundNetworkTests
Change-Id: I65f5ff20cdd342905e1afd1f4897017aa60682d3
2020-05-04 13:34:29 -07:00
evitayan
120a7db874 Initial CL for testing IkeSession creation
This commit:
-Extend TunUtils for processing IKE packets
-Add IkeSessionBaseTest containing common functionality for all IkeSession tests
-Add end-to-end test for IKEv2 PSK verifying creating IKE SA, creating child SAs
 and closing sessions
-Add basic tests for error scenarios

Bug: 148689509
Test: atest CtsIkeTestCases
Change-Id: Ie6c18591ffcc883abbf0484d9a59dfda61b33257
Merged-In: Ie6c18591ffcc883abbf0484d9a59dfda61b33257
2020-05-01 11:52:28 -07:00
Sudheer Shanka
e5f59b07cf Merge "Fix error message in RestrictBackgroundNetworkTest" into rvc-dev 2020-05-01 05:25:57 +00:00
Dominic Lemire
e4a9287bfe Fix error message in RestrictBackgroundNetworkTest
Fixed the error message when the expected number of broadcasts is exceeded.

Bug: 147139427
Test: atest hostsidetests/net/src/com/android/cts/net/HostsideRestrictBackgroundNetworkTests.java
Change-Id: I7e69dca81abdb29a9eb7d110266edbe483e17a01
Merged-In: I7e69dca81abdb29a9eb7d110266edbe483e17a01
2020-04-30 19:38:34 -07:00
Remi NGUYEN VAN
6163ee36c5 Merge "Add test for internet availability on portals" into rvc-dev 2020-05-01 00:32:35 +00:00
Remi NGUYEN VAN
320104e7cc Merge "Force reconnect in connectToWifi" into rvc-dev 2020-04-30 07:42:08 +00:00
Remi NGUYEN VAN
33a88fbf5f Force reconnect in connectToWifi
There is no guarantee that Wifi will automatically reconnect after
enabling, especially in cases where no internet access was detected on
the access point the last time it was connected.

Use WifiManager#reconnect to force wifi to reconnect to the access
point. The API is deprecated for general use, but system apps are
documented as exempted from the deprecation.

Bug: 152280218
Test: atest --rerun-until-failure 200 CtsNetTestCases:CaptivePortalTest
Merged-In: Ia7d83337ee0ffad9414031711cf7e937b14f968d
Change-Id: Ia7d83337ee0ffad9414031711cf7e937b14f968d
2020-04-30 06:22:04 +00:00
Chenbo Feng
70285ea6d9 Add a test to check getUidStats binder call
Check the apps cannot get the per uid stats of another uid by directly
calling the getUidStats binder interface call provided by
networkStatsService.

Bug: 129151407
Test: NetworkStatsBinderTest

Change-Id: Iabca53a8b37b259cf7e232d603676dbc9887084c
2020-04-30 13:53:47 +08:00
Remi NGUYEN VAN
388f7240c7 Add test for internet availability on portals
Add a test verifying that when the device has detected a captive portal,
or when the user is trying to login to a captive portal, the captive
portal network does not become the default network if another network
can provide internet access.
This follows R CDD requirements.

Test: atest CtsNetTestCases:android.net.cts.CaptivePortalTest
Bug: 152280218
Merged-In: I6a97ed26dba665efdc67abb2371e0fc30ede020c
Change-Id: I6a97ed26dba665efdc67abb2371e0fc30ede020c
2020-04-28 07:53:16 +00:00
Yan Yan
99662c49a7 Merge "Add test for IkeIdentification" into rvc-dev 2020-04-27 21:51:04 +00:00
Yan Yan
b921f9ead6 Add test for IkeIdentification
Bug: 148689509
Test: atest CtsIkeTestCases
Change-Id: Ieda584446c37d121fc16a212e2c6c60b934b0f53
Merged-In: Ieda584446c37d121fc16a212e2c6c60b934b0f53
(cherry picked from commit 923f59a282)
2020-04-27 17:02:35 +00:00
Yan Yan
fe6c2565da Test configuring digital-signature-based auth
Bug: 148689509
Test: atest CtsIkeTestCases
Change-Id: Ieaceaadf116cb2885cbf22ae48579cec88268416
Merged-In: Ieaceaadf116cb2885cbf22ae48579cec88268416
(cherry picked from commit ca5515626c)
2020-04-27 04:23:21 +00:00
Yan Yan
913ce19d40 Test building IkeSessionParams with EAP
Bug: 148689509
Test: atest CtsIkeTestCases
Change-Id: Iea7f4d14502f4b204c7a0d7357e1aaec99954e1f
Merged-In: Iea7f4d14502f4b204c7a0d7357e1aaec99954e1f
(cherry picked from commit 5ad4adaff6)
2020-04-27 04:21:47 +00:00
Yan Yan
5d8b8a1f71 Add initial CTS test for IkeSessionParams
This commit adds tests for building IkeSessionParams with PSK. It
also tests configuring SA lifetimes, retransmissions and PCSCF
server requests

Bug: 148689509
Test: atest CtsIkeTestCases
Change-Id: I16fdc1ff9a22acb82b376211e0f187c4ead4cae5
Merged-In: I16fdc1ff9a22acb82b376211e0f187c4ead4cae5
(cherry picked from commit c98c75308f)
2020-04-27 04:21:22 +00:00
Yan Yan
2b2db7a57f Make a copy of TunUtils and PacketUtils
Temporarily make copies. Eventually will statically include the
source files in CtsIkeTestCases

Bug: 148689509
Test: atest CtsIkeTestCases
Change-Id: I7dd5c8b849f0d987fa6d76bc5a0bc1a7eed49b0d
Merged-In: I7dd5c8b849f0d987fa6d76bc5a0bc1a7eed49b0d
(cherry picked from commit 52716ec0e6)
2020-04-27 04:20:30 +00:00
Yan Yan
35b779fd5a Merge changes I98979758,I1c49711d into rvc-dev
* changes:
  Create base class that sets up test network
  Create TestNetworkUtils for IKE and IPsec CTS
2020-04-27 02:53:29 +00:00
Yan Yan
323ec3a4f5 Merge "Add CTS for EapSessionConfig" into rvc-dev 2020-04-27 02:53:12 +00:00
Yan Yan
7db1b713ba Add CTS for EapSessionConfig
Bug: 148689509
Test: atest CtsIkeTestCases
Change-Id: I54dedff0555bdfcaae390ddde7b05d24dfabe9b0
Merged-In: I54dedff0555bdfcaae390ddde7b05d24dfabe9b0
(cherry picked from commit b6dff21134)
2020-04-24 22:30:04 +00:00
Yan Yan
de7f511bd1 Create base class that sets up test network
This class will be extended by both IkeSessionParamsTest and
IkeSessionTestBase

Bug: 148689509
Test: atest CtsIkeTestCases
Change-Id: I98979758a7a684219e35c02ded93224ea172d44f
Merged-In: I98979758a7a684219e35c02ded93224ea172d44f
(cherry picked from commit 50908b9266)
2020-04-24 22:20:57 +00:00
markchien
668dfa5998 Add testTetheringUpstream cts test
If cellular is the mobile network, tethering should select it as
upstream. If DUN is required, tethering should use DUN as its upstream.

Bug: 153614366
Bug: 150644305
Test: atest CtsTetheringTest

Change-Id: Ief9c745322e8705c0e50185e749a81c5a9d20743
Merged-In: Ief9c745322e8705c0e50185e749a81c5a9d20743
2020-04-24 22:31:01 +08:00
markchien
a6b3b70278 Test legacy tether/untether API and onError callback
Test legacy tether/untether API behavior. tether() rely on downstream
setup ready for tethering. Currently the only user is bluetooth
tethering. For other tetherings, there is no guaranteed that calling
tether() can always switch given interface to tethered. Tethering
may callback with onError depend on the interface status. Caller
should use startTethering/stopTethering API instead of these
legacy APIs.

This change also change the precondition verification of startTethering.
If tethering interface got error last time, such interface would not
be reported as tetherable.

Bug: 150632712
Test: atest CtsTetheringTest
Change-Id: Ifb3a0618208ffd0ff224c60f377036bc22ba0565
Merged-In: Ifb3a0618208ffd0ff224c60f377036bc22ba0565
2020-04-24 22:23:23 +08:00
TreeHugger Robot
25cd61eb7e Merge "Move DhcpInfoTest to FrameworksNetCommonTests" into rvc-dev 2020-04-24 06:15:12 +00:00
Mark Chien
f46d6a1e8d Test enable tethering permission and stopAllTethering
1. Test whether start tethering is gated by suitable permission.
2. Test stopAllTethering

Bug: 153613718
Test: atest CtsTetheringTest

Merged-In: I38702886ea355e1aec8eb8ac404fdd46a44582e3
Change-Id: I38702886ea355e1aec8eb8ac404fdd46a44582e3
2020-04-23 14:48:03 +00:00
Paul Hu
11fec376f5 Add TetheringCommonTests to CtsTetheringTest
Bug: 153614365
Bug: 153613717
Test: atest CtsTetheringTest
Change-Id: I26c06d522ef2935deb2b1abbd3c5b6be97a48a27
Merged-In: I26c06d522ef2935deb2b1abbd3c5b6be97a48a27
(cherry picked from commit 9903c8a61b, aosp/1292434)
2020-04-23 05:44:02 +00:00
Chiachang Wang
0d39e96477 Merge "Update logic for checking NetworkSpecifier" into rvc-dev 2020-04-23 02:27:03 +00:00