SettingsRoboTests: fix device state rotation related tests

Fixes: 280015539
Test: atest SettingsRoboTests
Change-Id: I0a3cc713f8df0477a172665a60551b456691b17c
This commit is contained in:
Christian Göllner
2023-04-28 15:22:43 +02:00
parent 2b44fc26d1
commit b613cc4a17
3 changed files with 42 additions and 9 deletions

View File

@@ -16,6 +16,8 @@
package com.android.settings.display;
import static android.provider.Settings.Secure.DEVICE_STATE_ROTATION_LOCK_LOCKED;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.spy;
@@ -39,6 +41,10 @@ import java.util.List;
@RunWith(RobolectricTestRunner.class)
public class DeviceStateAutoRotateDetailsFragmentTest {
private static final int FOLDED_STATE = 0;
private static final int HALF_FOLDED_STATE = 1;
private static final int UNFOLDED_STATE = 2;
private static final int REAR_DISPLAY_STATE = 3;
private final DeviceStateAutoRotateDetailsFragment mFragment =
spy(new DeviceStateAutoRotateDetailsFragment());
@@ -51,6 +57,7 @@ public class DeviceStateAutoRotateDetailsFragmentTest {
when(mContext.getApplicationContext()).thenReturn(mContext);
when(mFragment.getContext()).thenReturn(mContext);
when(mFragment.getResources()).thenReturn(mResources);
setUpPostureMappings();
}
@Test
@@ -67,7 +74,9 @@ public class DeviceStateAutoRotateDetailsFragmentTest {
@Test
public void createPreferenceControllers_settableDeviceStates_returnsDeviceStateControllers() {
enableDeviceStateSettableRotationStates(new String[]{"0:1", "1:1"},
enableDeviceStateSettableRotationStates(
new String[]{FOLDED_STATE + ":" + DEVICE_STATE_ROTATION_LOCK_LOCKED,
UNFOLDED_STATE + ":" + DEVICE_STATE_ROTATION_LOCK_LOCKED},
new String[]{"Folded", "Unfolded"});
List<AbstractPreferenceController> preferenceControllers =
@@ -102,4 +111,19 @@ public class DeviceStateAutoRotateDetailsFragmentTest {
DeviceStateRotationLockSettingsManager.getInstance(mContext)
.resetStateForTesting(mResources);
}
private void setUpPostureMappings() {
when(mResources.getIntArray(
com.android.internal.R.array.config_foldedDeviceStates)).thenReturn(
new int[]{FOLDED_STATE});
when(mResources.getIntArray(
com.android.internal.R.array.config_halfFoldedDeviceStates)).thenReturn(
new int[]{HALF_FOLDED_STATE});
when(mResources.getIntArray(
com.android.internal.R.array.config_openDeviceStates)).thenReturn(
new int[]{UNFOLDED_STATE});
when(mResources.getIntArray(
com.android.internal.R.array.config_rearDisplayDeviceStates)).thenReturn(
new int[]{REAR_DISPLAY_STATE});
}
}