Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
LinuxSuRen
jenkins
提交
616a62aa
J
jenkins
项目概览
LinuxSuRen
/
jenkins
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
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,发现更多精彩内容 >>
未验证
提交
616a62aa
编写于
12月 01, 2017
作者:
B
Baptiste Mathus
提交者:
GitHub
12月 01, 2017
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #3165 from batmat/JENKINS-34855-more-AtomicFileWriter-harnessing
[JENKINS-34855] more AtomicFileWriter test harnessing
上级
fdccc0e8
0437c31a
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
21 addition
and
2 deletion
+21
-2
core/src/test/java/hudson/util/AtomicFileWriterTest.java
core/src/test/java/hudson/util/AtomicFileWriterTest.java
+21
-2
未找到文件。
core/src/test/java/hudson/util/AtomicFileWriterTest.java
浏览文件 @
616a62aa
package
hudson.util
;
import
org.apache.commons.io.FileUtils
;
import
org.hamcrest.core.StringContains
;
import
org.junit.Before
;
import
org.junit.Rule
;
...
...
@@ -21,6 +22,7 @@ import static org.junit.Assert.assertTrue;
import
static
org
.
junit
.
Assert
.
fail
;
public
class
AtomicFileWriterTest
{
private
static
final
String
PREVIOUS
=
"previous value \n blah"
;
@Rule
public
TemporaryFolder
tmp
=
new
TemporaryFolder
();
File
af
;
...
...
@@ -30,6 +32,7 @@ public class AtomicFileWriterTest {
@Before
public
void
setUp
()
throws
IOException
{
af
=
tmp
.
newFile
();
FileUtils
.
writeStringToFile
(
af
,
PREVIOUS
);
afw
=
new
AtomicFileWriter
(
af
.
toPath
(),
Charset
.
defaultCharset
());
}
...
...
@@ -56,25 +59,29 @@ public class AtomicFileWriterTest {
public
void
writeToAtomicFile
()
throws
Exception
{
// Given
afw
.
write
(
expectedContent
,
0
,
expectedContent
.
length
());
afw
.
write
(
expectedContent
);
afw
.
write
(
' '
);
// When
afw
.
flush
();
// Then
assertEquals
(
"File writer did not properly flush to temporary file"
,
expectedContent
.
length
(),
Files
.
size
(
afw
.
getTemporaryPath
()));
expectedContent
.
length
()
*
2
+
1
,
Files
.
size
(
afw
.
getTemporaryPath
()));
}
@Test
public
void
commitToFile
()
throws
Exception
{
// Given
afw
.
write
(
expectedContent
,
0
,
expectedContent
.
length
());
afw
.
write
(
new
char
[]{
'h'
,
'e'
,
'y'
},
0
,
3
);
// When
afw
.
commit
();
// Then
assertEquals
(
expectedContent
.
length
(),
Files
.
size
(
af
.
toPath
()));
assertEquals
(
expectedContent
.
length
()+
3
,
Files
.
size
(
af
.
toPath
()));
assertEquals
(
expectedContent
+
"hey"
,
FileUtils
.
readFileToString
(
af
));
}
@Test
...
...
@@ -87,8 +94,20 @@ public class AtomicFileWriterTest {
// Then
assertTrue
(
Files
.
notExists
(
afw
.
getTemporaryPath
()));
assertEquals
(
PREVIOUS
,
FileUtils
.
readFileToString
(
af
));
}
@Test
public
void
indexOutOfBoundsLeavesOriginalUntouched
()
throws
Exception
{
// Given
try
{
afw
.
write
(
expectedContent
,
0
,
expectedContent
.
length
()
+
10
);
fail
(
"exception expected"
);
}
catch
(
IndexOutOfBoundsException
e
)
{
}
assertEquals
(
PREVIOUS
,
FileUtils
.
readFileToString
(
af
));
}
@Test
public
void
badPath
()
throws
Exception
{
final
File
newFile
=
tmp
.
newFile
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录