Commit Graph

48 Commits

Author SHA1 Message Date
Fan Wu
e2b861dce0 Re-enable failed test in FactoryResetPreferenceControllerTest
Bug: 314930928

Test: atest
Change-Id: Icb93a6e01310172d6f51fe332c2ea4cdf6b0c1c5
2024-03-21 19:00:06 +08:00
Omer Ozer
acb58ebf42 Add factory reset wizard test coverage to
factory reset preference controller

Bug: 305244192
Test: RunSettingsRoboTests
Change-Id: I0c0a67b41cc73589863a71e24617451f5b49de5e
2024-01-16 23:25:52 +00:00
Yanting Yang
a7573a1f5e Ignore failing test of FactoryResetPreferenceControllerTest
Bug: 314930928
Test: atest
Change-Id: I0d5d88754ec8dcd9ee3dc05020382a2095c4256b
2023-12-05 20:04:36 +08:00
Chaohui Wang
cda836fff7 Move SystemUpdateManager.retrieveSystemUpdateInfo
Into Kotlin Coroutine for true async.

Bug: 300851543
Test: manual - on system page
Test: unit test
Change-Id: Ibec5c9d0934d71ed1a5808cadf3b3542eb3d5fa0
2023-09-19 14:54:41 +08:00
Wentao Wang
f11e1666bf Merge "Separate the demo user factory reset option with admin user factory reset option." into udc-qpr-dev am: 38f12abb75 am: 0d3ae3ed32
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24677431

Change-Id: Ie89643b620ee82e4f30ab98ca466f54bd68b8067
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-09-13 13:53:24 +00:00
Wentao Wang
a44e75d6ed Separate the demo user factory reset option with admin user factory reset option.
A security vulnerability was discovered by Android security. b/292548775 Within a short period of time after the device reboot, the user could enter the settings page and factory reset the device. Android Enterprise suggests to add DISALLOW_FACTORY_RESET user restriction to the device.

However, DISALLOW_FACTORY_RESET will be enabled on all Android users, including both the admin user and the demo user. The existing behavior in Android settings is that once the user restriction is set, factory reset button will be greyed out, which makes the factory reset functionality in demo user go away.

In demo user, the factory reset command will be forwarded to the current active device owner. So in this change, we separate the button for admin user and the button for demo user.

In demo user, the button is still visible when the restriction is set.

And in admin user, the button will be greyed out as expected.

Once this change is in, then Pixel Retail Demo could set the user restriction properly and rely on its internal logic to do factory reset. If other applications are trying to do the factory reset, it will be denied by OS.

BUG: 292548775
Change-Id: I9d2d47bb29bc2c1e05058b246908768cd2f95990
2023-09-13 11:47:11 +00:00
Eric Rahm
802b922593 Revert "Test Fix SettingRobolectricTest Fail"
This reverts commit 818f77cd1f.

Reason for revert: Underlying issue fixed in ag/23454315.

Bug: b/275023433
Test: atest SettingsGlobalRoboTests

Change-Id: I1af272efd00b3c5bd35310512f5712d5d1c7d834
2023-09-11 13:38:36 +00:00
Chaohui Wang
2e4141e4ab Clean up AwareFeatureProvider from Settings
Bug: 287566056
Test: m Settings
Change-Id: I7f7f57809c55bf8824b427f0d4a232cacdbe88a7
2023-06-25 16:52:34 +08:00
Vincent Wang
818f77cd1f Test Fix SettingRobolectricTest Fail
Bug: b/275023433
Test: NA
Change-Id: If2dcb8f6c196327129ccc9375b190e394c994efa
2023-05-09 06:26:39 +00:00
Colin Cross
54a9fd4e17 Merge "Use Build.VERSION.RELEASE_OR_PREVIEW_DISPLAY for user visible versions" am: 9c59242102 am: e23884eed9 am: f21625fe80
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2003011

Change-Id: I6e850608c5454ce80562a956074bc9ebe5c1597d
2022-03-02 00:55:39 +00:00
Colin Cross
3f67f87efe Use Build.VERSION.RELEASE_OR_PREVIEW_DISPLAY for user visible versions
Use Build.VERSION.RELEASE_OR_PREVIEW_DISPLAY which will show a user
friendly version name for preview releases, and the release version
for final releases.

