Commit Graph

63 Commits

Author SHA1 Message Date
Erik Kline
ee929e69fb Merge "Add test for repeated calls to registerMobileUpstreamRequest()" am: 603eefd5d5 am: 180a3d07a8 am: d85f448274
am: 2ebea21074

Change-Id: I2e0ab82edd8997188c8c16dce6373ccb19657e3d
2017-02-02 16:52:43 +00:00
Erik Kline
2ebea21074 Merge "Add test for repeated calls to registerMobileUpstreamRequest()" am: 603eefd5d5 am: 180a3d07a8
am: d85f448274

Change-Id: Ia629aa5dbdf10566c28525d9a05b096482db3f2d
2017-02-02 05:25:05 +00:00
Erik Kline
180a3d07a8 Merge "Add test for repeated calls to registerMobileUpstreamRequest()"
am: 603eefd5d5

Change-Id: I6b2a0d6df70df028ef9b8ff5d689c5a627d8daf8
2017-02-02 05:15:23 +00:00
Erik Kline
7462f467c1 Add test for repeated calls to registerMobileUpstreamRequest()
Test: as follows
    - built
    - flashed
    - booted
    - runtest framework-net passes
Bug: 32163131

Change-Id: I6d2519601b7a9dcfda2917118214a7ceb9dbbb7f
2017-02-01 21:30:15 +09:00
Erik Kline
e17a1754ed Merge "Switch to listening for all network changes." am: 085ffa76fa am: 46f8abd229 am: 118c0c9e7d
am: 8aba32468a

Change-Id: I00951c996b04124f3d8fba83802e3610e7b0e6e3
2017-01-27 19:39:31 +00:00
Erik Kline
8aba32468a Merge "Switch to listening for all network changes." am: 085ffa76fa am: 46f8abd229
am: 118c0c9e7d

Change-Id: I82ac34a2f846f4ebe164e4190716559186204934
2017-01-27 19:33:16 +00:00
Erik Kline
46f8abd229 Merge "Switch to listening for all network changes."
am: 085ffa76fa

Change-Id: I87157788c5c2dc1015f9518c1c443256cfd30bae
2017-01-27 19:14:39 +00:00
Erik Kline
d2ec3919cb Switch to listening for all network changes.
This is for use while preferred upstreams are expressed as legacy types.

Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
    - USB tethering to WiFi and DUN works
Bug: 32163131
Change-Id: I76e7b6c95eb1b54e926096b2791163617bb0a818
2017-01-26 20:50:51 +09:00
Hugo Benichi
352147a308 frameworks-test: adding missing @SmallTest
This activates all frameworks-test tests in runs of the continuous
platform tests.

