Files
app_Settings/tests/unit
Matthew DeVore 83a1d4360f Show topology pane in per-display fragment
Some changes made to the UI, i.e. presence or absence of items, based on
feedback. There is some ambiguity because we are not fully v2 yet, hence
this change.

When all external displays are attached after opening the fragment, we
now show no preference items, whereas before we showed the pane with
built-in display options.

If only one external display is attached, we skip the "display list"
version of the fragment, and instead show the pane and other v2 items in
the per-display fragment.

If 2 or more external displays are attached, we do not show the pane
after selecting a display, which makes the rotation/resolution items
easier to find. I tried to get scrollToPreference to work but could not,
and it could be a little disorienting anyway.

To help manage the growing number of setOrder calls, keep the order
values as well as other pref data in a single spot. This also reduces
the amount of boilerplate around constants needed and makes uniform how
multiple preferences are built.

Flag: com.android.settings.flags.display_topology_pane_in_display_list
Bug: b/366056922
Bug: b/394361999
Test: TODO
Change-Id: Iaa33f6d9220a1658a372c0432fe159a69dbb88a5
2025-02-07 19:18:16 +00:00
..
2024-01-12 16:19:47 +00:00

The simplest way to run all SettingsUnitTests is with atest
$ atest SettingsUnitTests

A single class can also be tested with the following command
$ atest -c <YourClassName>

// The following instructions show how to run the test suite using make + adb //

To build the tests you can use the following command at the root of your android source tree
$ make -j SettingsUnitTests

The test apk then needs to be installed onto your test device. The apk's location will vary
depending on your device model and architecture. At the end of the make command's output, there
should be a line similar to the following:
"Copy: ${ANDROID_PRODUCT_OUT}/testcases/SettingsUnitTests/arm64/SettingsUnitTests.apk"
Install via the following command:
$ adb install -r ${ANDROID_PRODUCT_OUT}/testcases/SettingsUnitTests/arm64/SettingsUnitTests.apk

To run all tests:
$ adb shell am instrument -w com.android.settings.tests.unit/androidx.test.runner.AndroidJUnitRunner

To run all tests in a specific class:
$ adb shell am instrument -w -e class com.android.settings.<class> com.android.settings.tests.unit/androidx.test.runner.AndroidJUnitRunner

To run a specific test:
$ adb shell am instrument -w -e class com.android.settings.<class>#<test> com.android.settings.tests.unit/androidx.test.runner.AndroidJUnitRunner

More general information can be found at
http://developer.android.com/reference/android/support/test/runner/AndroidJUnitRunner.html