Merge "SettingsRoboTests: fix device state rotation related tests" into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
6e524f6244
@@ -16,6 +16,8 @@
|
|||||||
|
|
||||||
package com.android.settings.display;
|
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 com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import static org.mockito.Mockito.spy;
|
import static org.mockito.Mockito.spy;
|
||||||
@@ -39,6 +41,10 @@ import java.util.List;
|
|||||||
|
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
public class DeviceStateAutoRotateDetailsFragmentTest {
|
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 =
|
private final DeviceStateAutoRotateDetailsFragment mFragment =
|
||||||
spy(new DeviceStateAutoRotateDetailsFragment());
|
spy(new DeviceStateAutoRotateDetailsFragment());
|
||||||
@@ -51,6 +57,7 @@ public class DeviceStateAutoRotateDetailsFragmentTest {
|
|||||||
when(mContext.getApplicationContext()).thenReturn(mContext);
|
when(mContext.getApplicationContext()).thenReturn(mContext);
|
||||||
when(mFragment.getContext()).thenReturn(mContext);
|
when(mFragment.getContext()).thenReturn(mContext);
|
||||||
when(mFragment.getResources()).thenReturn(mResources);
|
when(mFragment.getResources()).thenReturn(mResources);
|
||||||
|
setUpPostureMappings();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@@ -67,7 +74,9 @@ public class DeviceStateAutoRotateDetailsFragmentTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void createPreferenceControllers_settableDeviceStates_returnsDeviceStateControllers() {
|
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"});
|
new String[]{"Folded", "Unfolded"});
|
||||||
|
|
||||||
List<AbstractPreferenceController> preferenceControllers =
|
List<AbstractPreferenceController> preferenceControllers =
|
||||||
@@ -102,4 +111,19 @@ public class DeviceStateAutoRotateDetailsFragmentTest {
|
|||||||
DeviceStateRotationLockSettingsManager.getInstance(mContext)
|
DeviceStateRotationLockSettingsManager.getInstance(mContext)
|
||||||
.resetStateForTesting(mResources);
|
.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});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -53,6 +53,7 @@ import org.mockito.MockitoAnnotations;
|
|||||||
import org.robolectric.RobolectricTestRunner;
|
import org.robolectric.RobolectricTestRunner;
|
||||||
import org.robolectric.RuntimeEnvironment;
|
import org.robolectric.RuntimeEnvironment;
|
||||||
import org.robolectric.annotation.Config;
|
import org.robolectric.annotation.Config;
|
||||||
|
import org.robolectric.shadow.api.Shadow;
|
||||||
|
|
||||||
@RunWith(RobolectricTestRunner.class)
|
@RunWith(RobolectricTestRunner.class)
|
||||||
@Config(shadows = ShadowSensorPrivacyManager.class)
|
@Config(shadows = ShadowSensorPrivacyManager.class)
|
||||||
@@ -171,16 +172,14 @@ public class SmartAutoRotateControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void lockDeviceStateRotation() {
|
private void lockDeviceStateRotation() {
|
||||||
mDeviceStateAutoRotateSettingsManager.updateSetting(
|
ShadowDeviceStateRotationLockSettingsManager shadowManager =
|
||||||
/* deviceState= */0, /* rotationLocked= */ true);
|
Shadow.extract(mDeviceStateAutoRotateSettingsManager);
|
||||||
mDeviceStateAutoRotateSettingsManager.updateSetting(
|
shadowManager.setRotationLockedForAllStates(true);
|
||||||
/* deviceState= */1, /* rotationLocked= */ true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void unlockDeviceStateRotation() {
|
private void unlockDeviceStateRotation() {
|
||||||
mDeviceStateAutoRotateSettingsManager.updateSetting(
|
ShadowDeviceStateRotationLockSettingsManager shadowManager =
|
||||||
/* deviceState= */0, /* rotationLocked= */ false);
|
Shadow.extract(mDeviceStateAutoRotateSettingsManager);
|
||||||
mDeviceStateAutoRotateSettingsManager.updateSetting(
|
shadowManager.setRotationLockedForAllStates(false);
|
||||||
/* deviceState= */1, /* rotationLocked= */ true);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -27,6 +27,7 @@ import org.robolectric.annotation.Implements;
|
|||||||
public class ShadowDeviceStateRotationLockSettingsManager {
|
public class ShadowDeviceStateRotationLockSettingsManager {
|
||||||
|
|
||||||
private static boolean sDeviceStateRotationLockEnabled;
|
private static boolean sDeviceStateRotationLockEnabled;
|
||||||
|
private boolean mIsRotationLockedForAllStates;
|
||||||
|
|
||||||
@Implementation
|
@Implementation
|
||||||
public static boolean isDeviceStateRotationLockEnabled(Context context) {
|
public static boolean isDeviceStateRotationLockEnabled(Context context) {
|
||||||
@@ -36,4 +37,13 @@ public class ShadowDeviceStateRotationLockSettingsManager {
|
|||||||
public static void setDeviceStateRotationLockEnabled(boolean enabled) {
|
public static void setDeviceStateRotationLockEnabled(boolean enabled) {
|
||||||
sDeviceStateRotationLockEnabled = enabled;
|
sDeviceStateRotationLockEnabled = enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Implementation
|
||||||
|
public boolean isRotationLockedForAllStates() {
|
||||||
|
return mIsRotationLockedForAllStates;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setRotationLockedForAllStates(boolean value) {
|
||||||
|
mIsRotationLockedForAllStates = value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user