Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
avocado
提交
0c040df5
A
avocado
项目概览
openeuler
/
avocado
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
avocado
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0c040df5
编写于
12月 11, 2018
作者:
C
Caio Carrara
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
utils.genio: Refactor is_patch_in_file function and add tests
Signed-off-by:
N
Caio Carrara
<
ccarrara@redhat.com
>
上级
3d18d952
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
37 addition
and
5 deletion
+37
-5
avocado/utils/genio.py
avocado/utils/genio.py
+6
-5
selftests/unit/test_utils_genio.py
selftests/unit/test_utils_genio.py
+31
-0
未找到文件。
avocado/utils/genio.py
浏览文件 @
0c040df5
...
...
@@ -203,21 +203,22 @@ def write_file_or_fail(filename, data):
filename
,
details
))
def
find_pattern
(
filename
,
pattern
):
def
is_pattern_in_file
(
filename
,
pattern
):
"""
Module for match pattern in a specified file
Check if a pattern matches in a specified file. If a non
regular file be informed a GenIOError will be raised.
:param filename: Path to file
:type filename: str
:param pattern:
p
attern that need to match in file
:param pattern:
P
attern that need to match in file
:type pattern: str
:return: True when pattern matches in file if not
retun False
return False
:rtype: boolean
"""
if
not
os
.
path
.
isfile
(
filename
):
raise
GenIOError
(
'invalid file %s to match pattern %s'
%
(
filename
,
pattern
))
with
open
(
filename
,
'r'
)
as
content_file
:
if
re
.
search
(
pattern
,
content_file
.
read
(),
re
.
MULTILINE
):
return
True
...
...
selftests/unit/test_utils_genio.py
0 → 100644
浏览文件 @
0c040df5
import
os
import
tempfile
import
unittest
from
avocado.utils
import
genio
class
TestGenio
(
unittest
.
TestCase
):
def
test_check_pattern_in_directory
(
self
):
tempdirname
=
tempfile
.
mkdtemp
()
with
self
.
assertRaises
(
genio
.
GenIOError
):
genio
.
is_pattern_in_file
(
tempdirname
,
'something'
)
os
.
rmdir
(
tempdirname
)
def
test_check_simple_pattern_in_file_successfully
(
self
):
with
tempfile
.
NamedTemporaryFile
(
mode
=
'w'
)
as
temp_file
:
temp_file
.
write
(
'Hello World'
)
temp_file
.
seek
(
0
)
self
.
assertTrue
(
genio
.
is_pattern_in_file
(
temp_file
.
name
,
'Hello'
))
def
test_check_pattern_in_file_successfully
(
self
):
with
tempfile
.
NamedTemporaryFile
(
mode
=
'w'
)
as
temp_file
:
temp_file
.
write
(
'123'
)
temp_file
.
seek
(
0
)
self
.
assertTrue
(
genio
.
is_pattern_in_file
(
temp_file
.
name
,
r
'\d{3}'
))
def
test_check_pattern_in_file_unsuccessfully
(
self
):
with
tempfile
.
NamedTemporaryFile
(
mode
=
'w'
)
as
temp_file
:
temp_file
.
write
(
'123'
)
temp_file
.
seek
(
0
)
self
.
assertFalse
(
genio
.
is_pattern_in_file
(
temp_file
.
name
,
r
'\D{3}'
))
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录