Test: $ runtest frameworks-net passes (expect Tether
Bug: 32561414
(cherry picked from commit fa8a6f6220)

Change-Id: I7b0706a7e3368f971d508388e8ad4afc5de9d646
2017-01-26 18:52:45 +09:00
Hugo Benichi
222ebe48ba Netd events: record connect() success/errno
Test: $ runtest frameworks-net pass
Bug: 32198976

(cherry picked from commit 8b06bcdfd2)

Change-Id: Ib3be06d2678c3fcfe4fa9d7b77f50c6e8812db3d
2017-01-26 18:52:41 +09:00
Tony Mak
094fbe6719 Show notification for always-on app VPN
This is the same notification as the one shown during legacy lockdown
mode, sans the 'reset' button.

The notification is only shown during times when VPN has not yet
established or has failed, for example during boot or after a crash.

Bug: 29123115

(cherry picked from commit 1a405fe300)

Change-Id: I929a05c24df01e21415535a333bb14ac4b790a9d
2017-01-26 18:52:35 +09:00
Hugo Benichi
728842ad47 IpConnectivityMetrics reads buffer size in settings
Test: IpConnectivityMetricsTest passes. Also manually changed the new
setting and verified the buffer size is as expected after flushing the
buffer.
Bug: 32198637

(cherry picked from commit 05686dbb6b)

Change-Id: Iefbeac3a688b260fb3f92dfe0bfd9db28e26749d
2017-01-26 18:51:30 +09:00
Hugo Benichi
d19752c3d0 IpConnectivity metrics: add version number
This patch adds a version field to ipconnectivity.proto and populates it
to 2, which is the logical version number for NYC-MR2.

Test: IpConnectivity{EventBuilder,Metrics}Test pass
Bug: 32127906

(cherry picked from commit d680d4c856)

Change-Id: If8f167c0dc4c1abe0e235e2adfd131168a4ddc52
2017-01-26 18:51:18 +09:00
Lorenzo Colitti
f537c5eb74 Unbreak TetherInterfaceStateMachineTest.
This was broken by the implementation of IPv6 tethering, which
relies on various private classes which end up calling unmockable
final classes like NetworkInterface.

Making everything public like this is almost certainly not the
best way of fixing this test, but on the other hand there is
value to the test continuing to pass.

Test: runtest frameworks-net  # Everything passes.
Test: IPv6 tethering continues to work.

(cherry picked from commit 7e0eeca8ba)

Change-Id: I8a3cf466871c026f4ae0f5cfa73071338cdf5b7e
2017-01-26 18:51:09 +09:00
Lorenzo Colitti
47a44ba2b1 Move the connectivity tests to frameworks/base/tests/net.
This will give us a good place to put all the networking tests.

Fix: 31479480
Test: adb  shell am instrument -w -e notClass com.android.server.connectivity.tethering.TetherInterfaceStateMachineTest 'com.android.frameworks.tests.net/android.support.test.runner.AndroidJUnitRunner'  # PASS

(cherry picked from commit ecc986d430)

Change-Id: I993eeaa5dec001c39389023f355f506129b356e7
2017-01-26 18:50:59 +09:00
Hugo Benichi
141923e5b6 DO NOT MERGE frameworks-test: adding missing @SmallTest
This activates all frameworks-test tests in runs of the continuous
platform tests.

Test: $ runtest frameworks-net passes (expect Tether
Bug: 32561414

(cherry picked from commit fa8a6f6220)

Change-Id: I84f9aecfbf9ebe07c6fcfec26acb2c2cfaae2d60
2017-01-24 15:42:45 +09:00
Erik Kline
dca8251d5a Merge "Add test for updateMobileRequiresDun()" am: 7f018500dc am: 2a3338084a am: 503374c0ae
am: 552f5620d1

Change-Id: Ib90e5f3ede42ae435ce5da1ebf89be5863601eae
2017-01-23 11:13:04 +00:00
Erik Kline
552f5620d1 Merge "Add test for updateMobileRequiresDun()" am: 7f018500dc am: 2a3338084a
am: 503374c0ae

Change-Id: I25751833ed6623ab156156fc76aa23b158a60fb4
2017-01-23 11:06:06 +00:00
Erik Kline
2a3338084a Merge "Add test for updateMobileRequiresDun()"
am: 7f018500dc

Change-Id: Ic7b984105e2c245a992446e15d11dd19e4671a57
2017-01-23 10:53:11 +00:00
Erik Kline
973c7df054 Add test for updateMobileRequiresDun()
This test validates that when a mobile upstream has been requested
changing the "DUN required" state results in updating the requested
network appropriately.

Test: as follows
    - built
    - flashed
    - booted
    - runtest frameworks-test passes
Bug: 32163131

Change-Id: Ia3a1f6493ea348eb75e334344468a980206f618f
2017-01-23 17:47:22 +09:00
Erik Kline
8512304390 Merge "Address a few unittest comments." am: 9c3a298748 am: d4d464ae2c am: 8de6457414
am: d870ed9e26

Change-Id: Ifd4c7e8ec13d24e5c58f727c9a2e3f1521643e4c
2017-01-21 05:05:22 +00:00
Erik Kline
d870ed9e26 Merge "Address a few unittest comments." am: 9c3a298748 am: d4d464ae2c
am: 8de6457414

Change-Id: I007c10df7bd3658453cb245d11f5b606ac70e0b3
2017-01-21 04:57:32 +00:00
Erik Kline
d4d464ae2c Merge "Address a few unittest comments."
am: 9c3a298748

Change-Id: I2d41cdbe05653bcbed9d3b38b440c06b98006809
2017-01-21 04:43:27 +00:00
Erik Kline
b7200f92fa Merge "Address comments from previous change (320592)" am: e7cb6c3761 am: b6f606b59f am: 454a408717
am: 430b1ff0f0

Change-Id: I488ec47172c48f2965b33fc484a26f395aa48a29
2017-01-20 10:18:52 +00:00
Erik Kline
430b1ff0f0 Merge "Address comments from previous change (320592)" am: e7cb6c3761 am: b6f606b59f
am: 454a408717

Change-Id: I374c8c63e4fb3310c3c50cc531a65005991c2fe2
2017-01-20 10:14:50 +00:00
Erik Kline
35eee13df4 Address a few unittest comments.
Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
Bug: 32163131
Change-Id: I8f6002243031dceff60b3d6d377b9e25f239eb23
2017-01-20 19:13:20 +09:00
Erik Kline
b6f606b59f Merge "Address comments from previous change (320592)"
am: e7cb6c3761

Change-Id: I3266a02a4a2fd76c4bb2f1a744103add63307e26
2017-01-20 10:04:51 +00:00
Treehugger Robot
e7cb6c3761 Merge "Address comments from previous change (320592)" 2017-01-20 09:57:27 +00:00
Erik Kline
efdd3f4ce0 Address comments from previous change (320592)
Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
    - vanilla wifi-to-mobile tethering works
Bug: 32163131

Change-Id: I8788cb0d93606a2893c3dbc4f22e72f450f319b8
2017-01-20 16:31:29 +09:00
Hugo Benichi
55b5f0f9eb DO NOT MERGE Unit tests for NetworkNotificationManager
Test: new unit test, no functional changes.
Bug: 32198726

(cherry picked from commit 74264329da)

Change-Id: I123de68de9ae353b95edce89eb570cfbb5f8d9a3
2017-01-20 15:08:38 +09:00
Lorenzo Colitti
5db17efcf6 Merge changes from topic 'net-update-mr2-dev-plus-aosp' into nyc-mr2-dev-plus-aosp
* changes:
  DO NOT MERGE: Add IP conn metrics to dumpsys and bug reports
  DO NOT MERGE: Add missing dependency.
  DO NOT MERGE: Show notification for always-on app VPN
  DO NOT MERGE: Implement metered tracking for NetworkStats summary queries.
  DO NOT MERGE: ConnectivityServiceTest: fix testAvoidBadWifiSettings
  DO NOT MERGE: Fix ConnectivityServiceTest testRequestBenchmark
  DO NOT MERGE: Switch over to new "time.android.com" NTP pool.
  DO NOT MERGE: Define API for metering network stats buckets.
  DO NOT MERGE: Refactored NetworkStatsServiceTest to use Mockito instead of EasyMock.
  DO NOT MERGE: Use @Ignore to explicitly disable a @Test method.
  DO NOT MERGE: Fixed NetworkStatsServiceTest and converted it to JUnit4.
  DO NOT MERGE: ConnectivityThread: use lazy holder idiom
  DO NOT MERGE: ConnectivityManager: use ConnectivityThread looper
  DO NOT MERGE: ConnectivityManager: a simpler CallbackHandler
  DO NOT MERGE: Indicate the NsdServiceInfo attributes are only filled in for a resolved service.
  DO NOT MERGE: Add a null check for the OnStartTetheringCallback.
  DO NOT MERGE: [CS] Remove timeout event after first available
  DO NOT MERGE: ApfTest: tag tests with @SmallTest or @MediumTest
  DO NOT MERGE: Unbreak TetherInterfaceStateMachineTest.
  DO NOT MERGE: Move the connectivity tests to frameworks/base/tests/net.
  DO NOT MERGE: De-guava BroadcastInterceptingContext and move it to testutils.
  DO NOT MERGE: Move FakeSettingsProvider to a common location.
  DO NOT MERGE: ConnectivityServiceTest: mark flaky test as such
  DO NOT MERGE: Add fuzzing tests to ApfFilter RA processing
  DO NOT MERGE: Support timeouts for requestNetwork() invocations.
  DO NOT MERGE: Silence the obnoxious MTU 0 error message that occur when no MTU is specified for a given network.
2017-01-18 10:29:57 +00:00
Tony Mak
b31b83377b DO NOT MERGE: Show notification for always-on app VPN
This is the same notification as the one shown during legacy lockdown
mode, sans the 'reset' button.

The notification is only shown during times when VPN has not yet
established or has failed, for example during boot or after a crash.

Bug: 29123115

(cherry picked from commit 1a405fe300)

(cherry picked from commit de7f7d195e)

Change-Id: I42b4b24e25175bb7628b46a79431d2592644803c
2017-01-18 19:08:44 +09:00
Lorenzo Colitti
144223318c DO NOT MERGE: Unbreak TetherInterfaceStateMachineTest.
This was broken by the implementation of IPv6 tethering, which
relies on various private classes which end up calling unmockable
final classes like NetworkInterface.

Making everything public like this is almost certainly not the
best way of fixing this test, but on the other hand there is
value to the test continuing to pass.

Test: runtest frameworks-net  # Everything passes.
Test: IPv6 tethering continues to work.

(cherry picked from commit 7e0eeca8ba)

(cherry picked from commit 5bce5a16b1)

Change-Id: I3f399188f77fe3e5249443dcb61018a22c29d857
2017-01-18 19:08:07 +09:00
Lorenzo Colitti
2fbc934cd9 DO NOT MERGE: Move the connectivity tests to frameworks/base/tests/net.
This will give us a good place to put all the networking tests.

Fix: 31479480
Test: adb  shell am instrument -w -e notClass com.android.server.connectivity.tethering.TetherInterfaceStateMachineTest 'com.android.frameworks.tests.net/android.support.test.runner.AndroidJUnitRunner'  # PASS

(cherry picked from commit ecc986d430)

Change-Id: I4c417c2ba0747d2085169e47ae4a99e93c4d8814
2017-01-18 19:08:05 +09:00
Erik Kline
388f31e16e Merge "Restore legacy types when registering mobile requests" am: 85f67dc60a am: 47453e01cb am: 1a1a7f6e75
am: 7ae809eea6

Change-Id: I17e7bae58cc75bd176c57324f446552950e3682e
2017-01-18 09:56:45 +00:00
Erik Kline
47453e01cb Merge "Restore legacy types when registering mobile requests"
am: 85f67dc60a

Change-Id: I124d28e85711f81216e552bb93dd1994081c9452
2017-01-18 09:41:00 +00:00
Erik Kline
dd8e8911c6 Restore legacy types when registering mobile requests
Test: as follows
    - built (bullhead)
    - flashed
    - booted
    - runtest frameworks-net passes
    - vanilla wifi to mobile tethering (no DUN)
    - tested with DUN by:
        - adding "dun" to the APN type
        - adb shell settings put global tether_dun_required 1
        - verified the bug exists without this fix
Bug: 32163131
Bug: 34364553
Change-Id: Idf1a9a2c8191c40abed29e1789f62aefb83ed1ce
2017-01-18 17:27:31 +09:00
Erik Kline
c154018081 Merge "Start of UpstreamNetworkMonitor unittests" am: f9a28d7ba4 am: 4bb6f5a418 am: 5eba88cf44
am: abeb9205fe

Change-Id: Ib1f2f813eec62e702455d60946f7d4d789ff9c88
2017-01-17 06:57:59 +00:00
Erik Kline
4bb6f5a418 Merge "Start of UpstreamNetworkMonitor unittests"
am: f9a28d7ba4

Change-Id: I2dade79427530a04c8e222e4ab2bf26e79ddd578
2017-01-17 04:46:17 +00:00
Erik Kline
885a9098cf Start of UpstreamNetworkMonitor unittests
Test only the ConnectivityManager request and callback registering
and releasing.  Testing behaviour triggered by activating these
callbacks will be in a separate change.

Test: runtest frameworks-net
Bug: 32163131
Change-Id: Ibfe66bbe2e61d81e8f13ac3b98e000d0d4534efa
2017-01-17 11:08:29 +09:00
Hugo Benichi
84f43a3e15 Merge "IP connectivity metrics: fix tests" 2017-01-16 08:28:47 +00:00
Hugo Benichi
a5bf819216 Stricter NetworkNotificationManagerTest
This patch changes NetworkNotificationManagerTest to populate extraInfo
of NetworkInfo in order to catch regressions in malformed format Strings
of log statements in NetworkNotificationManager.

Test: verified that the test fails when reintroducing the format String
bug.
Bug: 33737715

(cherry picked from commit a865790a5b)

Change-Id: Ic2f23e860a17cb83b90edcfd2ba365134cacfe36
2017-01-16 15:15:26 +09:00
Hugo Benichi
1af06a6e09 IP connectivity metrics: fix tests
Change 4e89a02629 did not update the unit
tests checking serialization of ipconnectivity.proto protobufs.

This patch updates the tests expectations to make them pass again

Test: $ runtest frameworks-net
Bug: 34232829
Change-Id: Iccc4e1a7714c9ce1eba995dc47a2961216efc87d
2017-01-16 14:42:56 +09:00
TreeHugger Robot
87a66afec2 Merge "IP Connectivity metrics: add connect() statistics" 2016-12-15 16:09:18 +00:00
Hugo Benichi
0d4a398b78 IP Connectivity metrics: add connect() statistics
This patch adds a ConnectStats class to aggregate connect() statistics
gathered in NetdEventListenerService. ConnectStats is uploaded once a
day by IpConnectivityMetrics.

Test: $ runtest frameworks-net + new unit test
Bug: 32198976
Change-Id: Iea63339035415513a5ba0ff4b8f4d79f75fc652d
2016-12-15 22:53:53 +09:00
Hugo Benichi
fb2609d3ee Network notifications: revamp keying scheme
This patch changes the (tag: String, id: Int) keying scheme for network
notifications so that TRON notification counters can count network
related notifications unambiguously.

TRON instruments all notifications shown for package "android" as well
as user interactions with these Notifications. These counters are
grouped by id. However the network notifications ("no internet" dialog,
"captive portal sign in" dialog, ...) use a static tag and a dynamic id
for keying notifications, preventing the counters to correctly
aggregate. In addition there is also the risk of collision with other
SystemUi notification ids not managed by NetworkNotificationManager.

In order to make the TRON counters useful for network notifications,
the id is now encoding the network notification type in a stable way
while the tag is used to uniquely identify network notifications.

Test: change covered by previously added new unit tests.
Bug: 32198726
Bug: 33030620
Change-Id: I1201d1d4fab8183dd83449c2afb2c35cfece883f
2016-12-15 10:31:38 +09:00
Hugo Benichi
28d240c72d Merge "Fix IP connectivity metrics tests" 2016-12-13 03:56:53 +00:00
Hugo Benichi
cfcc1cb7bf DO NOT MERGE: frameworks-test: adding missing @SmallTest
This activates all frameworks-test tests in runs of the continuous
platform tests.

Test: $ runtest frameworks-net passes (expect Tether
Bug: 32561414
(cherry picked from commit fa8a6f6220)

Change-Id: I7b0706a7e3368f971d508388e8ad4afc5de9d646
2016-12-09 14:35:05 +09:00
Hugo Benichi
5d0f28c7fd DO NOT MERGE: Netd events: record connect() success/errno
Test: $ runtest frameworks-net pass
Bug: 32198976

(cherry picked from commit 8b06bcdfd2)
2016-12-09 14:34:39 +09:00
Tony Mak
de7f7d195e DO NOT MERGE: Show notification for always-on app VPN
This is the same notification as the one shown during legacy lockdown
mode, sans the 'reset' button.

The notification is only shown during times when VPN has not yet
established or has failed, for example during boot or after a crash.

Bug: 29123115

(cherry picked from commit 1a405fe300)

Change-Id: I929a05c24df01e21415535a333bb14ac4b790a9d
2016-12-09 14:23:10 +09:00