lib/generate-report.js
function _createFeaturesOverviewIndexPage(suite) {
    const featuresOverviewIndex = path.resolve(reportPath, INDEX_HTML);

    FEATURES_OVERVIEW_TEMPLATE = suite.customMetadata ?
      FEATURES_OVERVIEW_CUSTOM_METADATA_TEMPLATE : FEATURES_OVERVIEW_TEMPLATE;

    fs.writeFileSync(
      featuresOverviewIndex,
      _.template(_readTemplateFile(FEATURES_OVERVIEW_INDEX_TEMPLATE))({
        suite: suite,
        featuresOverview: _.template(_readTemplateFile(FEATURES_OVERVIEW_TEMPLATE))({
          suite: suite,
          _: _
        }),
        featuresScenariosOverviewChart: _.template(_readTemplateFile(SCENARIOS_OVERVIEW_CHART_TEMPLATE))({
          overviewPage: true,
          scenarios: suite.scenarios,
          _: _
        }),
        customDataOverview: _.template(_readTemplateFile(CUSTOMDATA_TEMPLATE))({
          suite: suite,
          _: _
        }),
        featuresOverviewChart: _.template(_readTemplateFile(FEATURES_OVERVIEW_CHART_TEMPLATE))({
          suite: suite,
          _: _
        }),
        customStyle: _readTemplateFile(suite.customStyle),
        styles: _readTemplateFile(suite.style),
        genericScript: _readTemplateFile(GENERIC_JS),
        pageTitle: pageTitle,
        reportName: reportName,
        pageFooter: pageFooter
      })
    );
  }
function _createFeaturesOverviewIndexPage(suite) {
    const featuresOverviewIndex = path.resolve(reportPath, INDEX_HTML);

    FEATURES_OVERVIEW_TEMPLATE = suite.customMetadata ?
      FEATURES_OVERVIEW_CUSTOM_METADATA_TEMPLATE : FEATURES_OVERVIEW_TEMPLATE;

    fs.writeFileSync(
      featuresOverviewIndex,
      _.template(_readTemplateFile(FEATURES_OVERVIEW_INDEX_TEMPLATE))({
        suite: suite,
        featuresOverview: _.template(_readTemplateFile(FEATURES_OVERVIEW_TEMPLATE))({
          suite: suite,
          _: _
        }),
        featuresScenariosOverviewChart: _.template(_readTemplateFile(SCENARIOS_OVERVIEW_CHART_TEMPLATE))({
          overviewPage: true,
          scenarios: suite.scenarios,
          _: _
        }),
        customDataOverview: _.template(_readTemplateFile(CUSTOMDATA_TEMPLATE))({
          suite: suite,
          _: _
        }),
        featuresOverviewChart: _.template(_readTemplateFile(FEATURES_OVERVIEW_CHART_TEMPLATE))({
          suite: suite,
          _: _
        }),
        customStyle: _readTemplateFile(suite.customStyle),
        styles: _readTemplateFile(suite.style),
        genericScript: _readTemplateFile(GENERIC_JS),
        pageTitle: pageTitle,
        reportName: reportName,
        pageFooter: pageFooter
      })
    );
  }
function _createFeaturesOverviewIndexPage ( suite ) { const featuresOverviewIndex = path . resolve ( reportPath , INDEX_HTML ) ; FEATURES_OVERVIEW_TEMPLATE = suite . customMetadata ? FEATURES_OVERVIEW_CUSTOM_METADATA_TEMPLATE : FEATURES_OVERVIEW_TEMPLATE ; fs . writeFileSync ( featuresOverviewIndex , _ . template ( _readTemplateFile ( FEATURES_OVERVIEW_INDEX_TEMPLATE ) ) ( { suite : suite , featuresOverview : _ . template ( _readTemplateFile ( FEATURES_OVERVIEW_TEMPLATE ) ) ( { suite : suite , _ : _ } ) , featuresScenariosOverviewChart : _ . template ( _readTemplateFile ( SCENARIOS_OVERVIEW_CHART_TEMPLATE ) ) ( { overviewPage : true , scenarios : suite . scenarios , _ : _ } ) , customDataOverview : _ . template ( _readTemplateFile ( CUSTOMDATA_TEMPLATE ) ) ( { suite : suite , _ : _ } ) , featuresOverviewChart : _ . template ( _readTemplateFile ( FEATURES_OVERVIEW_CHART_TEMPLATE ) ) ( { suite : suite , _ : _ } ) , customStyle : _readTemplateFile ( suite . customStyle ) , styles : _readTemplateFile ( suite . style ) , genericScript : _readTemplateFile ( GENERIC_JS ) , pageTitle : pageTitle , reportName : reportName , pageFooter : pageFooter } ) ) ; }
Generate the features overview
@param {object} suite JSON object with all the features and scenarios
@private
Generate the features overview