FlinkCheckpointDuration implements FlinkHeuristic { @Override public void onAppCompleted(String applicationId, String attemptId) { doExportHeuristicsResults(applicationId); countersByAppId.remove(applicationId); } FlinkCheckpointDuration(HeuristicsResultDB heuristicsResultDB); @Override void onAppCompleted(String applicationId, String attemptId); @Override String getHelp(); @Override void process(Long timestamp, String applicationId, FlinkEventProtos.JobManagerEvent event); @Override void process(Long timestamp, String applicationId, FlinkEventProtos.JobEvent event); @Override void exportHeuristicsResults();  }
@Test public void onAppCompleted_do_nothing_when_no_events_received() { heuristic.onAppCompleted(UUID.randomUUID().toString(), UUID.randomUUID().toString()); verify(db, never()).createHeuristicResult(any()); }