public void execute(InputModuleHierarchy moduleHierarchy) {
    DefaultInputModule root = moduleHierarchy.root();
    // dont apply to root. Root is done by InputProjectProvider
    for (DefaultInputModule sub : moduleHierarchy.children(root)) {
      if (!Objects.equals(root.getWorkDir(), sub.getWorkDir())) {
        cleanAllWorkingDirs(moduleHierarchy, sub);
        mkdirsAllWorkingDirs(moduleHierarchy, sub);
      }
    }
  }
@Test
  public void execute_doesnt_fail_if_nothing_to_clean() {
    temp.delete();
    initializer.execute(hierarchy);
  }