package uk.co.acuminous.julez.test; import java.util.Arrays; import java.util.Iterator; import java.util.List; import uk.co.acuminous.julez.event.Event; public class TestUtils { public static int countEvents(Iterable<Event> events) { int ret = 0; for (@SuppressWarnings("unused") Event event : events) { ++ret; } return ret; } public static boolean checkEvents(List<Event> expected, Iterable<Event> repo) { Iterator<Event> actual = repo.iterator(); for (Event event : expected) { if (!actual.hasNext()) return false; if (!event.equals(actual.next())) return false; } return !actual.hasNext(); } public static boolean checkEvents(Event[] expected, Iterable<Event> repo) { return checkEvents(Arrays.asList(expected), repo); } public static Event getEvent(Iterable<Event> repo, int i) { int sofar = 0; for (Event event : repo) { if (sofar == i) return event; ++sofar; } return null; } public static Event first(Iterable<Event> repo) { return repo.iterator().next(); } }