Bug: 221950960
Test: manual
Change-Id: I3a7e6a3c996d52614b89888afd35da8cff458b43
2022-02-28 18:03:23 -08:00
Tsung-Mao Fang
07dd833a6a FRP bypass defense in the settings app
Over the last few years, there have been a number of
Factory Reset Protection bypass bugs in the SUW flow.
It's unlikely to defense all points from individual apps.

Therefore, we decide to block some critical pages when
user doesn't complete the SUW flow.

Test: Can't open the certain pages in the suw flow.
Fix: 200746457
Bug: 202975040
Fix: 213091525
Fix: 213090835
Fix: 201561699
Fix: 213090827
Fix: 213090875
Change-Id: Ia18f367109df5af7da0a5acad7702898a459d32e
2022-01-05 12:10:00 +08:00
Tsung-Mao Fang
b57265fa31 Revert "Move Automatic System Updates from Developer Options to ..."
Revert submission 15552651-cherrypick-automatic-system-update-n9jr24y6ba

Reason for revert: Legal team decided to have this entry in GMS, so we can move this setting item back.
Reverted Changes:
Iaea3e11d9:Move Automatic System Updates from Developer Optio...
I077607a6a:Move Automatic System Updates from Developer Optio...

Change-Id: If000388f2dd0f9e3e06a29dcbdd362181d1bfd47
Bug: 196297425
2021-09-23 09:26:58 +00:00
Tsung-Mao Fang
74b1a46cb1 Move Automatic System Updates from Developer Options to System
- Move the preference to the system xml file.
- DisableAutomaticUpdatesPreferenceController should not
inherit from the developer preference controller now since it's not used
in developer page anymore. Instead, just use toggle preference
controller for changing the state.
- Rewrite the test cases based on new controller.

Test: The ui works well and search can navigate to correct path.
Fix: 196001125
Change-Id: Iaea3e11d9cdbfa073ebd41bc3c84356d564c7e71
2021-08-13 08:11:22 +00:00
Yanting Yang
5035ef9f94 Remove silky flag from System for official release
Remove the silky condition and clean up redundant files.

Bug: 183670633
Test: robotests & visual
Change-Id: I2743a65869c4fe2ea684e259373ddc309dea59c3
2021-05-27 13:53:18 +08:00
Yanting Yang
6778fe74bd Fix robotests fail if turning on silky home by default
Bug: 179136903
Test: robotests
Change-Id: Ic620a5061fe7b778076970fd01f212a7aa95bf9e
2021-02-03 03:36:08 +08:00
Alexander Dorokhine
46e85a2fad Migrate away from deprecated Truth APIs.
This is a transitional step towards truth 1.0.1, where these APIs have
been completely removed.

Bug: 168765701
Test: m checkbuild
Change-Id: I76f9c37cb699ce6ab8715ffe35d11668ccbceea1
2020-09-24 23:09:41 +00:00
Dianne Hackborn
95108c4b38 Reland: Rework platform version to hide codenames.
The public platform version no longer can be a codename, it is
always the most recently released platform.  A new build property
and API provides either the offical version or the current codename
as appropriate.  This will avoid breaking apps that look at the
platform version while development is under a codename.

Bug:  143175463
Test: manual
Exempt-From-Owner-Approval: Previously approved, no new changes.
Change-Id: Ifb6f6236aab2c40fd51abb9c6587eafcc8983857
2020-02-06 11:07:11 +00:00
Jason Chiu
b1cac8303c Fix failed tests on ResetPreferenceControllerTest
Should config shadow ShadowUserManager before using it

Fixes: 146881352
Test: robotest
Change-Id: I1ef33a8ee3c8c98eef2e3e257b7da81a9264783f
2019-12-26 19:45:44 +08:00
Edgar Wang
fee49421c7 Update Reset options summary
- Update summary when user does not have permission to reset network or factory reset

