Commit Graph

52 Commits

Author SHA1 Message Date
Fan Zhang
aab36de0d6 Remove wrapper for device policy manager
Bug: 76167422
Test: robotests
Change-Id: I69dc7341cf1ff408bc24c2a062586cef25b7b918
2018-03-30 20:44:20 -07:00
Salvador Martinez
0ba2b2bd83 Make metered wifi controller resilient to null config
Apparently the wifi config can sometimes come back as null
initially when the device auto-connects to a network. This CL simply
makes the controller resilient to that so that it doesn't crash the
app.

Test: robotests
Bug: 73076869
Change-Id: I99098f35df9cd902f5f244a872cce9b71c17c224
2018-03-29 15:39:55 -07:00
Salvador Martinez
aea566d44e Update metered string
This CL updates the metered network string to say
'detect automatically' instead of 'network preference'

Bug: 68030417
Test: rototest, visual inspection
Change-Id: I347e3b89b014d7ec0d5d0e6601f2813a3a96f5ab
2018-03-20 10:55:00 -07:00
James Lemieux
22a39c2b93 Use external/robolectric-shadows/run_robotests.mk
This allows Settings to test against the latest framework changes.

Also replaced TestConfig with traditional robolectric.properties.

Bug: 73173204
Bug: 73892008
Test: make -j56 RunSettingsRoboTests
Change-Id: I3135b4fa5f095ba79b282a76f45dd9baa2584bc7
2018-03-04 03:50:08 -08:00
Leif Hendrik Wilden
28dee1f086 Migrate to use instrumentation classes from settingslib.
Test: Compiles. Manually tested.
Change-Id: I70a6e76cc8440547746ecc008c32bd06a7de8161
2018-01-24 12:30:39 -08:00
Leif Wilden
cab0ee611d Revert "Migrate to use instrumentation classes from settingslib."
This reverts commit 1546cca529.

Reason for revert: Broke fingerprint setup flow. b/72267201

Change-Id: I8321265ae64732c526325882ddea51080decddf5
2018-01-22 20:57:36 +00:00
Leif Hendrik Wilden
1546cca529 Migrate to use instrumentation classes from settingslib.
Test: Compiles. Manually tested.
Change-Id: Ie5515bb0fe3e621fc7723a9b04ba23e4bfa9c401
2018-01-18 11:13:24 -08:00
Fan Zhang
4e08869e1a Make a strong reference to LifecycleOwner in tests
Change-Id: Id3b26ded6c903b67b9880dbfe1a0656a564c8947
Fixes: 71867776
Test: rerun tests
2018-01-11 14:30:16 -08:00
jackqdyulei
261c29c485 Add wifi metered controls in wifi settings.
1. Add it in wifi detail page
2. Add it in wifi dialog
2. Remove it in "Mobile network" page

Bug: 68030417
Test: RunSettingsRoboTests
Change-Id: I2e001c55f3c6c75a660e429732dfbece97b0ca9e
2018-01-09 12:44:51 -08:00
jeffreyhuang
cbfb099a40 Rename SDK_VERSION_O to SDK_VERSION
Test: make RunSettingsRoboTests -j40
Change-Id: I6715062d8addadda441e32809db1af55f15e3a90
2017-12-05 16:43:54 -08:00
jeffreyhuang
71cf59e62f Move wifi test package to sdk 26
Test: make RunSettingsRoboTests -j40
Change-Id: I9ef0979a7c6c3647cedd48a2c6ab855928c1b57e
2017-12-04 16:18:55 -08:00
Pavel Grafov
d429225640 Block editing of locked down wifi network from details page.
Test: make ROBOTEST_FILTER=WifiDetailPreferenceControllerTest RunSettingsRoboTests
Bug: 68990370
Change-Id: Idceb064486afd93bc8b2f52d605a788520de8e56
2017-11-17 18:11:25 +00:00
Tony Mantler
94a7c7d21c Convert SettingsLib Lifecycle to Flatfoot
Bug: 69257739
Test: m -j RunSettingsRoboTests
Change-Id: I27e7850c39afb9c09297007e8cc352f410665653
2017-11-14 11:04:40 -08:00
Doris Ling
dee1a22c45 Consolidate all wrappers used for testing.
- Add the wrapper package and move all wrappers to the wrapper package.
- Get rid of some wrapper interface/impl implementation and have a
wrapper class directly.

