From 249bd6dd1dc6023a54ce6f2e73563e92af770fa6 Mon Sep 17 00:00:00 2001 From: Alex Soto Date: Fri, 15 Apr 2016 18:36:43 +0200 Subject: [PATCH] fixes code review issues --- .../plugins/jacoco/JacocoPublisher.java | 30 ++++++++++++--- .../jacoco/report/AbstractReportTest.java | 30 +-------------- .../jacoco/report/CoverageReportTest.java | 36 +----------------- .../JaCoCoColumnTest.java | 38 +------------------ 4 files changed, 31 insertions(+), 103 deletions(-) diff --git a/src/main/java/hudson/plugins/jacoco/JacocoPublisher.java b/src/main/java/hudson/plugins/jacoco/JacocoPublisher.java index 1e78a45d..eada8d55 100644 --- a/src/main/java/hudson/plugins/jacoco/JacocoPublisher.java +++ b/src/main/java/hudson/plugins/jacoco/JacocoPublisher.java @@ -370,10 +370,12 @@ protected static void saveCoverageReports(FilePath destFolder, FilePath sourceFo sourceFolder.copyRecursiveTo(destFolder); } - protected String resolveFilePaths(Run build, TaskListener listener, String input) { + protected String resolveFilePaths(Run build, TaskListener listener, String input, Map env) { try { - - return build.getEnvironment(listener).expand(input); + + final EnvVars environment = build.getEnvironment(listener); + environment.overrideAll(env); + return environment.expand(input); } catch (Exception e) { listener.getLogger().println("Failed to resolve parameters in string \""+ @@ -381,7 +383,21 @@ protected String resolveFilePaths(Run build, TaskListener listener, String } return input; } - + + protected String resolveFilePaths(AbstractBuild build, TaskListener listener, String input) { + try { + + final EnvVars environment = build.getEnvironment(listener); + environment.overrideAll(build.getBuildVariables()); + return environment.expand(input); + + } catch (Exception e) { + listener.getLogger().println("Failed to resolve parameters in string \""+ + input+"\" due to following error:\n"+e.getMessage()); + } + return input; + } + protected static FilePath[] resolveDirPaths(FilePath workspace, TaskListener listener, final String input) { //final PrintStream logger = listener.getLogger(); FilePath[] directoryPaths = null; @@ -431,7 +447,11 @@ public void perform(@Nonnull Run run, @Nonnull FilePath filePath, @Nonnull JacocoReportDir dir = new JacocoReportDir(run.getRootDir()); - List matchedExecFiles = Arrays.asList(filePath.list(resolveFilePaths(run, taskListener, execPattern))); + if (run instanceof AbstractBuild) { + execPattern = resolveFilePaths((AbstractBuild) run, taskListener, execPattern); + } + + List matchedExecFiles = Arrays.asList(filePath.list(resolveFilePaths(run, taskListener, execPattern, env))); logger.println("[JaCoCo plugin] Number of found exec files for pattern " + execPattern + ": " + matchedExecFiles.size()); logger.print("[JaCoCo plugin] Saving matched execfiles: "); dir.addExecFiles(matchedExecFiles); diff --git a/src/test/java/hudson/plugins/jacoco/report/AbstractReportTest.java b/src/test/java/hudson/plugins/jacoco/report/AbstractReportTest.java index 7b00eb32..5c825489 100644 --- a/src/test/java/hudson/plugins/jacoco/report/AbstractReportTest.java +++ b/src/test/java/hudson/plugins/jacoco/report/AbstractReportTest.java @@ -13,6 +13,7 @@ import java.io.PrintWriter; import java.util.List; +import hudson.util.StreamTaskListener; import org.junit.Test; @@ -28,35 +29,8 @@ public void test() throws Exception { report.setParent(new ClassReport()); report.getParent().setParent(new PackageReport()); - TaskListener taskListener = new TaskListener() { - public PrintStream getLogger() { - return null; - } - public void annotate(ConsoleNote consoleNote) throws IOException { - - } - - public void hyperlink(String s, String s1) throws IOException { - - } - - public PrintWriter error(String s) { - return null; - } - - public PrintWriter error(String s, Object... objects) { - return null; - } - - public PrintWriter fatalError(String s) { - return null; - } - - public PrintWriter fatalError(String s, Object... objects) { - return null; - } - }; + TaskListener taskListener = StreamTaskListener.fromStdout(); JacocoBuildAction action = new JacocoBuildAction(null, null, taskListener, null, null); report.getParent().getParent().setParent(new CoverageReport(action, null)); diff --git a/src/test/java/hudson/plugins/jacoco/report/CoverageReportTest.java b/src/test/java/hudson/plugins/jacoco/report/CoverageReportTest.java index 535b3e6c..4f12d999 100644 --- a/src/test/java/hudson/plugins/jacoco/report/CoverageReportTest.java +++ b/src/test/java/hudson/plugins/jacoco/report/CoverageReportTest.java @@ -15,6 +15,7 @@ import java.io.PrintWriter; import java.util.List; +import hudson.util.StreamTaskListener; import org.junit.Test; @@ -45,38 +46,5 @@ public void testThresholds() throws Exception { report.setThresholds(new JacocoHealthReportThresholds()); } - private JacocoBuildAction action = new JacocoBuildAction(null, null, new TaskListener() { - - public void hyperlink(String url, String text) throws IOException { - } - - public PrintStream getLogger() { - return System.out; - } - - public PrintWriter fatalError(String format, Object... args) { - return null; - } - - public PrintWriter fatalError(String msg) { - return null; - } - - public PrintWriter error(String format, Object... args) { - return null; - } - - public PrintWriter error(String msg) { - return null; - } - - public void annotate(@SuppressWarnings("rawtypes") ConsoleNote ann) throws IOException { - } - - public void started(List causes) { - } - - public void finished(Result result) { - } - }, null, null); + private JacocoBuildAction action = new JacocoBuildAction(null, null, StreamTaskListener.fromStdout(), null, null); } diff --git a/src/test/java/hudson/plugins/jacococoveragecolumn/JaCoCoColumnTest.java b/src/test/java/hudson/plugins/jacococoveragecolumn/JaCoCoColumnTest.java index fd659e80..4c6731dc 100644 --- a/src/test/java/hudson/plugins/jacococoveragecolumn/JaCoCoColumnTest.java +++ b/src/test/java/hudson/plugins/jacococoveragecolumn/JaCoCoColumnTest.java @@ -27,6 +27,7 @@ import javax.servlet.ServletContext; +import hudson.util.StreamTaskListener; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; @@ -86,42 +87,7 @@ public void testGetPercentWithBuildAndAction() { public Run getLastSuccessfulBuild() { try { Run newBuild = newBuild(); - newBuild.getActions().add(new JacocoBuildAction(null, null, new TaskListener() { - private static final long serialVersionUID = 1L; - - public void hyperlink(String url, String text) throws IOException { - } - - public PrintStream getLogger() { - return null; - } - - public PrintWriter fatalError(String format, Object... args) { - return null; - } - - public PrintWriter fatalError(String msg) { - return null; - } - - public PrintWriter error(String format, Object... args) { - return null; - } - - public PrintWriter error(String msg) { - return null; - } - - public void annotate(@SuppressWarnings("rawtypes") ConsoleNote ann) throws IOException { - - } - - public void started(List causes) { - } - - public void finished(Result result) { - } - }, null, null)); + newBuild.getActions().add(new JacocoBuildAction(null, null, StreamTaskListener.fromStdout(), null, null)); assertEquals(1, newBuild.getActions().size()); return newBuild; } catch (IOException e) {