Commit Graph

280 Commits

Author SHA1 Message Date
Sorin Basca
c1c3a84fdc Use Mockito 4.6.1 API
Bug: 236636175
Test: m RunSettingsRoboTests
Change-Id: I2cfda684059520f6ddd1e72c55f1ab1ec9c99e8b
2022-07-13 06:39:26 +01:00
Amith Yamasani
1b27c91a7b Use Uri.toString() instead of Uri.toSafeString()
Uri.toSafeString strips out paths and shouldn't be used
for situations other than logging.

Bug: 232694281
Test: PtsPowerTestCases
Change-Id: Iec835b738c3e928e922bd6a14573106f2ce4f526
2022-05-30 23:22:25 -07:00
Tsung-Mao Fang
8b0e4018e1 Fix search test
The broken test is because the activityInfo has no package name.
Set a random package name to fix it.

Test: run robo test
Fix: 214945263
Change-Id: I5ae5a0021f1473e6eadbad5f6e1f22840a44d592
2022-01-20 09:57:34 +00:00
Tsung-Mao Fang
297fcb4031 Ignore broken tests
Test: Run tests
Bug: 214943221
Bug: 214944418
Bug: 214944992
Bug: 214944423
Bug: 214945263
Bug: 214945259
Change-Id: I958c003a15866a03b7d0c24210ae2c99f4ee2c47
2022-01-17 22:01:50 +08:00
Jason Chiu
e427cc6752 Search experience improvement for large screen
- Support fragment and direct link in SearchResultTrampoline
- Start activity for SI case and start deep link trampoline for others
- Disable menu highlight whenever the search bar is clicked
- Don't overwrite SettingsApplication's homepage activity in
  SliceDeepLinkHomepageActivity
- Scroll to highlighted menu entry after homepage is loaded to prevent
  UI overlapping

Bug: 201724410
Test: manual, robotest build pass
Change-Id: I5115d17d829e85036000da2e80f0e5b0598c733f
2021-11-03 18:44:01 +08:00
Jason Chiu
1ee1911104 Skip indexing dynamic and injected raw data when page search is disabled
Test: robotest
Fixes: 188059978
Change-Id: I99c86ee12c7696123df26c47cfed8c3ddfbdf353
2021-05-20 06:34:08 +00:00
Arc Wang
62c78ff3fa Migrate robolectric tests to junit tests
This change do the 2 things:

1. Add new junit tests files which replace robolectric
   RobolectricTestRunner & RuntimeEnvironment with
   AndroidX objects without problem.
2. Remove the robolectric test files which have it's new junit files.

This change migrate 103 files, there are still 1209
files to go.

Bug: 174728471
Test: atest
      make RunSettingsRoboTests
Change-Id: I15ed3f4745b85862f720aabbf710ce1475aced93
2020-12-16 11:17:57 +08:00
Neil Fuller
94a64d6139 Fix search test using location_settings
Second attempt to proactively fix a search test.

SearchIndexableResourcesTest uses the FakeIndexProvider, which
implicitly assumes that the
robotests/res/xml-mcc999/location_settings.xml xml is in use. Without
it, the test is accessing the real location_settings.xml / real
preference controllers. This  was working until now, but by luck and
probably not intent.

There is an upcoming change which will break the test, so this fixes the
test ahead of time.

This change updates the test to use the "mcc999" config, and improves
the docs around FakeIndexProvider to try to make the requirements for
use clearer.

Bug: 171371424
Test: m RunSettingsRoboTests
Change-Id: I868d191281a2030fa49134893bcd6720f757ea91
2020-10-22 15:46:39 +01: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
Edgar Wang
ed45314758 Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: Idf3cb1eca8b814d5863f286f6a46f79fc5e7a967
2020-08-07 10:25:06 +00:00
Arc Wang
41f23de712 [Wi-Fi] Replace WifiTracker with WifiPickerTracker in WifiSettings
WifiSettings uses WifiTracker in SettingsLib while WifiSettings2
uses WifiPickerTracker in WifiSettingsLib.

1. Remove WifiSettings.
2. Rename WifiSettings2 to WifiSettings.
3. Remove the files only used in the removed WifiSettings.
   (Saved networks files are not included)

Bug: 152571756
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi
      atest WifiSettingsUiTest
Change-Id: I800b434c8049121db115cff87d51e164e4529999
2020-05-14 21:24:57 +08:00
Yanting Yang
bfe16291a3 Fix breadcrumb of search results provided by Settings
Settings Search need Settings to provide custom site map pairs to
build up full breadcrumb for the search results from Gesture Settings
page.

