diff options
-rw-r--r-- | org.jacoco.cli.test/src/org/jacoco/cli/internal/commands/ReportTest.java | 22 | ||||
-rw-r--r-- | org.jacoco.cli/src/org/jacoco/cli/internal/XmlDocumentation.java | 2 | ||||
-rw-r--r-- | org.jacoco.doc/xsl/cli.xsl | 17 |
3 files changed, 33 insertions, 8 deletions
diff --git a/org.jacoco.cli.test/src/org/jacoco/cli/internal/commands/ReportTest.java b/org.jacoco.cli.test/src/org/jacoco/cli/internal/commands/ReportTest.java index 89644c41..e721129b 100644 --- a/org.jacoco.cli.test/src/org/jacoco/cli/internal/commands/ReportTest.java +++ b/org.jacoco.cli.test/src/org/jacoco/cli/internal/commands/ReportTest.java @@ -117,4 +117,26 @@ public class ReportTest extends CommandTestBase { .isFile()); } + @Test + public void should_use_all_values_when_multiple_classfiles_options_are_provided() + throws Exception { + File html = new File(tmp.getRoot(), "coverage"); + + final String c1 = getClassPath() + + "/org/jacoco/cli/internal/commands/ReportTest.class"; + final String c2 = getClassPath() + + "/org/jacoco/cli/internal/commands/DumpTest.class"; + + execute("report", "-classfiles", c1, "-classfiles", c2, "-html", + html.getAbsolutePath()); + + assertOk(); + assertTrue(html.isDirectory()); + assertTrue(new File(html, + "org.jacoco.cli.internal.commands/ReportTest.html").isFile()); + assertTrue( + new File(html, "org.jacoco.cli.internal.commands/DumpTest.html") + .isFile()); + } + } diff --git a/org.jacoco.cli/src/org/jacoco/cli/internal/XmlDocumentation.java b/org.jacoco.cli/src/org/jacoco/cli/internal/XmlDocumentation.java index e10e847e..42c74903 100644 --- a/org.jacoco.cli/src/org/jacoco/cli/internal/XmlDocumentation.java +++ b/org.jacoco.cli/src/org/jacoco/cli/internal/XmlDocumentation.java @@ -43,6 +43,8 @@ public class XmlDocumentation { for (final OptionHandler<?> o : list) { final XMLElement optionNode = parent.element("option"); optionNode.attr("required", String.valueOf(o.option.required())); + optionNode.attr("multiple", + String.valueOf(o.setter.isMultiValued())); optionNode.element("usage").text(o.getNameAndMeta(null)); optionNode.element("description").text(o.option.usage()); } diff --git a/org.jacoco.doc/xsl/cli.xsl b/org.jacoco.doc/xsl/cli.xsl index 6823a6bb..644d92d1 100644 --- a/org.jacoco.doc/xsl/cli.xsl +++ b/org.jacoco.doc/xsl/cli.xsl @@ -58,6 +58,12 @@ <a href="integrations.html">integrations</a> with various build tools. </p> + + <p> + The following commands are available. Each command has a + list of optional and required parameters. Some parameters + can be specified multiple times to provide multiple values. + </p> <xsl:apply-templates select="documentation" /> </div> <div class="footer"> @@ -87,6 +93,7 @@ <td>Option</td> <td>Description</td> <td>Required</td> + <td>Multiple</td> </tr> </thead> <tbody> @@ -94,14 +101,8 @@ <tr> <td><code><xsl:value-of select="usage" /></code></td> <td><xsl:value-of select="description" /></td> - <td><xsl:choose> - <xsl:when test="@required = 'true'"> - yes - </xsl:when> - <xsl:otherwise> - no - </xsl:otherwise> - </xsl:choose></td> + <td style="text-align:center"><xsl:if test="@required = 'true'">◼</xsl:if></td> + <td style="text-align:center"><xsl:if test="@multiple = 'true'">◼</xsl:if></td> </tr> </xsl:for-each> </tbody> |