diff options
author | Xin Li <delphij@google.com> | 2021-03-01 00:53:13 -0800 |
---|---|---|
committer | Xin Li <delphij@google.com> | 2021-03-01 01:06:43 -0800 |
commit | 4bbe2a2df3bce309ec7926771af545c8ca0137bd (patch) | |
tree | 813a0be1088da4ea0fd50ceb97e55ba15e686a2e /services/tests | |
parent | 80d1724769c106e7d16e02969e7ffaf8da7bf7eb (diff) | |
parent | b17db7a3dd48bbbfd4ad7e914aefeabbf82df7d6 (diff) |
Merge RQ2A.210305.007 into stage.
Bug: 180401296
Merged-In: I1a16808426934f4a8d12410576d769443e4c2a04
Change-Id: I247a99c33c62cd1d000b7e50d1dda8b14df229d7
Diffstat (limited to 'services/tests')
-rw-r--r-- | services/tests/servicestests/Android.bp | 3 | ||||
-rw-r--r-- | services/tests/servicestests/src/com/android/server/display/DisplayModeDirectorTest.java | 417 | ||||
-rw-r--r-- | services/tests/wmtests/src/com/android/server/wm/HighRefreshRateBlacklistTest.java | 2 | ||||
-rw-r--r-- | services/tests/wmtests/src/com/android/server/wm/WindowManagerConstantsTest.java | 2 | ||||
-rw-r--r-- | services/tests/wmtests/src/com/android/server/wm/utils/FakeDeviceConfigInterface.java (renamed from services/tests/servicestests/utils/com/android/server/testutils/FakeDeviceConfigInterface.java) | 16 |
5 files changed, 18 insertions, 422 deletions
diff --git a/services/tests/servicestests/Android.bp b/services/tests/servicestests/Android.bp index 11d050c0dc7e..08e2def8d10d 100644 --- a/services/tests/servicestests/Android.bp +++ b/services/tests/servicestests/Android.bp @@ -57,6 +57,7 @@ android_test { // TODO: remove once Android migrates to JUnit 4.12, // which provides assertThrows "testng", + ], aidl: { @@ -118,7 +119,6 @@ java_library { "utils/**/*.java", "utils/**/*.kt", "utils-mockito/**/*.kt", - ":services.core-sources-deviceconfig-interface", ], static_libs: [ "junit", @@ -135,7 +135,6 @@ java_library { "utils/**/*.java", "utils/**/*.kt", "utils-mockito/**/*.kt", - ":services.core-sources-deviceconfig-interface", ], static_libs: [ "junit", diff --git a/services/tests/servicestests/src/com/android/server/display/DisplayModeDirectorTest.java b/services/tests/servicestests/src/com/android/server/display/DisplayModeDirectorTest.java index c467ee949aeb..43a396d8e5d7 100644 --- a/services/tests/servicestests/src/com/android/server/display/DisplayModeDirectorTest.java +++ b/services/tests/servicestests/src/com/android/server/display/DisplayModeDirectorTest.java @@ -16,99 +16,49 @@ package com.android.server.display; -import static android.hardware.display.DisplayManager.DeviceConfig.KEY_FIXED_REFRESH_RATE_HIGH_AMBIENT_BRIGHTNESS_THRESHOLDS; -import static android.hardware.display.DisplayManager.DeviceConfig.KEY_FIXED_REFRESH_RATE_HIGH_DISPLAY_BRIGHTNESS_THRESHOLDS; -import static android.hardware.display.DisplayManager.DeviceConfig.KEY_FIXED_REFRESH_RATE_LOW_AMBIENT_BRIGHTNESS_THRESHOLDS; -import static android.hardware.display.DisplayManager.DeviceConfig.KEY_FIXED_REFRESH_RATE_LOW_DISPLAY_BRIGHTNESS_THRESHOLDS; -import static android.hardware.display.DisplayManager.DeviceConfig.KEY_REFRESH_RATE_IN_HIGH_ZONE; -import static android.hardware.display.DisplayManager.DeviceConfig.KEY_REFRESH_RATE_IN_LOW_ZONE; - -import static com.android.server.display.DisplayModeDirector.Vote.PRIORITY_FLICKER; - -import static com.google.common.truth.Truth.assertThat; - import static org.junit.Assert.assertTrue; -import static org.mockito.ArgumentMatchers.anyInt; -import static org.mockito.ArgumentMatchers.eq; -import static org.mockito.Mockito.any; -import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; -import android.annotation.NonNull; -import android.content.ContentResolver; import android.content.Context; -import android.content.ContextWrapper; -import android.database.ContentObserver; -import android.hardware.Sensor; -import android.hardware.SensorEventListener; -import android.hardware.SensorManager; import android.os.Handler; import android.os.Looper; -import android.provider.DeviceConfig; -import android.provider.Settings; -import android.test.mock.MockContentResolver; -import android.util.Slog; import android.util.SparseArray; import android.view.Display; -import androidx.test.core.app.ApplicationProvider; +import androidx.test.InstrumentationRegistry; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; -import com.android.internal.util.Preconditions; -import com.android.internal.util.test.FakeSettingsProvider; -import com.android.internal.util.test.FakeSettingsProviderRule; import com.android.server.display.DisplayModeDirector.BrightnessObserver; import com.android.server.display.DisplayModeDirector.DesiredDisplayModeSpecs; import com.android.server.display.DisplayModeDirector.Vote; -import com.android.server.testutils.FakeDeviceConfigInterface; import com.google.common.truth.Truth; import org.junit.Before; -import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; -import org.mockito.ArgumentCaptor; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.concurrent.Executor; -import java.util.concurrent.TimeUnit; -import java.util.stream.Collectors; - @SmallTest @RunWith(AndroidJUnit4.class) public class DisplayModeDirectorTest { // The tolerance within which we consider something approximately equals. - private static final String TAG = "DisplayModeDirectorTest"; - private static final boolean DEBUG = false; private static final float FLOAT_TOLERANCE = 0.01f; private Context mContext; - private FakesInjector mInjector; - private Handler mHandler; - @Rule - public FakeSettingsProviderRule mSettingsProviderRule = FakeSettingsProvider.rule(); @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); - mContext = spy(new ContextWrapper(ApplicationProvider.getApplicationContext())); - final MockContentResolver resolver = mSettingsProviderRule.mockContentResolver(mContext); - when(mContext.getContentResolver()).thenReturn(resolver); - mInjector = new FakesInjector(); - mHandler = new Handler(Looper.getMainLooper()); + mContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); } private DisplayModeDirector createDirectorFromRefreshRateArray( float[] refreshRates, int baseModeId) { DisplayModeDirector director = - new DisplayModeDirector(mContext, mHandler, mInjector); + new DisplayModeDirector(mContext, new Handler(Looper.getMainLooper())); int displayId = 0; Display.Mode[] modes = new Display.Mode[refreshRates.length]; for (int i = 0; i < refreshRates.length; i++) { @@ -209,9 +159,9 @@ public class DisplayModeDirectorTest { } @Test - public void testFlickerHasLowerPriorityThanUser() { - assertTrue(PRIORITY_FLICKER < Vote.PRIORITY_APP_REQUEST_REFRESH_RATE); - assertTrue(PRIORITY_FLICKER < Vote.PRIORITY_APP_REQUEST_SIZE); + public void testBrightnessHasLowerPriorityThanUser() { + assertTrue(Vote.PRIORITY_LOW_BRIGHTNESS < Vote.PRIORITY_APP_REQUEST_REFRESH_RATE); + assertTrue(Vote.PRIORITY_LOW_BRIGHTNESS < Vote.PRIORITY_APP_REQUEST_SIZE); int displayId = 0; DisplayModeDirector director = createDirectorFromFpsRange(60, 90); @@ -219,7 +169,7 @@ public class DisplayModeDirectorTest { SparseArray<SparseArray<Vote>> votesByDisplay = new SparseArray<>(); votesByDisplay.put(displayId, votes); votes.put(Vote.PRIORITY_APP_REQUEST_REFRESH_RATE, Vote.forRefreshRates(60, 90)); - votes.put(PRIORITY_FLICKER, Vote.forRefreshRates(60, 60)); + votes.put(Vote.PRIORITY_LOW_BRIGHTNESS, Vote.forRefreshRates(60, 60)); director.injectVotesByDisplay(votesByDisplay); DesiredDisplayModeSpecs desiredSpecs = director.getDesiredDisplayModeSpecs(displayId); Truth.assertThat(desiredSpecs.primaryRefreshRateRange.min).isWithin(FLOAT_TOLERANCE).of(60); @@ -227,7 +177,7 @@ public class DisplayModeDirectorTest { votes.clear(); votes.put(Vote.PRIORITY_APP_REQUEST_REFRESH_RATE, Vote.forRefreshRates(60, 90)); - votes.put(PRIORITY_FLICKER, Vote.forRefreshRates(90, 90)); + votes.put(Vote.PRIORITY_LOW_BRIGHTNESS, Vote.forRefreshRates(90, 90)); director.injectVotesByDisplay(votesByDisplay); desiredSpecs = director.getDesiredDisplayModeSpecs(displayId); Truth.assertThat(desiredSpecs.primaryRefreshRateRange.min).isWithin(FLOAT_TOLERANCE).of(90); @@ -235,7 +185,7 @@ public class DisplayModeDirectorTest { votes.clear(); votes.put(Vote.PRIORITY_APP_REQUEST_REFRESH_RATE, Vote.forRefreshRates(90, 90)); - votes.put(PRIORITY_FLICKER, Vote.forRefreshRates(60, 60)); + votes.put(Vote.PRIORITY_LOW_BRIGHTNESS, Vote.forRefreshRates(60, 60)); director.injectVotesByDisplay(votesByDisplay); desiredSpecs = director.getDesiredDisplayModeSpecs(displayId); Truth.assertThat(desiredSpecs.primaryRefreshRateRange.min).isWithin(FLOAT_TOLERANCE).of(90); @@ -243,7 +193,7 @@ public class DisplayModeDirectorTest { votes.clear(); votes.put(Vote.PRIORITY_APP_REQUEST_REFRESH_RATE, Vote.forRefreshRates(60, 60)); - votes.put(PRIORITY_FLICKER, Vote.forRefreshRates(90, 90)); + votes.put(Vote.PRIORITY_LOW_BRIGHTNESS, Vote.forRefreshRates(90, 90)); director.injectVotesByDisplay(votesByDisplay); desiredSpecs = director.getDesiredDisplayModeSpecs(displayId); Truth.assertThat(desiredSpecs.primaryRefreshRateRange.min).isWithin(FLOAT_TOLERANCE).of(60); @@ -252,10 +202,10 @@ public class DisplayModeDirectorTest { @Test public void testAppRequestRefreshRateRange() { - // Confirm that the app request range doesn't include flicker or min refresh rate settings, - // but does include everything else. + // Confirm that the app request range doesn't include low brightness or min refresh rate + // settings, but does include everything else. assertTrue( - PRIORITY_FLICKER < Vote.APP_REQUEST_REFRESH_RATE_RANGE_PRIORITY_CUTOFF); + Vote.PRIORITY_LOW_BRIGHTNESS < Vote.APP_REQUEST_REFRESH_RATE_RANGE_PRIORITY_CUTOFF); assertTrue(Vote.PRIORITY_USER_SETTING_MIN_REFRESH_RATE < Vote.APP_REQUEST_REFRESH_RATE_RANGE_PRIORITY_CUTOFF); assertTrue(Vote.PRIORITY_APP_REQUEST_REFRESH_RATE @@ -266,7 +216,7 @@ public class DisplayModeDirectorTest { SparseArray<Vote> votes = new SparseArray<>(); SparseArray<SparseArray<Vote>> votesByDisplay = new SparseArray<>(); votesByDisplay.put(displayId, votes); - votes.put(PRIORITY_FLICKER, Vote.forRefreshRates(60, 60)); + votes.put(Vote.PRIORITY_LOW_BRIGHTNESS, Vote.forRefreshRates(60, 60)); director.injectVotesByDisplay(votesByDisplay); DesiredDisplayModeSpecs desiredSpecs = director.getDesiredDisplayModeSpecs(displayId); Truth.assertThat(desiredSpecs.primaryRefreshRateRange.min).isWithin(FLOAT_TOLERANCE).of(60); @@ -352,343 +302,4 @@ public class DisplayModeDirectorTest { verifyBrightnessObserverCall(director, 90, 90, 0, 90, 90); verifyBrightnessObserverCall(director, 120, 90, 0, 120, 90); } - - @Test - public void testBrightnessObserverGetsUpdatedRefreshRatesForZone() { - DisplayModeDirector director = - createDirectorFromRefreshRateArray(new float[] {60.f, 90.f}, /* baseModeId= */ 0); - SensorManager sensorManager = createMockSensorManager(createLightSensor()); - - final int initialRefreshRate = 60; - mInjector.getDeviceConfig().setRefreshRateInLowZone(initialRefreshRate); - director.start(sensorManager); - assertThat(director.getBrightnessObserver().getRefreshRateInLowZone()) - .isEqualTo(initialRefreshRate); - - final int updatedRefreshRate = 90; - mInjector.getDeviceConfig().setRefreshRateInLowZone(updatedRefreshRate); - // Need to wait for the property change to propagate to the main thread. - waitForIdleSync(); - assertThat(director.getBrightnessObserver().getRefreshRateInLowZone()) - .isEqualTo(updatedRefreshRate); - } - - @Test - public void testBrightnessObserverThresholdsInZone() { - DisplayModeDirector director = - createDirectorFromRefreshRateArray(new float[] {60.f, 90.f}, /* baseModeId= */ 0); - SensorManager sensorManager = createMockSensorManager(createLightSensor()); - - final int[] initialDisplayThresholds = { 10 }; - final int[] initialAmbientThresholds = { 20 }; - - final FakeDeviceConfig config = mInjector.getDeviceConfig(); - config.setLowDisplayBrightnessThresholds(initialDisplayThresholds); - config.setLowAmbientBrightnessThresholds(initialAmbientThresholds); - director.start(sensorManager); - - assertThat(director.getBrightnessObserver().getLowDisplayBrightnessThresholds()) - .isEqualTo(initialDisplayThresholds); - assertThat(director.getBrightnessObserver().getLowAmbientBrightnessThresholds()) - .isEqualTo(initialAmbientThresholds); - - final int[] updatedDisplayThresholds = { 9, 14 }; - final int[] updatedAmbientThresholds = { -1, 19 }; - config.setLowDisplayBrightnessThresholds(updatedDisplayThresholds); - config.setLowAmbientBrightnessThresholds(updatedAmbientThresholds); - // Need to wait for the property change to propagate to the main thread. - waitForIdleSync(); - assertThat(director.getBrightnessObserver().getLowDisplayBrightnessThresholds()) - .isEqualTo(updatedDisplayThresholds); - assertThat(director.getBrightnessObserver().getLowAmbientBrightnessThresholds()) - .isEqualTo(updatedAmbientThresholds); - } - - @Test - public void testLockFpsForLowZone() throws Exception { - DisplayModeDirector director = - createDirectorFromRefreshRateArray(new float[] {60.f, 90.f}, 0); - setPeakRefreshRate(90); - director.getSettingsObserver().setDefaultRefreshRate(90); - director.getBrightnessObserver().setDefaultDisplayState(true); - - final FakeDeviceConfig config = mInjector.getDeviceConfig(); - config.setRefreshRateInLowZone(90); - config.setLowDisplayBrightnessThresholds(new int[] { 10 }); - config.setLowAmbientBrightnessThresholds(new int[] { 20 }); - - Sensor lightSensor = createLightSensor(); - SensorManager sensorManager = createMockSensorManager(lightSensor); - - director.start(sensorManager); - - ArgumentCaptor<SensorEventListener> listenerCaptor = - ArgumentCaptor.forClass(SensorEventListener.class); - Mockito.verify(sensorManager, Mockito.timeout(TimeUnit.SECONDS.toMillis(1))) - .registerListener( - listenerCaptor.capture(), - eq(lightSensor), - anyInt(), - any(Handler.class)); - SensorEventListener listener = listenerCaptor.getValue(); - - setBrightness(10); - // Sensor reads 20 lux, - listener.onSensorChanged(TestUtils.createSensorEvent(lightSensor, 20 /*lux*/)); - - Vote vote = director.getVote(Display.DEFAULT_DISPLAY, PRIORITY_FLICKER); - assertVoteForRefreshRateLocked(vote, 90 /*fps*/); - - setBrightness(125); - // Sensor reads 1000 lux, - listener.onSensorChanged(TestUtils.createSensorEvent(lightSensor, 1000 /*lux*/)); - - vote = director.getVote(Display.DEFAULT_DISPLAY, PRIORITY_FLICKER); - assertThat(vote).isNull(); - } - - @Test - public void testLockFpsForHighZone() throws Exception { - DisplayModeDirector director = - createDirectorFromRefreshRateArray(new float[] {60.f, 90.f}, 0); - setPeakRefreshRate(90 /*fps*/); - director.getSettingsObserver().setDefaultRefreshRate(90); - director.getBrightnessObserver().setDefaultDisplayState(true); - - final FakeDeviceConfig config = mInjector.getDeviceConfig(); - config.setRefreshRateInHighZone(60); - config.setHighDisplayBrightnessThresholds(new int[] { 255 }); - config.setHighAmbientBrightnessThresholds(new int[] { 8000 }); - - Sensor lightSensor = createLightSensor(); - SensorManager sensorManager = createMockSensorManager(lightSensor); - - director.start(sensorManager); - - ArgumentCaptor<SensorEventListener> listenerCaptor = - ArgumentCaptor.forClass(SensorEventListener.class); - Mockito.verify(sensorManager, Mockito.timeout(TimeUnit.SECONDS.toMillis(1))) - .registerListener( - listenerCaptor.capture(), - eq(lightSensor), - anyInt(), - any(Handler.class)); - SensorEventListener listener = listenerCaptor.getValue(); - - setBrightness(100); - // Sensor reads 2000 lux, - listener.onSensorChanged(TestUtils.createSensorEvent(lightSensor, 2000)); - - Vote vote = director.getVote(Display.DEFAULT_DISPLAY, PRIORITY_FLICKER); - assertThat(vote).isNull(); - - setBrightness(255); - // Sensor reads 9000 lux, - listener.onSensorChanged(TestUtils.createSensorEvent(lightSensor, 9000)); - - vote = director.getVote(Display.DEFAULT_DISPLAY, PRIORITY_FLICKER); - assertVoteForRefreshRateLocked(vote, 60 /*fps*/); - } - - private void assertVoteForRefreshRateLocked(Vote vote, float refreshRate) { - assertThat(vote).isNotNull(); - final DisplayModeDirector.RefreshRateRange expectedRange = - new DisplayModeDirector.RefreshRateRange(refreshRate, refreshRate); - assertThat(vote.refreshRateRange).isEqualTo(expectedRange); - } - - private static class FakeDeviceConfig extends FakeDeviceConfigInterface { - @Override - public String getProperty(String namespace, String name) { - Preconditions.checkArgument(DeviceConfig.NAMESPACE_DISPLAY_MANAGER.equals(namespace)); - return super.getProperty(namespace, name); - } - - @Override - public void addOnPropertiesChangedListener( - String namespace, - Executor executor, - DeviceConfig.OnPropertiesChangedListener listener) { - Preconditions.checkArgument(DeviceConfig.NAMESPACE_DISPLAY_MANAGER.equals(namespace)); - super.addOnPropertiesChangedListener(namespace, executor, listener); - } - - void setRefreshRateInLowZone(int fps) { - putPropertyAndNotify( - DeviceConfig.NAMESPACE_DISPLAY_MANAGER, KEY_REFRESH_RATE_IN_LOW_ZONE, - String.valueOf(fps)); - } - - void setLowDisplayBrightnessThresholds(int[] brightnessThresholds) { - String thresholds = toPropertyValue(brightnessThresholds); - - if (DEBUG) { - Slog.e(TAG, "Brightness Thresholds = " + thresholds); - } - - putPropertyAndNotify( - DeviceConfig.NAMESPACE_DISPLAY_MANAGER, - KEY_FIXED_REFRESH_RATE_LOW_DISPLAY_BRIGHTNESS_THRESHOLDS, - thresholds); - } - - void setLowAmbientBrightnessThresholds(int[] ambientThresholds) { - String thresholds = toPropertyValue(ambientThresholds); - - if (DEBUG) { - Slog.e(TAG, "Ambient Thresholds = " + thresholds); - } - - putPropertyAndNotify( - DeviceConfig.NAMESPACE_DISPLAY_MANAGER, - KEY_FIXED_REFRESH_RATE_LOW_AMBIENT_BRIGHTNESS_THRESHOLDS, - thresholds); - } - - void setRefreshRateInHighZone(int fps) { - putPropertyAndNotify( - DeviceConfig.NAMESPACE_DISPLAY_MANAGER, KEY_REFRESH_RATE_IN_HIGH_ZONE, - String.valueOf(fps)); - } - - void setHighDisplayBrightnessThresholds(int[] brightnessThresholds) { - String thresholds = toPropertyValue(brightnessThresholds); - - if (DEBUG) { - Slog.e(TAG, "Brightness Thresholds = " + thresholds); - } - - putPropertyAndNotify( - DeviceConfig.NAMESPACE_DISPLAY_MANAGER, - KEY_FIXED_REFRESH_RATE_HIGH_DISPLAY_BRIGHTNESS_THRESHOLDS, - thresholds); - } - - void setHighAmbientBrightnessThresholds(int[] ambientThresholds) { - String thresholds = toPropertyValue(ambientThresholds); - - if (DEBUG) { - Slog.e(TAG, "Ambient Thresholds = " + thresholds); - } - - putPropertyAndNotify( - DeviceConfig.NAMESPACE_DISPLAY_MANAGER, - KEY_FIXED_REFRESH_RATE_HIGH_AMBIENT_BRIGHTNESS_THRESHOLDS, - thresholds); - } - - @NonNull - private static String toPropertyValue(@NonNull int[] intArray) { - return Arrays.stream(intArray) - .mapToObj(Integer::toString) - .collect(Collectors.joining(",")); - } - } - - private void setBrightness(int brightness) { - Settings.System.putInt(mContext.getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, - brightness); - mInjector.notifyBrightnessChanged(); - waitForIdleSync(); - } - - private void setPeakRefreshRate(float fps) { - Settings.System.putFloat(mContext.getContentResolver(), Settings.System.PEAK_REFRESH_RATE, - fps); - mInjector.notifyPeakRefreshRateChanged(); - waitForIdleSync(); - } - - private static SensorManager createMockSensorManager(Sensor... sensors) { - SensorManager sensorManager = Mockito.mock(SensorManager.class); - when(sensorManager.getSensorList(anyInt())).then((invocation) -> { - List<Sensor> requestedSensors = new ArrayList<>(); - int type = invocation.getArgument(0); - for (Sensor sensor : sensors) { - if (sensor.getType() == type || type == Sensor.TYPE_ALL) { - requestedSensors.add(sensor); - } - } - return requestedSensors; - }); - - when(sensorManager.getDefaultSensor(anyInt())).then((invocation) -> { - int type = invocation.getArgument(0); - for (Sensor sensor : sensors) { - if (sensor.getType() == type) { - return sensor; - } - } - return null; - }); - return sensorManager; - } - - private static Sensor createLightSensor() { - try { - return TestUtils.createSensor(Sensor.TYPE_LIGHT, Sensor.STRING_TYPE_LIGHT); - } catch (Exception e) { - // There's nothing we can do if this fails, just throw a RuntimeException so that we - // don't have to mark every function that might call this as throwing Exception - throw new RuntimeException("Failed to create a light sensor", e); - } - } - - private void waitForIdleSync() { - mHandler.runWithScissors(() -> { }, 500 /*timeout*/); - } - - static class FakesInjector implements DisplayModeDirector.Injector { - private final FakeDeviceConfig mDeviceConfig; - private ContentObserver mBrightnessObserver; - private ContentObserver mPeakRefreshRateObserver; - - FakesInjector() { - mDeviceConfig = new FakeDeviceConfig(); - } - - @NonNull - public FakeDeviceConfig getDeviceConfig() { - return mDeviceConfig; - } - - @Override - public void registerBrightnessObserver(@NonNull ContentResolver cr, - @NonNull ContentObserver observer) { - if (mBrightnessObserver != null) { - throw new IllegalStateException("Tried to register a second brightness observer"); - } - mBrightnessObserver = observer; - } - - @Override - public void unregisterBrightnessObserver(@NonNull ContentResolver cr, - @NonNull ContentObserver observer) { - mBrightnessObserver = null; - } - - void notifyBrightnessChanged() { - if (mBrightnessObserver != null) { - mBrightnessObserver.dispatchChange(false /*selfChange*/, DISPLAY_BRIGHTNESS_URI); - } - } - - @Override - public void registerPeakRefreshRateObserver(@NonNull ContentResolver cr, - @NonNull ContentObserver observer) { - mPeakRefreshRateObserver = observer; - } - - void notifyPeakRefreshRateChanged() { - if (mPeakRefreshRateObserver != null) { - mPeakRefreshRateObserver.dispatchChange(false /*selfChange*/, - PEAK_REFRESH_RATE_URI); - } - } - - @Override - public boolean isDeviceInteractive(@NonNull Context context) { - return true; - } - } } diff --git a/services/tests/wmtests/src/com/android/server/wm/HighRefreshRateBlacklistTest.java b/services/tests/wmtests/src/com/android/server/wm/HighRefreshRateBlacklistTest.java index 112b2e98a7f1..f53894ad9ec5 100644 --- a/services/tests/wmtests/src/com/android/server/wm/HighRefreshRateBlacklistTest.java +++ b/services/tests/wmtests/src/com/android/server/wm/HighRefreshRateBlacklistTest.java @@ -31,7 +31,7 @@ import androidx.test.filters.SmallTest; import com.android.internal.R; import com.android.internal.util.Preconditions; -import com.android.server.testutils.FakeDeviceConfigInterface; +import com.android.server.wm.utils.FakeDeviceConfigInterface; import org.junit.After; import org.junit.Test; diff --git a/services/tests/wmtests/src/com/android/server/wm/WindowManagerConstantsTest.java b/services/tests/wmtests/src/com/android/server/wm/WindowManagerConstantsTest.java index 7a0ef0d7d7a9..52100116df53 100644 --- a/services/tests/wmtests/src/com/android/server/wm/WindowManagerConstantsTest.java +++ b/services/tests/wmtests/src/com/android/server/wm/WindowManagerConstantsTest.java @@ -32,7 +32,7 @@ import android.platform.test.annotations.Presubmit; import androidx.test.filters.SmallTest; -import com.android.server.testutils.FakeDeviceConfigInterface; +import com.android.server.wm.utils.FakeDeviceConfigInterface; import org.junit.After; import org.junit.Before; diff --git a/services/tests/servicestests/utils/com/android/server/testutils/FakeDeviceConfigInterface.java b/services/tests/wmtests/src/com/android/server/wm/utils/FakeDeviceConfigInterface.java index a67f64596ef5..2904a5b73646 100644 --- a/services/tests/servicestests/utils/com/android/server/testutils/FakeDeviceConfigInterface.java +++ b/services/tests/wmtests/src/com/android/server/wm/utils/FakeDeviceConfigInterface.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.server.testutils; +package com.android.server.wm.utils; import android.annotation.NonNull; import android.provider.DeviceConfig; @@ -22,7 +22,6 @@ import android.util.ArrayMap; import android.util.Pair; import com.android.internal.util.Preconditions; -import com.android.server.utils.DeviceConfigInterface; import java.lang.reflect.Constructor; import java.util.HashMap; @@ -123,19 +122,6 @@ public class FakeDeviceConfigInterface implements DeviceConfigInterface { } @Override - public float getFloat(String namespace, String name, float defaultValue) { - String value = getProperty(namespace, name); - if (value == null) { - return defaultValue; - } - try { - return Float.parseFloat(value); - } catch (NumberFormatException e) { - return defaultValue; - } - } - - @Override public boolean getBoolean(String namespace, String name, boolean defaultValue) { String value = getProperty(namespace, name); return value != null ? Boolean.parseBoolean(value) : defaultValue; |