Bug: 65634579
Test: make RunSettingsRoboTests
Change-Id: Ic757d8f7bacfa7a034c7e692205bc1dc4b0e1de1
2017-09-14 18:24:49 -07:00
TreeHugger Robot
e71fa15fe2 Merge "Add modify button to WifiNetworkDetailsFragment." 2017-09-12 19:35:29 +00:00
Erik Kline
c8e912e5c4 Merge "Include IPv6 DNS servers in wifi details" into oc-mr1-dev am: 1b62d99433
am: 775807f422

Change-Id: I55fbd611fee9f17215412a76b480cdee96f62b32
2017-09-11 05:04:28 +00:00
Erik Kline
9adc588749 Include IPv6 DNS servers in wifi details
Test: as follows
    - built
    - flashed
    - booted
    - export ROBOTEST_FILTER=WifiDetailPreferenceControllerTest \
          make -j RunSettingsRoboTests
      RunSettingsRoboTests:
      RunSettingsRoboTests: Time: 19.821
      RunSettingsRoboTests:
      RunSettingsRoboTests: OK (37 tests)
      RunSettingsRoboTests:
    - make -j RunSettingsRoboTests
      RunSettingsRoboTests: ...........................
      RunSettingsRoboTests: Time: 424.847
      RunSettingsRoboTests:
      RunSettingsRoboTests: OK (2250 tests)
      RunSettingsRoboTests:

Bug: 65037256
Bug: 65467586

Change-Id: Icd3d09aa35c04101c41e2521b48e64f28f69ae29
2017-09-11 11:24:45 +09:00
Eric Schwarzenbach
5a7e46dd80 Add modify button to WifiNetworkDetailsFragment.
Adds pencil icon to Wifi Detail action bar to modify the network.
Modifies package/public visibility to allow the detail package to
use the WifiDialog. Listens for changes in WifiConfigurations to
propagate changes to the UI in WifiNetworkDetailsFragment.

Changes WifiNetworkDetail preference launch to conform to pattern
of other Settings apps. Removes unused WifiDetailActionBarObserver.

Bug: 36483704, 37082355
Test: make -j40 RunSettingsRoboTests
Change-Id: Ie9dc1892eaefdfad4a6bd7040bfc5dbf6236cfb4
2017-09-08 13:39:22 -07:00
Charles He
0a72c23393 Merge "Enforce wifi config lockdown on details page." into oc-mr1-dev am: 10adff1163
am: e7cf5e6221

Change-Id: I356a58cadd3e19e61d9585f08e47c9d4cdcf4318
2017-09-06 16:12:08 +00:00
Charles He
289af93896 Enforce wifi config lockdown on details page.
Fixes the bug that, on the new WifiDetailPreference page, the "Forget"
button is not disabled properly for wifi configs created and protected
by DevicePolicyManger.

Robolectric test to follow in a separate CL.

Test: manual, by locking down wifi config with TestDPC
Test: make RunSettingsRoboTests
Bug: 64971700
Bug: 65396674
Change-Id: I27740eabd5eb94415e4258c9c80f91df2d9ab476
2017-09-06 15:58:14 +00:00
Sundeep Ghuman
3430553a2e Separate multiple DNS addresses with newlines. am: 2716e841be
am: cf37a26795

Change-Id: I61bcfc20d43133c12fb8fe78d7bd968af1ee59eb
2017-08-29 04:57:47 +00:00
Sundeep Ghuman
2716e841be Separate multiple DNS addresses with newlines.
Bug: b/65037256
Test: make -j40 RunSettingsRoboTests
Change-Id: I4b0709648f8e236177ea73338cfb0d42a5971c06
2017-08-28 18:47:48 -07:00
Eric Schwarzenbach
241cb0db02 Update detail icon only if its signal level changed.
Changes behavior to only render the wifi pie icon if the new rssi has
resulted in a new signal level.

