Pre-patch, settings search provider would push all of its
fragments into to search via SearchIndexableResources with
an implicit contract of if the resource's xml == 0, then
it was a settings fragment with an Index provider.
One, implicit contract is bad. Two, it was messy at indexing time.
So this patch moves htat conversion into the search index provider.
Such that all of the indexables are either real Resources or Raw.
Change-Id: I39f4351c03d123bb9b45edb4df7f924cfaff2b38
Fixes: 65376542
Fixes: 37741509
Test: robotests
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
Change preference keys of duplicate settings between
display and battery to avoid duplication in search.
Bug: 33701673
Test: make RunSettingsRoboTests
Change-Id: I56c82e9e7f163d345065ca478849de9b14c173fe
queryNonIndexableKeys returns a list of all of the
non-indexable keys for all providers in Settings
Change-Id: Id53cb2f55662e85c66f1c3f0c0e7d933b19fedaf
Fixes: 34623460
Test: RunSettingsRoboTests
This CL also reduces SearchIndexableResources class about 1kB.
Test: Added Robolectric test. "make RunSettingsRoboTests" passed.
Change-Id: Id7f7676e175db4aba0be23c0c1a3fc12dd6acc2e