Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
Paddle
提交
ec26a26a
P
Paddle
项目概览
BaiXuePrincess
/
Paddle
与 Fork 源项目一致
Fork自
PaddlePaddle / Paddle
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
ec26a26a
编写于
12月 09, 2020
作者:
C
chalsliu
提交者:
GitHub
12月 09, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
support precision test for py3
上级
a1909aff
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
15 addition
and
13 deletion
+15
-13
tools/get_pr_ut.py
tools/get_pr_ut.py
+15
-13
未找到文件。
tools/get_pr_ut.py
浏览文件 @
ec26a26a
...
@@ -21,6 +21,8 @@ import requests
...
@@ -21,6 +21,8 @@ import requests
from
github
import
Github
from
github
import
Github
PADDLE_ROOT
=
os
.
getenv
(
'PADDLE_ROOT'
,
'/paddle/'
)
PADDLE_ROOT
=
os
.
getenv
(
'PADDLE_ROOT'
,
'/paddle/'
)
PADDLE_ROOT
+=
'/'
PADDLE_ROOT
=
PADDLE_ROOT
.
replace
(
'//'
,
'/'
)
class
PRChecker
(
object
):
class
PRChecker
(
object
):
...
@@ -30,8 +32,8 @@ class PRChecker(object):
...
@@ -30,8 +32,8 @@ class PRChecker(object):
self
.
github
=
Github
(
os
.
getenv
(
'GITHUB_API_TOKEN'
),
timeout
=
60
)
self
.
github
=
Github
(
os
.
getenv
(
'GITHUB_API_TOKEN'
),
timeout
=
60
)
self
.
repo
=
self
.
github
.
get_repo
(
'PaddlePaddle/Paddle'
)
self
.
repo
=
self
.
github
.
get_repo
(
'PaddlePaddle/Paddle'
)
self
.
py_prog_oneline
=
re
.
compile
(
'\d+\|\s*#.*'
)
self
.
py_prog_oneline
=
re
.
compile
(
'\d+\|\s*#.*'
)
self
.
py_prog_multiline_a
=
re
.
compile
(
'\d+\|\s*""".*?"""'
,
re
.
DOTALL
)
self
.
py_prog_multiline_a
=
re
.
compile
(
'\d+\|\s*
r?
""".*?"""'
,
re
.
DOTALL
)
self
.
py_prog_multiline_b
=
re
.
compile
(
"\d+\|\s*'''.*?'''"
,
re
.
DOTALL
)
self
.
py_prog_multiline_b
=
re
.
compile
(
"\d+\|\s*
r?
'''.*?'''"
,
re
.
DOTALL
)
self
.
cc_prog_online
=
re
.
compile
(
'\d+\|\s*//.*'
)
self
.
cc_prog_online
=
re
.
compile
(
'\d+\|\s*//.*'
)
self
.
cc_prog_multiline
=
re
.
compile
(
'\d+\|\s*/\*.*?\*/'
,
re
.
DOTALL
)
self
.
cc_prog_multiline
=
re
.
compile
(
'\d+\|\s*/\*.*?\*/'
,
re
.
DOTALL
)
self
.
lineno_prog
=
re
.
compile
(
'@@ \-\d+,\d+ \+(\d+),(\d+) @@'
)
self
.
lineno_prog
=
re
.
compile
(
'@@ \-\d+,\d+ \+(\d+),(\d+) @@'
)
...
@@ -89,10 +91,10 @@ class PRChecker(object):
...
@@ -89,10 +91,10 @@ class PRChecker(object):
return
result
return
result
def
__get_comment_by_prog
(
self
,
content
,
prog
):
def
__get_comment_by_prog
(
self
,
content
,
prog
):
result
=
[]
result_list
=
prog
.
findall
(
content
)
result_list
=
prog
.
findall
(
content
)
if
not
result_list
:
if
not
result_list
:
return
None
return
[]
result
=
[]
for
u
in
result_list
:
for
u
in
result_list
:
result
.
extend
(
u
.
split
(
'
\n
'
))
result
.
extend
(
u
.
split
(
'
\n
'
))
return
result
return
result
...
@@ -114,7 +116,7 @@ class PRChecker(object):
...
@@ -114,7 +116,7 @@ class PRChecker(object):
if
f
.
endswith
(
'.py'
):
if
f
.
endswith
(
'.py'
):
filetype
=
'py'
filetype
=
'py'
else
:
else
:
return
None
return
[]
return
self
.
__get_comment_by_filetype
(
inputs
,
filetype
)
return
self
.
__get_comment_by_filetype
(
inputs
,
filetype
)
def
get_pr_diff_lines
(
self
):
def
get_pr_diff_lines
(
self
):
...
@@ -143,8 +145,8 @@ class PRChecker(object):
...
@@ -143,8 +145,8 @@ class PRChecker(object):
end
+=
1
end
+=
1
if
data
[
ix
][
0
]
==
'+'
:
if
data
[
ix
][
0
]
==
'+'
:
line_list
=
file_to_diff_lines
.
get
(
filename
)
line_list
=
file_to_diff_lines
.
get
(
filename
)
line
=
'{}{}'
.
format
(
lineno
,
data
[
ix
].
replace
(
'+'
,
line
=
'{}{}'
.
format
(
lineno
,
'|'
))
data
[
ix
].
replace
(
'+'
,
'|'
,
1
))
if
line_list
:
if
line_list
:
line_list
.
append
(
line
)
line_list
.
append
(
line
)
else
:
else
:
...
@@ -158,9 +160,9 @@ class PRChecker(object):
...
@@ -158,9 +160,9 @@ class PRChecker(object):
def
is_only_comment
(
self
,
f
):
def
is_only_comment
(
self
,
f
):
file_to_diff_lines
=
self
.
get_pr_diff_lines
()
file_to_diff_lines
=
self
.
get_pr_diff_lines
()
comment_lines
=
self
.
get_comment_of_file
(
f
)
comment_lines
=
self
.
get_comment_of_file
(
f
)
#for l in comment_lines:
diff_lines
=
file_to_diff_lines
.
get
(
f
.
replace
(
PADDLE_ROOT
,
''
,
1
))
# print(l)
if
not
diff_lines
:
diff_lines
=
file_to_diff_lines
.
get
(
f
.
replace
(
PADDLE_ROOT
,
''
))
return
False
for
l
in
diff_lines
:
for
l
in
diff_lines
:
if
l
not
in
comment_lines
:
if
l
not
in
comment_lines
:
return
False
return
False
...
@@ -186,18 +188,18 @@ class PRChecker(object):
...
@@ -186,18 +188,18 @@ class PRChecker(object):
ut_list
.
append
(
'h_cu_comment_placeholder'
)
ut_list
.
append
(
'h_cu_comment_placeholder'
)
else
:
else
:
return
''
return
''
elif
f
.
endswith
(
'.cc'
):
elif
f
.
endswith
(
'.cc'
)
or
f
.
endswith
(
'.py'
)
:
if
f
.
find
(
'test_'
)
!=
-
1
or
f
.
find
(
'_test'
)
!=
-
1
:
if
f
.
find
(
'test_'
)
!=
-
1
or
f
.
find
(
'_test'
)
!=
-
1
:
check_added_ut
=
True
check_added_ut
=
True
elif
self
.
is_only_comment
(
f
):
elif
self
.
is_only_comment
(
f
):
ut_list
.
append
(
'
cc
_comment_placeholder'
)
ut_list
.
append
(
'
nomap
_comment_placeholder'
)
else
:
else
:
return
''
return
''
else
:
else
:
return
''
return
''
else
:
else
:
if
self
.
is_only_comment
(
f
):
if
self
.
is_only_comment
(
f
):
ut_list
.
append
(
'
cc
_comment_placeholder'
)
ut_list
.
append
(
'
map
_comment_placeholder'
)
else
:
else
:
ut_list
.
extend
(
file_ut_map
.
get
(
f
))
ut_list
.
extend
(
file_ut_map
.
get
(
f
))
ut_list
=
list
(
set
(
ut_list
))
ut_list
=
list
(
set
(
ut_list
))
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录