@Test
public void testBatchHasElementsRecheckAndNextBatchShouldSchedule() throws IgniteCheckedException {

    MockedProcessor processor = MockedProcessor.create(false);
    KeyCacheObject nextKey = new KeyCacheObjectImpl(1, null, PARTITION_ID);
    Map<KeyCacheObject, Map<UUID, GridCacheVersion>> batchRes = new HashMap<>();
    batchRes.put(nextKey, new HashMap<>());
    ExecutionResult<T2<KeyCacheObject, Map<KeyCacheObject, Map<UUID, GridCacheVersion>>>> emptyRes = new ExecutionResult<>(new T2<>(nextKey, batchRes));
    processor.addTask(new Batch(ReconciliationExecutionContext.IGNORE_JOB_PERMITS_SESSION_ID, UUID.randomUUID(),
        DEFAULT_CACHE, PARTITION_ID, null))
        .whereResult(CollectPartitionKeysByBatchTask.class, emptyRes)
        .execute();
    processor.verify(times(1)).schedule(any(Batch.class));
    processor.verify(times(1)).schedule(any(Recheck.class), eq(10L), eq(SECONDS));
}