Fixes: 126295214
Test: rototest & manual
Change-Id: I710f0abcd3df1560eb3e7bc53a7427d7a6a5aad7
2019-12-23 13:47:46 +08:00
Tsung-Mao Fang
dee1548f61 Fix a few test cases
Test: robo test
Change-Id: Iba797f51169fffb377ccd3d5d5691c392b772537
Fix: 144664559
Fix: 144663625
Bug: 144664534
2019-11-18 16:37:50 +08:00
Kevin Lau Fang
40dd1e2183 Revert submission
Reason for revert: This causes a boot issue on Taimen (b/144480969). It wasn't caught by TreeHugger due to Taimen tests being disabled due to a different lab outage (b/144350336).

Change-Id: I490dc6c933c08c3c83b962786df11bd2da66b28a
2019-11-14 20:07:38 +00:00
Dianne Hackborn
cdbc0dfa6a Rework platform version to hide codenames.
The public platform version no longer can be a codename, it is
always the most recently released platform.  A new build property
and API provides either the offical version or the current codename
as appropriate.  This will avoid breaking apps that look at the
platform version while development is under a codename.

Bug:  143175463
Test: manual
Change-Id: I711ca20c4c8ce389697e940696051a336f5fd808
2019-11-12 15:55:59 -08:00
Edgar Wang
59d4681253 Handle When received intent extra in System settings need show dialog
Bug: 128853573
Test: visual, robotest
Change-Id: I92337e26f51c3f7ef4033d424ddcf07c6da6805d
2019-03-28 22:49:09 +08:00
James Lemieux
f1dade40d2 Use binary resource support in robolectric
The resources available to tests are now exactly the merged resources
located in the APK under test.

Bug: 74359828
Test: make -j56 RunSettingsRoboTests
Change-Id: I050db81a92decefea23314b5ec7a62f77ff4bb2b
2018-12-12 19:53:49 -08:00
James Lemieux
1fc96ea98d Prepare tests for impending robolectric merge
Setting's ShadowUserManager.reset() was unnecessary and collided with a
newly introduced reset() method in its super class. It has been removed.

Test: make -j56 RunSettingsGoogleRoboTests &&
  make -j56 RunSettingsRoboTests &&
  make -j56 RunSettingsLibRoboTests

Change-Id: I63c50eca0de3581fd4f64f4862233446f5937d0c
2018-11-19 16:56:40 -08:00
Fan Zhang
cdf284b732 Make Settings robotest work with tot Robolectric
Bug: 116278591
Test: make -j RunSettingsRoboTests
Change-Id: I32cb2fcf6094675f79d2fc24702ef6298a9691e4
2018-10-31 17:59:17 -07:00
Fan Zhang
23f8d59d02 Sort imports
Having consistent import order will reduce chance of merge
conflict between internal and external master

Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
2018-08-28 22:13:15 +00:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
Ben Lin
bd180a62ec Introduce boolean flag to show/hide Reset Options.
This adds one new flag:
config_show_reset_dashboard

Which when set to false, will hide Reset Options from System settings.

Bug: 74127210
Test: Updated robotests
Change-Id: I42b14a0abde575f5c4e51985125e8543716d206a
2018-03-08 10:44:48 -08: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
Fan Zhang
917f101899 Instantiate pref controllers from xml if it's defined.
- If a <preference> tag also defines a controller, we will try to
  instantiate it before displaying the UI. The same logic is shared by
  BaseSearchIndexProvider so it also drives search suppression.

- If user also defines a list of controllers programatically, the
  programatically created ones takes precedence.

Bug: 73668763
Test: WIP
Change-Id: I7aecec270bcd3af261e012ef1f6995d2a523cfa1
2018-02-23 14:08:51 -08:00
Fan Zhang
5c2699962b Use SystemUpdateManager to provide system update info.
Change-Id: I38b631cda8aa63e478c74625eba3d18f9a5723bd
Fixes: 36874007
Test: robotests
2018-01-31 12:16:17 -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
3074f25b9f move survey and system test package to sdk 26
Test: make RunSettingsRoboTests -j40
Change-Id: I6090a4d1e8b5b094c2400c8f6088953c2cf5b2f6
2017-12-01 15:10:04 -08:00
Daniel Nishi
739b0eef10 Move the Robolectric shadow config up.
In my testing, this reduces the runtime of the Robolectric Settings test
suite on my Z840 workstation from 440 seconds to 402 seconds on average.
By avoiding having a method-level Robolectric shadow import, we avoid
going down a code path which needs to add more shadows later in the
Robolectric execution.

