Exemple #1
0
  /**
   * This method compute the raw mark of the audit. Here is the algorithm formula :
   * passed/(passed+failed)
   *
   * @param wrStatistics
   * @return
   */
  public WebResourceStatistics computeRawMark(WebResourceStatistics wrStatistics) {
    float passed = wrStatistics.getNbOfPassed();
    // page on error, mark set to -1
    if (passed == -1) {
      wrStatistics.setRawMark(Float.valueOf(-1));
      return wrStatistics;
    }
    BigDecimal weightedPassed = wrStatistics.getWeightedPassed();
    BigDecimal weightedFailed = wrStatistics.getWeightedFailed();
    if ((weightedFailed.equals(BigDecimal.ZERO) || weightedFailed.equals(ZERO))
        && (weightedPassed.equals(BigDecimal.ZERO) || weightedPassed.equals(ZERO))) {
      wrStatistics.setRawMark(Float.valueOf(0));
      return wrStatistics;
    }

    float result =
        weightedPassed
                .divide(weightedPassed.add(weightedFailed), 4, RoundingMode.HALF_UP)
                .floatValue()
            * 100f;
    wrStatistics.setRawMark(result);
    return wrStatistics;
  }