提交 931fa176 编写于 作者: J Jesse Glick

[FIXED JENKINS-14507] NPE from JUnitParser.parse.

上级 ecd5b7d1
......@@ -55,7 +55,9 @@ Upcoming changes</a>
<!-- Record your changes in the trunk here. -->
<div id="trunk" style="display:none"><!--=TRUNK-BEGIN=-->
<ul class=image>
<li class=>
<li class=bug>
<code>NullPointerException</code> from <code>JUnitParser.parse</code>.
(<a href="https://issues.jenkins-ci.org/browse/JENKINS-14507">issue 14507</a>)
</ul>
</div><!--=TRUNK-END=-->
......
......@@ -88,6 +88,7 @@ import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.CheckForNull;
/**
* Base implementation of {@link Run}s that build software.
......@@ -249,7 +250,7 @@ public abstract class AbstractBuild<P extends AbstractProject<P,R>,R extends Abs
* no longer show a workspace as it was used for this build.
* @since 1.319
*/
public final FilePath getWorkspace() {
public final @CheckForNull FilePath getWorkspace() {
if (workspace==null) return null;
Node n = getBuiltOn();
if (n==null) return null;
......
......@@ -80,8 +80,11 @@ public class JUnitParser extends TestResultParser {
// [BUG 3123310] TODO - Test Result Refactor: review and fix TestDataPublisher/TestAction subsystem]
// also get code that deals with testDataPublishers from JUnitResultArchiver.perform
TestResult testResult = build.getWorkspace().act( new ParseResultCallable(testResultLocations, buildTime, timeOnMaster, keepLongStdio));
return testResult;
FilePath workspace = build.getWorkspace();
if (workspace == null) {
throw new AbortException(Messages.JUnitParser_no_workspace_found(build));
}
return workspace.act(new ParseResultCallable(testResultLocations, buildTime, timeOnMaster, keepLongStdio));
}
private static final class ParseResultCallable implements
......
......@@ -30,6 +30,7 @@ PackageResult.getChildTitle=Class
ClassResult.getTitle=Test Result : {0}
JUnitParser.DisplayName=JUnit Parser
JUnitParser.TestResultLocationMessage=JUnit xml files:
JUnitParser.no_workspace_found=No workspace found for {0}
JUnitResultArchiver.DisplayName=Publish JUnit test result report
JUnitResultArchiver.NoTestReportFound=No test report files were found. Configuration error?
JUnitResultArchiver.Recording=Recording test results
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册