diff --git a/services/tests/servicestests/src/com/android/server/policy/DeviceStateProviderImplTest.java b/services/tests/servicestests/src/com/android/server/policy/DeviceStateProviderImplTest.java
index 8e2c1f051279d..761cea79df28d 100644
--- a/services/tests/servicestests/src/com/android/server/policy/DeviceStateProviderImplTest.java
+++ b/services/tests/servicestests/src/com/android/server/policy/DeviceStateProviderImplTest.java
@@ -159,6 +159,64 @@ public final class DeviceStateProviderImplTest {
assertEquals(1, mIntegerCaptor.getValue().intValue());
}
+ @Test
+ public void create_stateWithCancelStickyRequestFlag() {
+ String configString = "\n"
+ + " \n"
+ + " 1\n"
+ + " \n"
+ + " FLAG_CANCEL_STICKY_REQUESTS\n"
+ + " \n"
+ + " \n"
+ + " \n"
+ + " \n"
+ + " 2\n"
+ + " \n"
+ + " \n"
+ + "\n";
+ DeviceStateProviderImpl.ReadableConfig config = new TestReadableConfig(configString);
+ DeviceStateProviderImpl provider = DeviceStateProviderImpl.createFromConfig(mContext,
+ config);
+
+ DeviceStateProvider.Listener listener = mock(DeviceStateProvider.Listener.class);
+ provider.setListener(listener);
+
+ verify(listener).onSupportedDeviceStatesChanged(mDeviceStateArrayCaptor.capture());
+ final DeviceState[] expectedStates = new DeviceState[]{
+ new DeviceState(1, "", DeviceState.FLAG_CANCEL_STICKY_REQUESTS),
+ new DeviceState(2, "", 0 /* flags */) };
+ assertArrayEquals(expectedStates, mDeviceStateArrayCaptor.getValue());
+ }
+
+ @Test
+ public void create_stateWithInvalidFlag() {
+ String configString = "\n"
+ + " \n"
+ + " 1\n"
+ + " \n"
+ + " INVALID_FLAG\n"
+ + " \n"
+ + " \n"
+ + " \n"
+ + " \n"
+ + " 2\n"
+ + " \n"
+ + " \n"
+ + "\n";
+ DeviceStateProviderImpl.ReadableConfig config = new TestReadableConfig(configString);
+ DeviceStateProviderImpl provider = DeviceStateProviderImpl.createFromConfig(mContext,
+ config);
+
+ DeviceStateProvider.Listener listener = mock(DeviceStateProvider.Listener.class);
+ provider.setListener(listener);
+
+ verify(listener).onSupportedDeviceStatesChanged(mDeviceStateArrayCaptor.capture());
+ final DeviceState[] expectedStates = new DeviceState[]{
+ new DeviceState(1, "", 0 /* flags */),
+ new DeviceState(2, "", 0 /* flags */) };
+ assertArrayEquals(expectedStates, mDeviceStateArrayCaptor.getValue());
+ }
+
@Test
public void create_lidSwitch() {
String configString = "\n"