**Root cause**
Two reasons of the flaky test:
- Settings value not reset to default after tests
- Need time for the settings value changes to propagate to its listeners
Other clean up: When creating a preference, by default it will store
values in the shared preferences. If we don't intent to save the
preference to the sharedPreferences, we should set presistent as false.
Bug: 279818352
Test: atest
SettingsUnitTests:com.android.settings.accessibility.DisableAnimationsPreferenceControllerTest#onStart_disabledAnimation_shouldReturnTrue
--iterations 50
Change-Id: Ie645f8e847fc8ce188a7e5ed45bf5050f81e1d9a
Root cause: The ag/3373822 introduce the comparison by string since 2017, but it would conflict with AccessibilityService#setAnimationScale(float) which is added by API level 33.
Solution: Use float comparison instead and observe the key changed to update status if the setting page is on foreground.
Bug: 244687190
Test: atest DisableAnimationsPreferenceControllerTest
Change-Id: I59b7edb70a27af4276eccd6f19d2ef46ba30b604
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