Bug: 64712237
Test: make -j40 ROBOTEST_FILTER=WifiDetailPreferenceControllerTest
RunSettingsRoboTests

Change-Id: I01be2f87d61489242d646ff2003db13c9268ea14
2017-08-16 11:52:17 -07:00
Eric Schwarzenbach
27a1b76fdc Remove references to NetworkBadging.
Removes all references to the deprecated NetworkBadging class. Replaces
Badging enums with AccessPoint.Speed. Uses SettingsLib Utils class to
get the WifiIcons.

Note: This change depends on ag/2676505.

Bug: 62355275
Test: make -j40 RunSettingsRoboTests
Change-Id: If3301ce30e22a7b2cc4d534b0a89e6d7ddfef45b
2017-08-15 09:49:53 -07:00
Fan Zhang
2d28a4ceb4 Unify action buttons to a common widget (part 1)
- Create a preference type to host action button preferences.
- Convert app battery usage page to use the new preference
- Convert wifi detail page to use the new preference

Change-Id: I60bc473986ab46f2897e2537eb0e013fa813a4fc
Fix: 63991885
Test: robotests
2017-07-28 01:00:39 +00:00
Eric Schwarzenbach
f6c0004d91 Change header of wifi detail page to "Network info".
Creates a lifecycle observer to modify the action bar.

Bug: 37252029
Test: make -j40 RunSettingsRoboTests
Change-Id: Iff48ed51f533c3b7b2a099f83c3216ae975f061f
2017-07-14 09:16:30 -07:00
Sundeep Ghuman
d569195299 Use EntityHeaderController in WifiDetailPreferenceController.
Switch to the Entity header to bring parity in design of
WifiNetworkDetailsFragment and other Settings pages.

Bug: b/37252029
Test: make -j40 RunSettingsRoboTests
Change-Id: Ib11f3d37eac4dca08fa61eef67910cd328682bac
2017-07-05 12:54:38 -07:00
Andrew Sapperstein
9f1e911759 Refactor test runner to use static list of resource paths
Previously everything lived in an inner class method of
SettingsRobolectricTestRunner. That method has now been turned into
a static method so that it can be called by other runners.

Bug: 62460102
Test: robotests
Change-Id: I6612b1f26404587301c534c8ba60e39d59d6c840
2017-06-09 09:21:26 -07:00
Hugo Benichi
2c06009ad6 Instrument sign-in-captive-portal button
Bug: 36203355
Bug: 34901696
Bug: 36532213
Test: WifiDetailPreferenceControllerTest updated
Change-Id: I03dbcdd6efbd0d7aaf2ef67d541fceeb6acc2acf
(cherry picked from commit 539211a718)
2017-06-09 02:51:46 +00:00
Lorenzo Colitti
60c5313ff5 Merge "Wifi details: minor ordering fixes." into oc-dev am: 85395155fb
am: 1185ea72f2

Change-Id: Id2661d1f4edac5d987f122542176372b2f99ef3b
2017-06-06 22:40:32 +00:00
Lorenzo Colitti
acb76030de Merge changes I23540440,I67269e1a into oc-dev am: 4249a7092b
am: 844c385c09

Change-Id: I258837998e0c242d4c4dd4fb7c69da8049837173
2017-06-06 13:54:56 +00:00
Lorenzo Colitti
088215d877 Wifi details: minor ordering fixes.
1. Set mNetwork before the NetworkCallbacks can be delivered.
   Previously, the code would set mNetwork in updateInfo, relying
   on the fact that the BroadcastReceiver registered in onResume
   is immediately invoked. However, this races with the
   callbacks, which are also immediately invoked. If the
   callbacks won the race, mNetwork would not be set and they
   would be ignored.

2. Call updateInfo in onResume instead of in displayPreference.
   This ensures that it's always called exactly once before the
   activity starts running, regardless of whether it's being
   displayed the first time (i.e., after onStart) or resumed
   by switching from another app. displayPreference is only
   called in the former case.

