Merge "Report all conditions met when no conditions given."
This commit is contained in:
@@ -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)));
|
||||
}
|
||||
|
||||
@@ -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 =
|
||||
|
||||
Reference in New Issue
Block a user