Loading packages/SystemUI/src/com/android/systemui/util/sensors/ProximitySensor.java +5 −1 Original line number Diff line number Diff line Loading @@ -170,7 +170,11 @@ public class ProximitySensor { return false; } if (mListeners.contains(listener)) { Log.d(TAG, "ProxListener registered multiple times: " + listener); } else { mListeners.add(listener); } registerInternal(); return true; Loading packages/SystemUI/tests/src/com/android/systemui/util/sensors/ProximitySensorTest.java +24 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,30 @@ public class ProximitySensorTest extends SysuiTestCase { waitForSensorManager(); } @Test public void testDuplicateListener() { TestableListener listenerA = new TestableListener(); assertFalse(mProximitySensor.isRegistered()); mProximitySensor.register(listenerA); waitForSensorManager(); assertTrue(mProximitySensor.isRegistered()); mProximitySensor.register(listenerA); waitForSensorManager(); assertTrue(mProximitySensor.isRegistered()); assertNull(listenerA.mLastEvent); mFakeProximitySensor.sendProximityResult(true); assertFalse(listenerA.mLastEvent.getNear()); assertEquals(listenerA.mCallCount, 1); mFakeProximitySensor.sendProximityResult(false); assertTrue(listenerA.mLastEvent.getNear()); assertEquals(listenerA.mCallCount, 2); mProximitySensor.unregister(listenerA); waitForSensorManager(); } @Test public void testUnregister() { TestableListener listener = new TestableListener(); Loading Loading
packages/SystemUI/src/com/android/systemui/util/sensors/ProximitySensor.java +5 −1 Original line number Diff line number Diff line Loading @@ -170,7 +170,11 @@ public class ProximitySensor { return false; } if (mListeners.contains(listener)) { Log.d(TAG, "ProxListener registered multiple times: " + listener); } else { mListeners.add(listener); } registerInternal(); return true; Loading
packages/SystemUI/tests/src/com/android/systemui/util/sensors/ProximitySensorTest.java +24 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,30 @@ public class ProximitySensorTest extends SysuiTestCase { waitForSensorManager(); } @Test public void testDuplicateListener() { TestableListener listenerA = new TestableListener(); assertFalse(mProximitySensor.isRegistered()); mProximitySensor.register(listenerA); waitForSensorManager(); assertTrue(mProximitySensor.isRegistered()); mProximitySensor.register(listenerA); waitForSensorManager(); assertTrue(mProximitySensor.isRegistered()); assertNull(listenerA.mLastEvent); mFakeProximitySensor.sendProximityResult(true); assertFalse(listenerA.mLastEvent.getNear()); assertEquals(listenerA.mCallCount, 1); mFakeProximitySensor.sendProximityResult(false); assertTrue(listenerA.mLastEvent.getNear()); assertEquals(listenerA.mCallCount, 2); mProximitySensor.unregister(listenerA); waitForSensorManager(); } @Test public void testUnregister() { TestableListener listener = new TestableListener(); Loading