mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

boli
13.17.2007 7b8998d749c79a54fa81b37741fadfe68500ef4d
Made the following enhancements to the coveragediff tool:

Floating point numbers are now formatted correctly
Coverage info only shows for modified lines
Anchor names are generated incrementally
1 files modified
54 ■■■■■ changed files
opendj-sdk/opends/build-tools/src/org/opends/build/tools/CoverageDiff.java 54 ●●●●● patch | view | raw | blame | history
opendj-sdk/opends/build-tools/src/org/opends/build/tools/CoverageDiff.java
@@ -377,18 +377,24 @@
      String modCoverageStr = "";
      if(overallModCoverage[MOD_EXE_LINES] > 0)
      {
        modCoverageStr =
            String.valueOf(overallModCoverage[COVERED_MOD_EXE_LINES]/overallModCoverage[MOD_EXE_LINES]*100) + "% ";
        modCoverageStr = String.format("%d%% (%.1f/%.1f)",
            (int)(overallModCoverage[COVERED_MOD_EXE_LINES]/overallModCoverage[MOD_EXE_LINES]*100),
            overallModCoverage[COVERED_MOD_EXE_LINES],
            overallModCoverage[MOD_EXE_LINES]);
      }
      modCoverageStr = modCoverageStr + "(" +
          overallModCoverage[COVERED_MOD_EXE_LINES] + "/" +
          overallModCoverage[MOD_EXE_LINES] +")";
      else
      {
        modCoverageStr = String.format("%d%% (%.1f/%.1f)", 100,
            overallModCoverage[COVERED_MOD_EXE_LINES],
            overallModCoverage[MOD_EXE_LINES]);
      }
      row = statsTable.newRow ();
      row.newCell ().setText ("total lines modified:", true);
      row.newCell ().setText ("" + overallModCoverage[MOD_LINES], true);
      row.newCell ().setText ("" + overallModCoverage[MOD_LINES].intValue(), true);
      row = statsTable.newRow ();
      row.newCell ().setText ("total lines removed:", true);
      row.newCell ().setText ("" + overallModCoverage[DEL_LINES], true);
      row.newCell ().setText ("" + overallModCoverage[DEL_LINES].intValue(), true);
      row = statsTable.newRow ();
      row.newCell ().setText ("coverage for modified executable lines:", true);
      row.newCell ().setText ("" + modCoverageStr, true);
@@ -412,20 +418,21 @@
    }
    Set<Map.Entry<String, SrcFileItem>> items = emmaSrcMap.entrySet();
    Map.Entry<String, SrcFileItem> item;
    boolean odd = true;
    int count = 0;
    for (Map.Entry<String, SrcFileItem> item1 : items) {
      item = item1;
    for (Map.Entry<String, SrcFileItem> item : items) {
      if (item != null) {
        final String fileName = item.getKey();
        final SrcFileItem srcFileItem = item.getValue();
        final Double[] modCoverage = modCoverageMap.get(fileName);
        addItemRow(fileName, srcFileItem, modCoverage, odd, summaryTable, createHREF(fileName), true, true);
        addItemRow(fileName, srcFileItem, modCoverage, odd, summaryTable,
            "s" + count, true, true);
        odd = !odd;
        count++;
      }
    }
@@ -469,6 +476,7 @@
      }
    }
    //Figure out the flag for the working copy.
    String workingCopyFlag = null;
    String otherCopyFlag = null;
@@ -558,7 +566,7 @@
    }
    final IElement a = IElement.Factory.create (Tag.A);
    a.getAttributes ().set (Attribute.NAME, createHREF(srcFilePath.toString()));
    a.getAttributes ().set (Attribute.NAME, "s" + emmaSrcMap.keySet().size());
    html.add(a);
@@ -688,11 +696,6 @@
        {
          lineNumCell.setClass("dm");
          modCoverage[MOD_LINES] ++;
        }
        else
        {
          lineNumCell.setClass("ds");
        }
        if(lCoverageData != null)
        {
@@ -718,6 +721,12 @@
      }
      else
      {
          lineNumCell.setClass("ds");
        }
      }
      else
      {
        lineNumCell.setClass("dd");
        lineNumCell.setText(String.valueOf(otherCopyLine), true);
        lineTxtCell.setClass("ddt");
@@ -903,9 +912,16 @@
      String modCoverageStr = "";
      if(modCoverage[1] > 0)
      {
        modCoverageStr = String.valueOf(modCoverage[0]/modCoverage[1]*100) + "% ";
        modCoverageStr = String.format("%d%% (%.1f/%.1f)",
            (int)(modCoverage[COVERED_MOD_EXE_LINES]/modCoverage[MOD_EXE_LINES]*100),
            modCoverage[COVERED_MOD_EXE_LINES], modCoverage[MOD_EXE_LINES]);
      }
      modCoverageStr = modCoverageStr + "(" + modCoverage[0] + "/" + modCoverage[1] +")";
      else
      {
        modCoverageStr = String.format("%d%% (%.1f/%.1f)", 100,
            modCoverage[COVERED_MOD_EXE_LINES],
            modCoverage[MOD_EXE_LINES]);
      }
      final HTMLTable.ICell cell = row.newCell();
      cell.setText(modCoverageStr, true);