Bug: 147851992
Bug: 151206664
Test: visual and robotests
Change-Id: I4a61e6da48755184954c2c90834578030ffc2e10
2020-04-21 19:11:45 +08:00
Yanting Yang
2483124478 Fix breadcrumb for the search results of Custom restrictions page
Settings Search need Settings to provide the custom site map pairs to
build up the full breadcrumb for the search results of Custom
restrictions page.

Impact search results:
Don't turn on screen
Don't wake for notifications
Hide notification dots on app icons
Hide status bar icons at top of screen
Don't pop notifications on screen
Hide from pull-down shade
Custom restrictions

Bug: 147851992
Bug: 151206664
Test: visual and robotests
Change-Id: I01e359eabcdc362e2a1fde5f3bc4ae5dc6918030
2020-04-15 08:52:05 +08:00
Yanting Yang
b7e1ececea Fix breadcrumb of search results provided by Settings
1. Settings Search need Settings to provide custom site map pairs to
build up full breadcrumb for the search results from below pages.
- PowerUsageAdvanced
- RecentLocationRequestSeeAllFragment
- UsbDetailsFragment
- UserBackupSettingsActivity

2. Update the screen title of Backup raw index data from Settings to
Backup to display correct breadcrumb in Settings Search.

Bug: 147851992
Bug: 151206664
Fixes: 152368059
Test: visual and robotests
Change-Id: Iaebab8d549bba6be7623708f9833349654e7f2a7
2020-04-10 20:56:39 +08:00
Yanting Yang
c54002e192 Add custom site map pairs into SettingsSearchIndexablesProvider
Settings Search need Settings to provide custom site map pairs to build
up full breadcrumb for the search results from ScreenLockSettings,
WallpaperSuggestionActivity and WifiSettings2.

Bug: 147851992
Bug: 151206664
Test: manual test with Settings Search, robotests
Change-Id: Ide6e69b3336af255a388737d46147f2fc2ef9790
2020-03-26 23:04:33 +08:00
Yanting Yang
298a7fe2e5 Remove the index of the homepage category tiles
Do not index the tiles of homepage category since we would like to index
their target activity for search.

Fixes: 151418948
Test: visual
Change-Id: I693534de006b4dbcaf192858e6f7d031bad78fef
2020-03-17 17:55:49 +08:00
Edgar Wang
e19ee9a01f Revert "Settings search - Navigate user to exact page"
This reverts commit 08f2a58459.

Reason for revert: design changed, we decide to take the user to
the entry after clicking on a search result.
It's opposite with what we did, so we revert related CL first.

Test: robotest

Change-Id: Iadb9a94a7ef7838be34a54499e2d934d6396c336
2020-01-16 14:07:38 +08:00
Edgar Wang
08f2a58459 Settings search - Navigate user to exact page
- remove duplicate index preference
- default set searchable = false when the preference has fragment
- make some fragments indexable

Bug: 143057584
Test: robotest & manual

Change-Id: I4d64f6106d2f92f0a45e8c7e26388677f593f412
2019-12-24 21:04:11 +08:00
Stanley Wang
a7d314d995 Merge "Add new method to preference controller base for dynamic index." 2019-11-19 09:09:00 +00:00
Stanley Wang
4a08fc1c59 Add new method to preference controller base for dynamic index.
- Add updateDynamicRawDataToIndex method.
- Implement preference controller index in BaseSearchIndexProvider.

Fixes: 144545478
Test: make RunSettingsGoogleRoboTests -j
      make RunSettingsRoboTests ROBOTEST_FILTER=
      com.android.settings.search.BaseSearchIndexProviderTest
Change-Id: Ibb11002227b280102b45d7c0610eae48ecf4c0f3
2019-11-19 14:47:10 +08:00
Raff Tsai
84327f6aa3 Add storage_summary_donut above ProfileSelectStorageFragment
- Modify ProfileSelectFragment to support add preference xml in the
top, and tabLayout below the preferences. Base preference layout is
dummy_preference_screen.xml which contains no preference.
ProfileSelectStorageFragment contains StorageSummaryDonutPreference
above the tabLayout.
- Make StorageSummaryDonutPreferenceController self workable without
StorageDashboardFragment dependence.
- Rename inactive_apps.xml to dummy_preference_screen.xml
- Move ShadowPrivateStorageInfo from LowStorageSliceTest

