### Question:
ChangeHandledMultiMap implements MultiMap<V, T, ListType> { @Override public boolean addAllValues(final V value, final Collection<T> tCollection) { addToCounter(); final boolean allValuesAdded = map.addAllValues(value, tCollection); for (final T t : tCollection) { addToChangeSet(value, t); } fire(); return allValuesAdded; } ChangeHandledMultiMap(final MultiMap<V, T, ListType> map); @Override boolean put(final V value,
                       final T t); @Override int size(); @Override Set<V> keySet(); @Override ListType get(final V key); @Override boolean addAllValues(final V value,
                                final Collection<T> tCollection); @Override Collection<T> remove(final V value); @Override boolean isEmpty(); void addChangeListener(final MultiMapChangeHandler<V, T> changeHandler); @Override Collection<T> allValues(); @Override void move(final Set<V> oldKeys,
                     final Set<V> newKeys,
                     final T t); @Override boolean containsKey(final V key); @Override V firstKey(); @Override V lastKey(); @Override MultiMap<V, T, ListType> subMap(final V fromKey,
                                           final boolean fromInclusive,
                                           final V toKey,
                                           final boolean toInclusive); @Override void removeValue(final V value,
                            final T t); @Override void clear(); @Override void putAllValues(final V value,
                             final Collection<T> ts);  }### Answer:
@Test public void testAddAllValues() throws Exception { final ArrayList<String> list = new ArrayList<>(); list.add( "a" ); list.add( "b" ); list.add( "c" ); map.addAllValues( new Value( "hello" ), list ); assertEquals( 3, changeSet.getAdded().get( new Value( "hello" ) ).size() ); assertTrue( changeSet.getAdded().get( new Value( "hello" ) ).contains( "a" ) ); assertTrue( changeSet.getAdded().get( new Value( "hello" ) ).contains( "b" ) ); assertTrue( changeSet.getAdded().get( new Value( "hello" ) ).contains( "c" ) ); assertEquals( 1, timesCalled ); }