### Question:
SingleElementList implements ICommonsList <ELEMENTTYPE> { @UnsupportedOperation public boolean retainAll (@Nonnull final Collection <?> aElements) { ValueEnforcer.notNull (aElements, "Elements"); if (m_bHasElement) { if (aElements.contains (m_aElement)) return true; clear (); } return false; } SingleElementList();  SingleElementList(@Nullable final ELEMENTTYPE aElement); @Override @Nonnull @ReturnsMutableCopy SingleElementList <T> createInstance(); @Nonnull @ReturnsMutableCopy SingleElementList <ELEMENTTYPE> getClone(); boolean add(@Nullable final ELEMENTTYPE aElement); void add(@Nonnegative final int nIndex, @Nullable final ELEMENTTYPE aElement); boolean addAll(@Nonnull final Collection <? extends ELEMENTTYPE> aElements); boolean addAll(@Nonnegative final int nIndex, @Nonnull final Collection <? extends ELEMENTTYPE> aElements); void clear(); boolean contains(@Nullable final Object aElement); boolean containsAll(@Nonnull final Collection <?> aElements); ELEMENTTYPE get(@Nonnegative final int nIndex); int indexOf(final Object aElement); boolean isEmpty(); @Nonnull Iterator <ELEMENTTYPE> iterator(); int lastIndexOf(@Nullable final Object aElement); @Nonnull ListIterator <ELEMENTTYPE> listIterator(); @Nonnull ListIterator <ELEMENTTYPE> listIterator(final int nIndex); @Nullable ELEMENTTYPE remove(final int nIndex); boolean remove(@Nullable final Object aElement); boolean removeAll(@Nullable final Collection <?> aElements); @UnsupportedOperation boolean retainAll(@Nonnull final Collection <?> aElements); @Nullable ELEMENTTYPE set(@Nonnegative final int nIndex, @Nullable final ELEMENTTYPE aNewElement); @Nonnegative int size(); @Nonnull @CodingStyleguideUnaware ICommonsList <ELEMENTTYPE> subList(@Nonnegative final int nFromIndex, @Nonnegative final int nToIndex); @Nonnull Object [] toArray(); @Nonnull ARRAYELEMENTTYPE [] toArray(@Nonnull final ARRAYELEMENTTYPE [] aDest); @Override boolean equals(final Object o); @Override int hashCode(); @Override String toString();  }### Answer:
@Test public void testRetainAll () { final SingleElementList <String> aList = new SingleElementList <> ("init"); assertTrue (aList.retainAll (new CommonsArrayList <> ("init", "all"))); assertTrue (aList.contains ("init")); assertFalse (aList.retainAll (new CommonsArrayList <> ("all"))); assertFalse (aList.contains ("init")); assertFalse (aList.retainAll (new CommonsArrayList <> ("init"))); assertFalse (aList.contains ("init")); }