package com.manning.hip.ch13.mrunit;
import org.apache.hadoop.mrunit.TestDriver;
import org.apache.hadoop.mrunit.types.Pair;
import java.util.List;
import static org.junit.Assert.assertEquals;
public class MRUnitJUnitAsserts {
public static <K1, V1, K2, V2> void assertOutputs(
TestDriver<K1, V1, K2, V2> driver, List<Pair<K2, V2>> actuals) {
List<Pair<K2, V2>> expected = driver.getExpectedOutputs();
assertEquals("Number of expected records don't match actual number",
expected.size(), actuals.size());
// make sure all actual outputs are in the expected set,
// and at the proper position.
for (int i = 0; i < expected.size(); i++) {
Pair<K2, V2> actual = actuals.get(i);
Pair<K2, V2> expect = expected.get(i);
assertEquals("Records don't match at position " + i,
expect, actual);
}
}
}