public void assertContainsOnly(Description description, List<?> actual, Object[] values) {
    """
	Asserts that the given {@code List} contains only the given values and nothing else, in any order. Duplicates are
	allowed.
	
	@param description contains information about the assertion.
	@param actual      the given {@code List}.
	@param values      the values that are expected to be in the given {@code List}.
	@throws NullPointerException     if the array of values is {@code null}.
	@throws IllegalArgumentException if the array of values is empty.
	@throws AssertionError           if the given {@code List} is {@code null}.
	@throws AssertionError           if the given {@code List} does not contain the given values or if the given {@code List}
	contains values that are not in the given array.
    """
    checkIsNotNullAndNotEmpty(values);
    assertNotNull(description, actual);
    Set<Object> notExpected = new LinkedHashSet<Object>(actual);
    Set<Object> notFound = containsOnly(notExpected, values);
    if (notExpected.isEmpty() && notFound.isEmpty()) {
      return;
    }
    throw failures.failure(description, shouldContainOnly(actual, values, notFound, notExpected));
  }
public void assertContainsOnly(Description description, List<?> actual, Object[] values) {
    checkIsNotNullAndNotEmpty(values);
    assertNotNull(description, actual);
    Set<Object> notExpected = new LinkedHashSet<Object>(actual);
    Set<Object> notFound = containsOnly(notExpected, values);
    if (notExpected.isEmpty() && notFound.isEmpty()) {
      return;
    }
    throw failures.failure(description, shouldContainOnly(actual, values, notFound, notExpected));
  }
public void assertContainsOnly ( Description description , List < ? > actual , Object [ ] values ) { checkIsNotNullAndNotEmpty ( values ) ; assertNotNull ( description , actual ) ; Set < Object > notExpected = new LinkedHashSet < Object > ( actual ) ; Set < Object > notFound = containsOnly ( notExpected , values ) ; if ( notExpected . isEmpty ( ) && notFound . isEmpty ( ) ) { return ; } throw failures . failure ( description , shouldContainOnly ( actual , values , notFound , notExpected ) ) ; }
Asserts that the given {@code List} contains only the given values and nothing else, in any order. Duplicates are
allowed.

@param description contains information about the assertion.
@param actual      the given {@code List}.
@param values      the values that are expected to be in the given {@code List}.
@throws NullPointerException     if the array of values is {@code null}.
@throws IllegalArgumentException if the array of values is empty.
@throws AssertionError           if the given {@code List} is {@code null}.
@throws AssertionError           if the given {@code List} does not contain the given values or if the given {@code List}
contains values that are not in the given array.
Asserts that the given { @code List } contains only the given values and nothing else in any order . Duplicates are allowed .