private void ascendingPermuation(final int size,
final SideEffect2<Integer, boolean[]> function) {
final int classId = CodeCoverageStore.registerClass("foo");
CodeCoverageStore.registerClassProbes(classId, 15);
final boolean[] probes = new boolean[size];
function.apply(classId, probes);
assertDoesNotHitLine(classId, 1, 2, 3);
for (int i = 0; i != probes.length; i++) {
probes[i] = true;
function.apply(classId, probes);
for (int j = 0; j <= i; j++) {
assertHitsLine(classId, j);
}
for (int j = i + 1; j != probes.length; j++) {
assertDoesNotHitLine(classId, j);
}
}
}