Newer
Older

Thiemo Belmega
committed
package de.unipotsdam.cs.toolup.util;
import org.apache.commons.lang3.builder.ToStringBuilder;
import java.util.Collection;
public class AssertionUtil {
public static <T> void assertContainsAll(Collection<T> containingCollection, Collection<? extends T> containedCollection) {
if (containingCollection == null && containedCollection == null) {

Thiemo Belmega
committed
return;
}
if (containingCollection == null ^ containedCollection == null) {
throw new AssertionError("Expected: " + containingCollection + "\n but was: " + containedCollection);

Thiemo Belmega
committed
}
if (!containingCollection.containsAll(containedCollection)) {
String containing = ToStringBuilder.reflectionToString(containingCollection);
String contained = ToStringBuilder.reflectionToString(containedCollection);
throw new AssertionError("Expected that " + containing + "\n would contain all elements of : " + contained);

Thiemo Belmega
committed
}
}
public static <T> void assertCollectionEquals(Collection<T> expectedCollection, Collection<T> actualCollection) {
if (expectedCollection == null && actualCollection == null) {
return;
}
if (expectedCollection == null ^ actualCollection == null) {
throw new AssertionError("Expected: " + expectedCollection + "\n but was: " + actualCollection);
}
if (expectedCollection.size() != actualCollection.size()) {
throw new AssertionError("Expected size " + expectedCollection.size() + "\n but was: " + actualCollection.size());
}
assertContainsAll(expectedCollection, actualCollection);
assertContainsAll(actualCollection, expectedCollection);
}
}