docs: public void generateReport(List<XmlSuite> xmlSuites,
                                 List<ISuite> suites,
                                 String outputDirectoryName)
      {
          removeEmptyDirectories(new File(outputDirectoryName));
          
          boolean useFrames = System.getProperty(FRAMES_PROPERTY, "true").equals("true");
          boolean onlyFailures = System.getProperty(ONLY_FAILURES_PROPERTY, "false").equals("true");
  
          File outputDirectory = new File(outputDirectoryName, REPORT_DIRECTORY);
          outputDirectory.mkdirs();
  
          try
          {
              if (useFrames)
              {
                  createFrameset(outputDirectory);
              }
              createOverview(suites, outputDirectory, !useFrames, onlyFailures);
              createSuiteList(suites, outputDirectory, onlyFailures);
              createGroups(suites, outputDirectory);
              createResults(suites, outputDirectory, onlyFailures);
              createLog(outputDirectory, onlyFailures);
              copyResources(outputDirectory);
          }
          catch (Exception ex)
          {
              throw new ReportNGException("Failed generating HTML report.", ex);
          }
      }