Bug: 64808827
Test: Settings robotests still pass
Change-Id: I7b40d73b30306ae3f9759281afbd7f7266579e24
2017-08-17 14:37:27 -07:00
Christine Franks
c6890ab6c5 Move logic for FR in demo mode out of Settings
Bug: 62712426
Test: make \
ROBOTEST_FILTER="(MasterClearTest|FactoryResetPreferenceControllerTest
|UtilsTest)" \
RunSettingsRoboTests -j100
Change-Id: I5e287c3d4a6a7050bda78187c52aec19e90b50bc
2017-07-21 19:19:19 +00:00
Doris Ling
204ca74397 Move Gesture settings up one level.
Move System->Languages, input & gestures->Gestures to System->Gestures.

Change-Id: Ie81876208383f69ebf1a0465d76c760d7dd9d95d
Fix: 62276882
Test: make RunSettingsRoboTests
(cherry picked from commit 55ce7de7d0)
2017-07-20 16:46:44 +00: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
Christine Franks
2d0293951a Allow FR in carrier demo mode
Bug: 62133292
Test: make RunSettingsRoboTests -j100, and manually verified FR is
available in carrier demo mode.

Change-Id: Ia793bf234b229da0490accfea6d44b72395a04bc
2017-05-31 12:04:01 -07:00
Fan Zhang
28dcdb7c3b Fix robolectric test failure
Default UserManager caches instance across entire test suite, so 
test becomes flakey depending on the order they are run. Using a 
a ShadowUserManager without the cache ensures each test class gets
a UserManager with clean state.

Change-Id: Ia54f6a3259859add5a1e5d0101829497fb985ab1
Fix: 38393235
Test: make RunSettingsRoboTests
2017-05-17 22:46:27 +00:00
Matthew Fritze
6fe35bb031 Remove Backup and Reset duplicates from Settings search
Bug: 33701673
Test: make RunSettingsRoboTests
Change-Id: I3539f9581939255d94ccf04134278414fbe9c72b
2017-05-16 15:43:21 -07:00
Fan Zhang
51059c5c91 Move reset options to one place
Change-Id: I419c16cbfc69861e01f28c14abdde137bd78f0bb
Fix: 36458355
Test: make RunSettingsRoboTests
2017-03-24 17:26:33 -07:00
Anton Philippov
66084a5368 Hide "Factory reset" item for secondary users
Bug: 35415714
Test: make RunSettingsRoboTests
Change-Id: I48d6d094476c5fc83dbc17906d84cc848e499624
2017-03-07 16:37:36 +00:00
Fan Zhang
7520e81ab5 Update top level menu items summary text.
- Use static summary for most items
- Move summary for user setting to user&account setting

Bug: 34975053
Test: RunSettingsRoboTests
Change-Id: I9bf87267778dc5933f97f5d3b9ae0f4f0b8da1a8
2017-02-09 15:22:47 -08:00
Salvador Martinez
f86905ed50 Modified settings tests to use custom test runner
The custom test runner lets us use resources from
multiple projects which resolves many ResourceNotFound
errors that would come up when people who made changes
wrote tests.

Test: make RunSettingsRoboTests
Bug: 32180625
Change-Id: I71f30eecc1164b117351a74b3ea0533625feae5b
2016-10-25 17:20:20 -07:00
Fan Zhang
e0c253fccb Add summary provider for system tile.
Refactored getLocaleNames() into a FeatureProvider interface so it's
reusable and testable.

Bug: 31801428
Test: RunSettingsRoboTests
Change-Id: I2d31a66a4b32cfa7a364a4cfef1f6eea87084577
2016-10-14 11:08:51 -07:00