From 23d57335f1e76dbc7e63647c092e7ee521844932 Mon Sep 17 00:00:00 2001 From: hanchao Date: Thu, 8 Dec 2016 18:14:25 +0800 Subject: [PATCH] update cr for pull #734. --- .../tests/configs/run_tests.sh | 10 ++-- .../test_config_parser_for_non_file_config.py | 47 +++++++++++-------- 2 files changed, 35 insertions(+), 22 deletions(-) diff --git a/python/paddle/trainer_config_helpers/tests/configs/run_tests.sh b/python/paddle/trainer_config_helpers/tests/configs/run_tests.sh index ed2ac6ed1..72dd55bb6 100755 --- a/python/paddle/trainer_config_helpers/tests/configs/run_tests.sh +++ b/python/paddle/trainer_config_helpers/tests/configs/run_tests.sh @@ -16,14 +16,16 @@ if [ -z $1 ]; then do base_protostr=$protostr/$file new_protostr=$protostr/$file.unittest - diff $base_protostr $new_protostr -u && + diff $base_protostr $new_protostr -u diff $protostr/$file $protostr/$file.non_file_config.unittest -u done else for file in ${configs[*]} do if ! $1 $protostr/$file.protostr $protostr/$file.protostr.unittest; then - diff $protostr/$file.protostr $protostr/$file.protostr.unittest -u && + diff $protostr/$file.protostr $protostr/$file.protostr.unittest -u + fi + if ! $1 $protostr/$file.protostr $protostr/$file.protostr.non_file_config.unittest; then diff $protostr/$file.protostr $protostr/$file.protostr.non_file_config.unittest -u fi done @@ -31,7 +33,9 @@ else for file in ${whole_configs[*]} do if ! $1 $protostr/$file.protostr $protostr/$file.protostr.unittest --whole; then - diff $protostr/$file.protostr $protostr/$file.protostr.unittest -u && + diff $protostr/$file.protostr $protostr/$file.protostr.unittest -u + fi + if ! $1 $protostr/$file.protostr $protostr/$file.protostr.non_file_config.unittest --whole; then diff $protostr/$file.protostr $protostr/$file.protostr.non_file_config.unittest -u fi done diff --git a/python/paddle/trainer_config_helpers/tests/configs/test_config_parser_for_non_file_config.py b/python/paddle/trainer_config_helpers/tests/configs/test_config_parser_for_non_file_config.py index 71ee0499d..87a607acf 100644 --- a/python/paddle/trainer_config_helpers/tests/configs/test_config_parser_for_non_file_config.py +++ b/python/paddle/trainer_config_helpers/tests/configs/test_config_parser_for_non_file_config.py @@ -1,5 +1,5 @@ #!/usr/bin/env python -# Copyright (c) 2016 Baidu, Inc. All Rights Reserved +# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -14,27 +14,36 @@ # limitations under the License. import sys +import re import getopt -whole = False -opts, args = getopt.getopt(sys.argv[1:], "", ["whole"]) -for op, value in opts: - if op == "--whole": - whole = True +def main(print_whole_config, globals, locals): + ''' + this test will all test_config.py + ''' + cmdstr = """from paddle.trainer.config_parser import parse_config\n""" + importstr = "" + functionstr = "" -cmdstr = """ -from paddle.trainer.config_parser import * -from paddle.trainer_config_helpers import * -def configs():\n""" + for line in sys.stdin: + if re.match("^import", line) or re.match("^from.*import", line): + importstr = importstr + line + else: + functionstr = functionstr + " " + line -for line in sys.stdin: - if "import" in line and "from" in line: - continue - cmdstr = cmdstr + " " + line + cmdstr = cmdstr + importstr + """def configs():\n""" + functionstr + #cmdstr = cmdstr + """def configs():\n""" + importstr + functionstr + if print_whole_config: + cmdstr = cmdstr + """print parse_config(configs, "")""" + else: + cmdstr = cmdstr + """print parse_config(configs, "").model_config""" -if whole: - cmdstr = cmdstr + """print parse_config(configs, "")""" -else: - cmdstr = cmdstr + """print parse_config(configs, "").model_config""" + exec(cmdstr, globals, locals) -exec(cmdstr) +if __name__ == '__main__': + whole = False + opts, args = getopt.getopt(sys.argv[1:], "", ["whole"]) + for op, value in opts: + if op == "--whole": + whole = True + main(whole, globals(), locals()) -- GitLab