From c8bc470774001278b809f69898bc43e98933ff15 Mon Sep 17 00:00:00 2001 From: Aleksei Zotov Date: Mon, 15 Nov 2021 18:20:17 +0400 Subject: junitlauncher - Support extension attribute for listeners This closes #168 pull request at github.com/apache/ant --- .../taskdefs/optional/junitlauncher/LauncherSupport.java | 8 +------- .../junitlauncher/confined/ListenerDefinition.java | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/LauncherSupport.java b/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/LauncherSupport.java index 7bd65e3b0..00b76df8a 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/LauncherSupport.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/LauncherSupport.java @@ -282,13 +282,7 @@ public class LauncherSupport { final StringBuilder sb = new StringBuilder("TEST-"); sb.append(testRequest.getName() == null ? "unknown" : testRequest.getName()); sb.append("."); - final String suffix; - if ("org.apache.tools.ant.taskdefs.optional.junitlauncher.LegacyXmlResultFormatter".equals(listener.getClassName())) { - suffix = "xml"; - } else { - suffix = "txt"; - } - sb.append(suffix); + sb.append(listener.getExtension()); filename = sb.toString(); } if (listener.getOutputDir() != null) { diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/confined/ListenerDefinition.java b/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/confined/ListenerDefinition.java index ce9fdee1d..52479a9c9 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/confined/ListenerDefinition.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/junitlauncher/confined/ListenerDefinition.java @@ -49,6 +49,7 @@ public class ListenerDefinition { private String unlessProperty; private String className; private String resultFile; + private String extension = "txt"; private boolean sendSysOut; private boolean sendSysErr; private String outputDir; @@ -94,6 +95,7 @@ public class ListenerDefinition { } case LEGACY_XML: { this.setClassName("org.apache.tools.ant.taskdefs.optional.junitlauncher.LegacyXmlResultFormatter"); + this.setExtension("xml"); break; } } @@ -107,6 +109,20 @@ public class ListenerDefinition { return this.resultFile; } + /** + * Sets the output file extension for this listener. + * + * @param extension file extension to use + * @since Ant 1.10.13 + */ + public void setExtension(String extension) { + this.extension = extension; + } + + public String getExtension() { + return extension; + } + public void setSendSysOut(final boolean sendSysOut) { this.sendSysOut = sendSysOut; } -- cgit v1.2.1