3. Don't call getLinkProperties and getNetworkCapabilities in
   updateInfo. These calls are superfluous, because this
   information is update by the NetworkCallbacks, and they can
   cause jank because updateInfo is called on the UI thread.

This requires that the tests be changed so they always call
onResume, since no UI elements are populated until onResume is
called.

Bug: 62209358
Test: make -j64 RunSettingsRoboTests
Change-Id: Iccb1b9ae51188755d890a6df83004dbe9bec565e
2017-06-06 11:39:17 +09:00
Lorenzo Colitti
2561df8083 When validation state changes, update the AP summary.
This stops the AP summary from getting stuck on "Connected, no
Internet" even when the system has validated Internet access.

Bug: 62209358
Test: make -j64 RunSettingsRoboTests
Change-Id: I235404408f7d8b958653d25656d97da8206e35ce
2017-06-04 23:00:47 +09:00
Lorenzo Colitti
beafc36360 Minor tweaks to WifiDetailPreferenceControllerTest.
Add makeNetworkCapabilities and updateNetworkCapabilities
methods, and use them. These are not very useful in the current
code but we introduce in their own CL to limit test changes in an
upcoming CL that will make use them to test new code.

Bug: 62209358
Test: make -j64 RunSettingsRoboTests
Change-Id: I67269e1add40ecb3c2b693548e8bf29ae776a79f
2017-06-02 17:56:52 +09:00
Lorenzo Colitti
5692d23042 Merge changes from topic 'wifi_detail_jank' into oc-dev am: 0187221bd8
am: cc347f4e14

Change-Id: Idf82b916ae8121b837b7113af7ab182640124814
2017-06-02 06:27:13 +00:00
TreeHugger Robot
0187221bd8 Merge changes from topic 'wifi_detail_jank' into oc-dev
* changes:
  Reduce jank in the wifi detail status page.
  Improve testing of IP address display code.
2017-06-02 06:11:52 +00:00
Lorenzo Colitti
0bde06cd59 Reduce jank in the wifi detail status page.
Currently, when anything changes, the wifi detail status page
removes and then redraws all IP address information. This causes
the whole screen to flicker. Instead, only add and remove things
when they actually change.

In order to do this, convert the IPv6 addresses from a list of
Preference objects to a single newline-separated text field.
This removes the need to keep track of addresses as they are
added and deleted, and also looks a bit better.

Also, minor correctness fixes:
- Get the gateway from the default route, not from the last route
  with a non-null gateway.
- Get the IPv4 subnet mask from the IPv4 address prefix, not from
  the last route with prefix length > 0.

Bug: 62171690
Test: make -j64 RunSettingsRoboTests
Test: IP information does not flicker when signal strength changes
Change-Id: Ia9f2a277e53a2800407ae327701c5b95a9eec20a
2017-06-01 12:08:41 +09:00
Lorenzo Colitti
8b1926888f Improve testing of IP address display code.
This is a test-only change whose goal is to increase our
confidence in future changes that touch the actual code.

Bug: 62171690
Test: make -j64 RunSettingsRoboTests
Change-Id: Ic5122453c9fec2b166fcfe0c5c33be2705c10906
2017-05-31 18:35:37 +09:00
Hugo Benichi
2d31889379 Merge "Wifi details page: sign-in uses primary color" into oc-dev am: 0c5573a0e3
am: 5716f6cc7e

Change-Id: Ifb6f4a26fbbcd356f7fc0ff25c552cdd9da5c73d
2017-05-31 00:47:54 +00:00
Hugo Benichi
484140ba6e Wifi details page: sign-in uses primary color
Test: tested with nearby captive portals
Bug: 36203355
Bug: 36656914
Change-Id: I726f1226862150ba6875c20f919df91ca8043335
2017-05-29 22:22:27 +09:00
Maurice Lam
046400c2c4 Migrate settings robolectric tests to mockito 2
- Migrated ArgumentMatcher subclasses to lambdas
- Replaced any() with nullable() where tests were failing

