<?xml version="1.0" encoding="UTF-8"?>


<dsl-extension kind="buildFeature" type="xml-report-plugin" generateDslJar="true">
  <class name="XmlReport">
    <description>
      A [build feature](https://www.jetbrains.com/help/teamcity/xml-report-processing.html) parses
      xml report produced by external tools and present them as build results
    </description>
  </class>
  <function name="xmlReport">
    <description>
      Adds a [build feature](https://www.jetbrains.com/help/teamcity/xml-report-processing.html) parses
      xml report produced by external tools and present them as build results
      @see XmlReport
    </description>
  </function>
  <params>
    <param name="xmlReportParsing.reportType" dslName="reportType" type="XmlReportType" mandatory="true">
      <description>
        A report type
        @see XmlReportType
      </description>
    </param>
    <param name="xmlReportParsing.reportDirs" dslName="rules" mandatory="true">
      <description>
        Newline- or comma-separated set of rules specifying where to find reports in the form of +|-:path.
        Ant-style wildcards are supported.
      </description>
    </param>
    <param name="xmlReportParsing.verboseOutput" dslName="verbose" type="boolean" trueValue="true" falseValue="">
      <description>
        Enables verbose output to the build log
      </description>
    </param>
    <param name="xmlReportParsing.findBugs.home" dslName="findBugsHome">
      <description>
        A path to FindBugs installation on the agent if the XmlReportType.FINDBUGS reportType
      </description>
    </param>
  </params>
  <types>
    <enum name="XmlReportType">
      <description>Xml report type</description>
      <option name="JUNIT" value="junit"/>
      <option name="TESTNG" value="testng"/>
      <option name="CTEST" value="ctest"/>
      <option name="CHECKSTYLE" value="checkstyle"/>
      <option name="FINDBUGS" value="findBugs"/>
      <option name="GOOGLE_TEST" value="gtest"/>
      <option name="JSLINT" value="jslint"/>
      <option name="MSTEST" value="mstest"/>
      <option name="NUNIT" value="nunit"/>
      <option name="PMD" value="pmd"/>
      <option name="PMD_CPD" value="pmdCpd"/>
      <option name="SUREFIRE" value="surefire"/>
      <option name="TRX" value="trx"/>
      <option name="VSTEST" value="vstest"/>
    </enum>
  </types>
  <examples>
    <example>
      <description>
        Enables import of the test results in JUnit format from all the XML reports stored by the build on the agent under the "test-reports" directory.
      </description>
      <code>
        xmlReport {
          reportType = XmlReport.XmlReportType.JUNIT
          rules = "+:test-reports/**/*.xml"
        }
      </code>
    </example>
  </examples>
</dsl-extension>