Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
dream21st
jenkins
提交
54d568d2
J
jenkins
项目概览
dream21st
/
jenkins
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jenkins
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
54d568d2
编写于
8月 06, 2011
作者:
C
Christoph Kutzinski
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Prevent repeated array copy of DirectoryScanner's included files.
Previously, array was copied 3 times, now only once.
上级
578a2f5b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
18 addition
and
7 deletion
+18
-7
core/src/main/java/hudson/tasks/junit/TestResult.java
core/src/main/java/hudson/tasks/junit/TestResult.java
+12
-2
maven-plugin/src/main/java/hudson/maven/reporters/SurefireArchiver.java
...rc/main/java/hudson/maven/reporters/SurefireArchiver.java
+6
-5
未找到文件。
core/src/main/java/hudson/tasks/junit/TestResult.java
浏览文件 @
54d568d2
...
...
@@ -137,10 +137,20 @@ public final class TestResult extends MetaTabulatedResult {
public
void
parse
(
long
buildTime
,
DirectoryScanner
results
)
throws
IOException
{
String
[]
includedFiles
=
results
.
getIncludedFiles
();
File
baseDir
=
results
.
getBasedir
();
parse
(
buildTime
,
baseDir
,
includedFiles
);
}
/**
* Collect reports from the given report files, while
* filtering out all files that were created before the given time.
*
* @since 1.426
*/
public
void
parse
(
long
buildTime
,
File
baseDir
,
String
[]
reportFiles
)
throws
IOException
{
boolean
parsed
=
false
;
for
(
String
value
:
included
Files
)
{
for
(
String
value
:
report
Files
)
{
File
reportFile
=
new
File
(
baseDir
,
value
);
// only count files that were actually updated during this build
if
(
(
buildTime
-
3000
/*error margin*/
<=
reportFile
.
lastModified
())
||
!
checkTimestamps
)
{
...
...
@@ -165,7 +175,7 @@ public final class TestResult extends MetaTabulatedResult {
"I can't figure out what test results are new and what are old.\n"
+
"Please keep the slave clock in sync with the master."
);
File
f
=
new
File
(
baseDir
,
included
Files
[
0
]);
File
f
=
new
File
(
baseDir
,
report
Files
[
0
]);
throw
new
AbortException
(
String
.
format
(
"Test reports were found but none of them are new. Did tests run? %n"
+
...
...
maven-plugin/src/main/java/hudson/maven/reporters/SurefireArchiver.java
浏览文件 @
54d568d2
...
...
@@ -134,14 +134,15 @@ public class SurefireArchiver extends MavenReporter {
FileSet
fileSet
=
getFileSet
(
reportsDir
);
DirectoryScanner
ds
=
fileSet
.
getDirectoryScanner
();
if
(
ds
.
getIncludedFiles
().
length
==
0
)
if
(
ds
.
getIncludedFiles
Count
()
==
0
)
// no test in this module
return
true
;
rememberCheckedFiles
(
reportsDir
,
ds
);
String
[]
reportFiles
=
ds
.
getIncludedFiles
();
rememberCheckedFiles
(
reportsDir
,
reportFiles
);
if
(
result
==
null
)
result
=
new
TestResult
();
result
.
parse
(
System
.
currentTimeMillis
()
-
build
.
getMilliSecsSinceBuildStart
(),
d
s
);
result
.
parse
(
System
.
currentTimeMillis
()
-
build
.
getMilliSecsSinceBuildStart
(),
reportsDir
,
reportFile
s
);
int
failCount
=
build
.
execute
(
new
BuildCallable
<
Integer
,
IOException
>()
{
public
Integer
call
(
MavenBuild
build
)
throws
IOException
,
InterruptedException
{
...
...
@@ -209,10 +210,10 @@ public class SurefireArchiver extends MavenReporter {
/**
* Add checked files to the exclude list of the fileSet
*/
private
void
rememberCheckedFiles
(
File
baseDir
,
DirectoryScanner
d
s
)
{
private
void
rememberCheckedFiles
(
File
baseDir
,
String
[]
reportFile
s
)
{
FileSet
fileSet
=
getFileSet
(
baseDir
);
for
(
String
file
:
ds
.
getIncludedFiles
()
)
{
for
(
String
file
:
reportFiles
)
{
fileSet
.
setExcludes
(
file
);
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录