Commit Graph

4319 Commits

Author SHA1 Message Date
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
Remi NGUYEN VAN
203e783ccd Merge "Fix test initialization errors on Q" into rvc-dev 2020-04-23 02:10:04 +00:00
Treehugger Robot
36e4781181 Update logic for checking NetworkSpecifier
We cannot test using WifiNetworkSpecifier, because the matching
behaviour for null WifiNetworkSpecifier changed between Q and R.
Replace WifiNetworkSpecifier with MatchAllNetworkSpecifier and
TelephonyNetworkSpecifier that behave the same in both Q and R
to verify.

Bug: 154451660
Test: atest CtsNetTestCasesLatestSdk:android.net.cts.NetworkRequestTest
      on aosp and internal build
Change-Id: I14e2a5e629051e243f3b892b608cb1c6195cd8ed
Merged-In: I14e2a5e629051e243f3b892b608cb1c6195cd8ed
(cherry picked from commit 902d572ca8)
2020-04-23 00:40:37 +00:00
Hai Zhang
59b9da9907 Declare MANAGE_EXTERNAL_STORAGE for test apps.
That has requested legacy external storage and targets R or
beyond. TestDevice automatically grants the app op during test app
installation but the permission declaration should still be there.

Also added some other missing app op permission declarations according
to test failure.

Fixes: 149765004
Test: Ensure the same set of tests pass with the following command:
Test: atest ExternalStorageHostTest StorageHostTest
Test: Ensure apps printed in the following command targets below R:
Test: find . -type f -exec grep -q 'android:requestLegacyExternalStorage' {} \; -not -exec grep -q 'MANAGE_EXTERNAL_STORAGE' {} \; -print
Test: presubmit
Exempt-From-Owner-Approval: This CL just adds a <uses-permission> line
                            across a number of test apps. Storage team
                            and most owners have approved this change.
Change-Id: I839a23b28b29118baae7a8c309f7bd4de698419b
2020-04-22 21:20:40 +00:00
Chiachang Wang
1136e51d55 Check target transport type for meterness change
When test case updates the wifi network from unmetered to
metered, test case will wait for wifi network reconnect.
However, if other metered networks are also connected at
the same time, test case may mis-take the network as the
target network. Thus, add transport type check to ensure
the transport type of the network is the expected one.

Bug: 153400606
Test: atest CtsNetTestCasesLatestSdk:\
      android.net.cts.ConnectivityManagerTest#\
      testGetMultipathPreference
Change-Id: I75dab1a00bbe1a1c75b548a6ce4ae3eacd325d92
Merged-In: I75dab1a00bbe1a1c75b548a6ce4ae3eacd325d92
(cherry picked from commit 495971d7b6abc65e6d506072038f499682f59f4d)
2020-04-22 07:52:57 +00:00
Remi NGUYEN VAN
e96bd02054 Fix test initialization errors on Q
ConnectivityDiagnosticsManagerTest, MultinetworkApiTest,
NetworkAgentTest crashed before the runner could start them:
 - Ignore ConnectivityDiagnosticsManagerTest on Q: it tests an API that
   was introduced in R.
 - Build JNI libraries used by MultinetworkApiTest against the NDK to
   avoid errors loading the libraries on older platforms, when
   transitive dependencies have been added.
 - Do not attempt to override Handler#getLooper() (which is final) in
   NetworkAgentTest; it appears to have been overridden by accident by
   specifying "val looper" in the TestableNetworkAgent definition, which
   generates a getter.

Test: atest CtsNetTestCasesLatestSdk:ConnectivityDiagnosticsManagerTest
      atest CtsNetTestCasesLatestSdk:MultinetworkApiTest
      atest CtsNetTestCasesLatestSdk:NetworkAgentTest
Bug: 150918852
Merged-In: I262b54c6897ed755adaeb2b118c638320634f7a1
Change-Id: I262b54c6897ed755adaeb2b118c638320634f7a1
2020-04-21 13:40:28 +00:00
Junyu Lai
6f8e612264 Remove upper bound check of getTotal* APIs in TrafficStatsTest
Currently, this cause flakiness since some background traffic
was counted when performing tests, or the traffic generated by
adb over network. While there is no good way to filter out all
reasonable cases, disable the upper bound checks.

Test: atest TrafficStatsTest
Bug: 142978584

Change-Id: I22edc46039bf35e544d9ce8a9f3a00b713478e05
Merged-In: I22edc46039bf35e544d9ce8a9f3a00b713478e05
Merged-In: I8140310c9caeff6069d1f55590bf40f83bf211e4
(cherry picked from commit 8accc6aa11213a7a8287a2ec0f75f17a02173f99)
2020-04-21 04:32:05 +00:00
Chiachang Wang
3ee47d4233 Update network object when wifi meterness is changed
The new wifi disconnect behavior is introduced. When wifi
network is changed from unmetered to metered, the wifi
network will disconnect and reconnect. Update the test to
verify the same SSID wifi is connected and also update the
target network to verfiy the metered preference.

Bug: 153400606
Test: atest CtsNetTestCases:android.net.cts.ConnectivityManagerTest\
      #testGetMultipathPreference
Change-Id: Ic298d3d85d8c6b77c8df7614a945f2c22dcdff38
Merged-In: Ic298d3d85d8c6b77c8df7614a945f2c22dcdff38
(cherry picked from commit 37d5d4387cce865d159e80e5101685b4c2a13731)
2020-04-21 01:35:49 +00:00
Remi NGUYEN VAN
958e8d1ceb Skip new UrlQuerySanitizer tests on Q
The tests verify behavior that was only fixed on R, but
UrlQuerySanitizerTest is part of MTS which needs to pass on Q.

Test: atest CtsNetTestCasesLatestSdk:UrlQuerySanitizerTest
Bug: 150904735
Change-Id: I214b2fd8a45732a41e8604db70c83a8e3f4a45e4
2020-04-20 18:51:17 +09:00
Aaron Huang
170e873442 Move DhcpInfoTest to FrameworksNetCommonTests
Move to frameworks/base/tests/net/common so that it can
be run in cts test and presubmit test.

Bug: 154299158
Test: atest CtsNetTestCasesLatestSdk:android.net.DhcpInfoTest
Change-Id: I1052c2b46ce427102429c3c7d8cf25f3e79f2789
Merged-In: I8d70565fe3388fd8351002f2ed87c43343879e57
2020-04-17 17:39:18 +00:00
Aaron Huang
d1e528ae9c Add test for NetworkRequest#getRequestorUid()
Add test for new API.

Bug: 151110379
Test: atest CtsNetTestCasesLatestSdk:android.net.cts.NetworkRequestTest
Change-Id: I9602cac142b3e45d12e66a6f3f35ab594e6590c1
Merged-In: I9602cac142b3e45d12e66a6f3f35ab594e6590c1
2020-04-17 14:32:26 +00:00