### Question:
EventDrivenUpdatesMap extends AbstractMap<String, String> implements Serializable { public void add(String events, String...ids) { for (String event : EventDrivenUpdatesMap.parseEvents(events)) { Set<String> listenerIds = delegate.get(event); if (listenerIds == null) { listenerIds = new HashSet<>(); delegate.put(event, listenerIds); } listenerIds.addAll(Arrays.asList(ids)); } } EventDrivenUpdatesMap();   EventDrivenUpdatesMap(Map<String, Set<String>> delegate); @Override @SuppressWarnings("unchecked") String get(Object events); String get(Iterable<String> events, String defaultValue); String get(String events, String defaultValue); void add(String events, String...ids); @Override Set<Map.Entry<String, String>> entrySet(); @Override String toString();  }### Answer:
@Test public void add() { final EventDrivenUpdatesMap map = new EventDrivenUpdatesMap(DEFAULT_DELEGATE); map.add("event-d event-e", ":comp_1.1", ":comp_1.2"); assertThat("unexpected ID", map.getSeparate("event-d"), containsInAnyOrder(":comp_1.1", ":comp_1.2")); assertThat("unexpected ID", map.getSeparate("event-e"), containsInAnyOrder(":comp_1.1", ":comp_1.2")); assertThat("unexpected ID", map.getSeparate("event-d event-e"), containsInAnyOrder(":comp_1.1", ":comp_1.2")); assertThat("unexpected ID", map.getSeparate("event-d,event-e"), containsInAnyOrder(":comp_1.1", ":comp_1.2")); assertThat("unexpected ID", map.getSeparate("event-d, event-e"), containsInAnyOrder(":comp_1.1", ":comp_1.2")); }