private void testPositiveGetRecurringReservationsHelper(long reservationStart,
long reservationEnd, long searchStart, long searchEnd, long cycles,
long period, int periodMultiplier) {
maxPeriodicity = period * periodMultiplier;
Plan plan = new InMemoryPlan(queueMetrics, policy, agent, totalCapacity, 1L,
resCalc, minAlloc, maxAlloc, planName, replanner, true, maxPeriodicity,
context, new UTCClock());
ReservationId reservationID = submitReservation(plan, reservationStart,
reservationEnd, period);
for (int i = 0; i < cycles; i++) {
long searchStepIncrease = i * period;
Set<ReservationAllocation> alloc = plan.getReservations(null,
new ReservationInterval(searchStart + searchStepIncrease,
searchEnd + searchStepIncrease));
assertEquals(1, alloc.size());
assertEquals(reservationID, alloc.iterator().next().getReservationId());
}
}