Test: cd tests/robotests && mma
Bug: 38456058
Change-Id: Ice8c39b435c45b87f82dbbd9860e68f235314cf8
2017-05-24 15:14:31 -07:00
Juan Lang
777ed2535a Depend on SettingsLib's version of lifecycle and FooterMixin.
The implementations have been imported into SettingsLib. Setting's copy
can now be removed, which this change also does.

Test: Manually check battery status, which uses FooterMixin, looks OK.
make RunSettingsLibRobotTests && make RunSettingsRoboTests
     && make RunSettingsGoogleRoboTests
Change-Id: I6539605fdad80d156ff5ff249e68df4a1c412067
2017-05-12 11:10:46 -07:00
Amin Shaikh
dec19d10c2 Show "Forget" button for ephemeral networks.
- Move forget button preference handling logic to
WifiDetailPreferenceController
- Remove unnecessary updateInfo call in onResume since
NETWORK_STATE_CHANGED_ACTION is a sticky broadcast
- Populate network state fields and set up initial wifi state
when the Preference is displayed instead of waiting for onResume

Bug: 37751816
Test: m RunSettingsRoboTests && manually tested on device
Change-Id: I509013c72a0d26fc9a3feca564d92a0ab8414d1e
2017-05-03 21:17:25 -07:00
Lorenzo Colitti
b6245156f6 Add a "sign into network" button to the wifi details page.
Bug: 36203355
Test: manually signed into captive portal
Test: make -j64 RunSettingsRoboTests
Change-Id: I3242ef30125ddfdaaac9b80ead4f8ac14ea6d364
2017-05-03 22:14:08 +09:00
Sundeep Ghuman
6347e1b4b8 IPv6 addresses should not be selectable.
Disable selectable when adding ipv6 addresses to the
WifiNetworkDetailsPage.

Bug: b/37351354
Test: make RunSettingsRoboTests
Change-Id: I79bc3dcab7339df96598aa1a6505f0148f8844b0
2017-04-18 15:05:17 -07:00
Sundeep Ghuman
8474a9c877 Add a broadcast receiver to WifiDetailsPreferenceController.
This allows the WifiNetworkDetailsFragment to update dynamically based
on network and connection changes.

Bug: b/36278407
Test: make RunSettingsRoboTests
Change-Id: I388cf9842a144e45b68f2d173c7b29f347226b78
2017-04-12 17:56:58 -07:00
Amin Shaikh
399e1a5810 Wi-Fi network details page fixes.
- Fix NPE in WifiDetailPreferenceController#setIpText
- Add MAC address preference in the details section
- Set subnet mask and gateway preferences
- Do not show IP information preferences if no information is available
- Fix string capitalization errors
- Only show IPv4 DNS servers under "Network details" section

Bug: 36483230
Bug: 37096448
Bug: 36482499
Bug: 37165860
Test: m RunSettingsRoboTests
Change-Id: I0e3f0ccfc4a8d802b51ed6b3be81c75e384dd06f
2017-04-11 16:25:53 -07:00
Amin Shaikh
3c0d5ff3d1 Fix NPE when forgetting networks.
- Fixed disablement of ephemeral networks
- Exit out of the fragment when Forget is pressed

Bug: 36723238
Test: m RunSettingsRoboTests and manual testing
Change-Id: I83c09a44dbef0f02a452dc8c3163523a27bd4b63
2017-04-02 12:19:42 -07:00
Stephen Chen
c6453a5bca Add link speed to Wifi details page.
Also make detail items unselectable.

Bug: 36444504
Test: make RunSettingsRoboTests
Change-Id: I393a3a25c8c036da1df1dc2788accfecb3563e14
2017-03-29 16:28:08 -07:00
Amin Shaikh
ffd3197510 Fix forget button on wifi details page.
- Corrected logic for forgetting the current network in the network
details page
- After a user has forgotten a network, the button becomes disabled
(TODO final UX on this - go/remaining-wifi-picker-work tracks this)
- Added unit tests for forgetting network flow
- Fixed bug where the current tethering WifiConfiguration was associated
with the currrent network

Bug: 36458941
Test: m RunSettingsRoboTests
Change-Id: Ie3c4bae8b295908b17179e60359c8bc599519744
2017-03-27 16:10:33 -07:00