public BenchmarkRunResult analyzeTestRun()

in harness/src/main/java/org/apache/geode/perftest/analysis/BenchmarkRunAnalyzer.java [59:94]


  public BenchmarkRunResult analyzeTestRun(File baselineResultDir, File testResultDir)
      throws IOException {
    List<File> benchmarkDirs = Arrays.asList(testResultDir.listFiles());
    benchmarkDirs.sort(File::compareTo);
    BenchmarkRunResult result = new BenchmarkRunResult();

    for (File testDir : benchmarkDirs) {
      final List<File> testYardstickDirs = getYardstickOutputForBenchmarkDir(testDir);
      if (testYardstickDirs.isEmpty()) {
        continue;
      }
      File baselineDir = new File(baselineResultDir, testDir.getName());
      final List<File> baselineYardstickDirs = getYardstickOutputForBenchmarkDir(baselineDir);

      final BenchmarkRunResult.BenchmarkResult benchmarkResult =
          result.addBenchmark(testDir.getName());
      for (ProbeResultParser probe : probes) {
        List<ProbeResultParser.ResultData> testResults = getTestResult(testYardstickDirs, probe);
        List<ProbeResultParser.ResultData> baselineResults =
            getTestResult(baselineYardstickDirs, probe);

        Iterator<ProbeResultParser.ResultData> testResultIter = testResults.iterator();
        Iterator<ProbeResultParser.ResultData> baselineResultIter = baselineResults.iterator();

        while (testResultIter.hasNext()) {
          ProbeResultParser.ResultData testResult = testResultIter.next();
          ProbeResultParser.ResultData baselineResult = baselineResultIter.next();

          benchmarkResult.addProbeResult(testResult.description, baselineResult.value,
              testResult.value);
        }
      }
    }

    return result;
  }