### Question:
MultiValueRequestParameters implements RequestParameters { @Override public Collection<String> remove(final String parameter) { final MultiValue removedMultiMap = parameters.remove(parameter); final List<String> emptyList = Collections.emptyList(); return removedMultiMap != null ? removedMultiMap.getValues() : emptyList; } MultiValueRequestParameters(); @Override boolean isEmpty(); @Override boolean isEmpty(final String parameter); @Override boolean contains(final String parameter); @Override boolean isSingleValue(final String parameter); @Override boolean hasMultipleValues(final String parameter); @Override String getSingleValue(final String parameter); @Override Collection<String> getParameterNames(); @Override Collection<String> getAllValues(final String parameter); @Override boolean mergeWith(final RequestParameters parameters); @Override boolean addParameterValue(final String parameter, final String value); @Override boolean addParameterEnumValues(final String parameter, final Enum<?>... values); @Override boolean addParameterStringValues(final String parameter, final String... values); @Override boolean addParameterValues(final String parameter, final Iterable<String> values); @Override Collection<String> remove(final String parameter); @Override void removeAll(); static final String SERVICE_VERSION; static final String SERVICE_TYPE; }### Answer:
@Test public void shouldReturnEmptyCollectionWhenRemovingNonExistingParameter() { final Collection<String> removedValues = requestParameters.remove("version"); assertThat(removedValues, isA(Collection.class)); assertThat(removedValues, is(empty())); }