Loading packages/SystemUI/src/com/android/systemui/util/condition/Monitor.java +6 −0 Original line number Diff line number Diff line Loading @@ -81,6 +81,12 @@ public class Monitor implements CallbackController<Monitor.Callback> { public Monitor(Set<Condition> conditions) { mConditions = conditions; // If there is no condition, give green pass. if (mConditions.isEmpty()) { mAllConditionsMet = true; return; } // Initializes the conditions map and registers a callback for each condition. mConditions.forEach((condition -> mConditionsMap.put(condition, false))); } Loading packages/SystemUI/tests/src/com/android/systemui/util/condition/ConditionMonitorTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -96,6 +96,16 @@ public class ConditionMonitorTest extends SysuiTestCase { verify(callback2).onConditionsChanged(true); } @Test public void addCallback_noConditions_reportAllConditionsMet() { final Monitor monitor = new Monitor(new HashSet<>()); final Monitor.Callback callback = mock(Monitor.Callback.class); monitor.addCallback(callback); verify(callback).onConditionsChanged(true); } @Test public void removeCallback_shouldNoLongerReceiveUpdate() { final Monitor.Callback callback = Loading Loading
packages/SystemUI/src/com/android/systemui/util/condition/Monitor.java +6 −0 Original line number Diff line number Diff line Loading @@ -81,6 +81,12 @@ public class Monitor implements CallbackController<Monitor.Callback> { public Monitor(Set<Condition> conditions) { mConditions = conditions; // If there is no condition, give green pass. if (mConditions.isEmpty()) { mAllConditionsMet = true; return; } // Initializes the conditions map and registers a callback for each condition. mConditions.forEach((condition -> mConditionsMap.put(condition, false))); } Loading
packages/SystemUI/tests/src/com/android/systemui/util/condition/ConditionMonitorTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -96,6 +96,16 @@ public class ConditionMonitorTest extends SysuiTestCase { verify(callback2).onConditionsChanged(true); } @Test public void addCallback_noConditions_reportAllConditionsMet() { final Monitor monitor = new Monitor(new HashSet<>()); final Monitor.Callback callback = mock(Monitor.Callback.class); monitor.addCallback(callback); verify(callback).onConditionsChanged(true); } @Test public void removeCallback_shouldNoLongerReceiveUpdate() { final Monitor.Callback callback = Loading