package pl.mg6.testsupport;
import android.os.Parcelable;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ReparcelingResultList<T extends Parcelable> implements Iterable<ReparcelingResult<T>> {
private final List<ReparcelingResult<T>> results;
ReparcelingResultList(List<ReparcelingResult<T>> results) {
this.results = results;
}
public boolean areAllEqual() {
return getIssues().size() == 0;
}
public ReparcelingResult<T> get(int location) {
return results.get(location);
}
public ReparcelingResultList<T> getIssues() {
List<ReparcelingResult<T>> issues = new ArrayList<>();
for (ReparcelingResult<T> result : results) {
if (!result.areEqual()) {
issues.add(result);
}
}
return new ReparcelingResultList<>(issues);
}
@Override
public Iterator<ReparcelingResult<T>> iterator() {
return results.iterator();
}
public int size() {
return results.size();
}
}