Bug: 141601408
Test: manual
Change-Id: Ide12840dc81bb104f328e230ecda5d35bba01d7a
2019-11-18 18:18:29 +08:00
Raff Tsai
c5e1fc677c Integrated SearchIndexableResources interface in Settings
- New SearchIndexableResources interface returns SearchIndexableBundle,
we don't need reflection to get SearchIndexableProvider

Bug: 135053028
Test: robolectric, check database search_index.db items
Change-Id: I5ed3416ccf72ef3d38db817fcb4aff7502649ed4
2019-11-05 17:38:32 +08:00
Raff Tsai
c898775914 Hide search box if it is called in initial setup wizard
- Search box is hidden if user set intent extra isSetupFlow true

Fixes: 135717823
Test: search box is hidden in the following command
adb shell am start -a android.settings.SETTINGS --ez isSetupFlow true

Change-Id: Ia3d955c9390d6b0eef9391b9b35b6a483eb63d26
2019-10-18 02:08:38 +00:00
Raff Tsai
966fa01423 Use SettingsLib Indexable
- Use SettingsLib Indexable
- Directly use resource id in getPreferenceScreenResId

Bug: 135053028
Test: roboletric
Change-Id: I05f493b55e8b6e2091301e9231ba5615215618e6
2019-09-25 18:24:56 +08:00
Raff Tsai
ac3e0d0988 Directly use BaseIndexableProvider
- Add function getXmlResourceId, Fragments don't need to write
xml resource id twice.
- Remove getPreferenceControllers from Indexable.java. Because it will
move to SettingsLib later for other apps which don't need this function

Bug: 135053028
Test: robolectric
Change-Id: I1e74519aecdea3dde64a5aea79f08d766dbc0003
2019-09-24 00:35:52 +08:00
Fan Zhang
beedd3abe5 Add referrer when launching search intent.
Bug: 123294739
Test: robotests
Change-Id: I600abf1d764e828d52f3b8d35ad24cdc94dfba01
2019-01-29 14:10:05 -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
Fan Zhang
8e14ca0058 Remove obsolete logic in SettingsActivity.
mIsShowingDashboard is always false, it used to be true when we are
displaying homepage, but now homepage is hosted in a entirely different
activity.

so all related logic can now be removed.

Test: robotests

Misc clean up: remove unused colors

Test: rebuild, color-lint
Change-Id: I1e1628c1e9606c2b7dc40ef3c21d4ed1391a8c03
2018-11-29 11:37:00 -08:00
Raff Tsai
a75a724bdd Fix Settings crash when clicking search bar
- When user disable settings suggestion in App Settings, click
search button without leaving settings app. The search button is
still existed.
- Doesn't allow user to disable app in App Settings
- Add check before start search intent

Change-Id: Ifbc4615914678d8df734e14d63bb626403313d1e
Fixes: 118805907
Test: manual
2018-11-15 18:08:40 +08:00
Raff Tsai
35ae9bbaac Read SettingsIntelligence package name from resource
Test: make RunSettingsRoboTests
Change-Id: I2143e1f7657cc0e01e91978e8c212ff079cec7d7
2018-11-13 14:45:01 +08:00
Raff Tsai
2928cd4c72 Fix Settings crash after disabling Settings Suggestion
- Settings Suggestion App is responsible for searching, we can not
prevent user disable it. Hide search feature if user disable it.

Fixes: 118805907
Fixes: 117921464
Test: manual
Change-Id: I61c47c52265a6efd79ef2fa60272bf6513e678b1
2018-11-07 14:11:23 +08:00
Fan Zhang
6b88c9c1b7 Use public API to launch search UI.
Test: manual
Change-Id: I5527dd6de5990aed365b6e78a9492ced00b99565
2018-10-18 16:26:59 -07:00
Fan Zhang
3181e1aceb Change search fab to search bar.
- Remove search fab from layout xml
- Change RelativeLayout to CoordinatorLayout so we can use prebuilt
  scrolling behavior
- Minor update to theme so search bar background works in dark mode for
  the homepage activity.

Change-Id: If7408c12684be65137e04ae3bb4137204c2d77e0
Fixes: 117508596
Test: robotests, visual
2018-10-10 16:29:22 -07:00
Fan Zhang
6632529ba1 Remove DeviceIndex feature/service.
Change-Id: I8444101669aef013183842c2d13cf3960c756398
Fixes: 112587202
Test: rerun all tests
2018-10-08 13:47:07 -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
a79c377fbc Declare "searchable" attribute for preferences.
Now we can easily mark a preference nonIndexable in xml instead of
adding key into searchIndexProvider.

