public void execute() {
    new PathAwareCrawler<>(
      FormulaExecutorComponentVisitor.newBuilder(metricRepository, measureRepository).buildFor(formulas))
      .visit(treeRootHolder.getReportTreeRoot());
  }
@Test
  public void compute_zero_percent_duplicated_lines_density_when_there_is_no_duplication() {
    when(FILE_1_ATTRS.getLines()).thenReturn(10);
    when(FILE_2_ATTRS.getLines()).thenReturn(40);

    underTest.execute();

    assertRawMeasureValue(FILE_1_REF, DUPLICATED_LINES_DENSITY_KEY, 0d);
    assertRawMeasureValue(FILE_2_REF, DUPLICATED_LINES_DENSITY_KEY, 0d);
    assertNoRawMeasure(FILE_3_REF, DUPLICATED_LINES_DENSITY_KEY);
    assertNoRawMeasure(FILE_4_REF, DUPLICATED_LINES_DENSITY_KEY);
    assertRawMeasureValue(DIRECTORY_REF, DUPLICATED_LINES_DENSITY_KEY, 0d);
    assertRawMeasureValue(ROOT_REF, DUPLICATED_LINES_DENSITY_KEY, 0d);
  }