public static boolean isDone(
      Map<String, StepTransition> runtimeDag,
      Map<String, Boolean> idStatusMap,
      RestartConfig restartConfig) {

    Map<String, Set<String>> parentMap = new HashMap<>();
    Map<String, Set<String>> childMap = new HashMap<>();
    Deque<String> deque =
        prepareDagForTraversal(
            runtimeDag, idStatusMap.keySet(), restartConfig, parentMap, childMap);

    return isDone(idStatusMap, deque, parentMap, childMap);
  }
@Test
  public void testIsDone() throws Exception {
    WorkflowCreateRequest request =
        loadObject(
            "fixtures/workflows/request/sample-dag-test-3-wf.json", WorkflowCreateRequest.class);
    WorkflowInstance instance = new WorkflowInstance();
    instance.setRuntimeWorkflow(request.getWorkflow());
    Map<String, Boolean> idStatusMap = new LinkedHashMap<>();
    idStatusMap.put("job_1", Boolean.FALSE);
    Assert.assertTrue(
        DagHelper.isDone(new DagTranslator(MAPPER).translate(instance), idStatusMap, null));
  }