Bug: 112608186
Test: robotests
Change-Id: I0ff16d44bb7b6ad148d3d35f09ca0da0163f73f4
2018-08-16 09:06:39 -07:00
Doris Ling
882bef3962 Disable changing lock when device is not provisioned.
When the device is not yet provisioned and settings is launched:
- disable the entry point for changing device lock
- remove the search panel from settings home page
- remove the search menu

Bug: 110034419
Test: make RunSettingsRoboTests
Change-Id: Ieb7eb0e8699229ec0824ccc19d7b958ac44965a2
2018-08-01 10:18:01 -07:00
tmfang
f12e6adcdc Settings Fragment Migration (Fix test cases)
Fix all Roboletric test cases.
In this CL, some test cases are broken.
So, We ignored these test cases temporarily.

Test: make RunSettingsRoboTests -j56
Bug: 110259478
Change-Id: I1a3075438a614432a2de4f2d96d8abf9a83ce58c
2018-07-11 18:24:51 -07:00
Fan Zhang
78ea7da54c Misc tweaks to Indexable usage and tests.
- Make SettingsPreferenceFragment implement Indexable directly
- Add existing fragments that are SettingsPrefFragment but not Indexable
  to grandfather list.
- Fix "font size" fragment so it shows up in search properly.
- Remove duplicates for "lock screen display", "Screen saver".

Bug: 70720645
Test: robotests
Change-Id: I44ce0cac0fdf5e882b315861bb4bebc45dbe01e6
2018-07-02 16:46:23 -07:00
Fan Zhang
7431c91de6 Remove search indexing pipeline from Settings
Index is already handled by SettingsIntelligenec. No longer needed in
Settings.

Change-Id: Id43fb3100dc2759185744441cff8cb9cd2d2da20
Fixes: 69808376
Test: robotests
2018-06-21 09:38:36 -07:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
Fan Zhang
74ba1a51d7 Skip device index job if caller is not Settings app.
Change-Id: I96184f111e83477b46ddf321ec74917bab330048
Fixes: 80437512
Test: robotests
2018-05-30 10:38:58 -07:00
Fan Zhang
0b5f345e87 Merge "Fix a bug where device index is not skipped correct." into pi-dev am: 75b3e6f302
am: 9bc1f54268

Change-Id: Id2979eaf1f08bd2c67bd6bba31a62eb5d0acf8e2
2018-05-29 12:53:47 -07:00
TreeHugger Robot
75b3e6f302 Merge "Fix a bug where device index is not skipped correct." into pi-dev 2018-05-29 18:48:24 +00:00
Fan Zhang
548485336f Fix a bug where device index is not skipped correct.
When checking language/build fingerprint to skip reindex, language check
was comparing Locale object and String object, so they would never be
equal, so we accidentally reindex every time.

- Switched Objects.equal to TextUtils.equal, this catches the error at
compiler level.

Bug: 80065409
Test: compile/robotest
Change-Id: I2b3c68bb1c2fd876338f42321605567d7e64d64b
2018-05-25 16:25:14 -07:00
Jason Monk
7c3c3b1154 Merge "Follow SliceManager API changes" into pi-dev am: d68ed5c92c
am: 667d662d85

Change-Id: I42f6774aed0638e9c6574c0f5332c3c235ac07f2
2018-05-24 23:51:44 -07:00
Matthew Fritze
e656ffd83c Merge "Clear indexing before adding all Slices" into pi-dev am: 842ea91baa
am: 6f8bfd5fec

Change-Id: I4a56f4af28b980480c17b4de918b3aeb052f40e5
2018-05-23 16:02:00 -07:00
Jason Monk
20495a8c36 Follow SliceManager API changes
Test: make
Bug: 78898947
Change-Id: I5a46ccafe36ad2e0fdac745606d9907f07a86d0c
2018-05-23 17:09:03 -04:00
Matthew Fritze
4b26969839 Clear indexing before adding all Slices
Before we index, add a call to clear indexed data before
indexing again. It's an optional call.

Fixes: 80065409
Test: robotests

Change-Id: Iddb0ce02c50d84b51fbf6fc2be0bdc9aa1f5987a
2018-05-22 20:02:20 -07:00
Fan Zhang
fc6ce6de32 Merge "Do not perform device index before device provision." into pi-dev am: 1fe4512596
am: 8a8b58d381

Change-Id: Ie111e38c79735090a0cedae253d97d638f974209
2018-05-17 12:56:44 -07:00