|
30 | 30 | with open(argobj.test_file) as f: |
31 | 31 | lines = f.readlines() |
32 | 32 |
|
33 | | -m = re.search(r"\A// RUN: %S/3c-regtest\.py (.*) %s -t %t --clang '%clang'\n\Z", lines[0]) |
34 | | -if m is None: |
35 | | - sys.exit('The first line of %s is not a canonical 3c-regtest.py RUN line.' % argobj.test_file) |
36 | | -test_type_flags_joined = m.group(1) |
37 | | - |
38 | | -# FUTURE: Will we need to handle quoting? |
39 | | -test_type_flags = test_type_flags_joined.split(' ') |
40 | | -# XXX: This just exits on error. We'd like to add a more meaningful message, but |
41 | | -# the default Python version on gamera (2.7.18) is too old to support |
42 | | -# exit_on_error=False. |
43 | | -test_type_argobj = script_generator.parser.parse_args(test_type_flags + [argobj.test_file]) |
44 | | - |
45 | | -run_lines = ['// RUN: %s\n' % cmd for cmd in script_generator.generate_commands(test_type_argobj)] |
46 | | -new_lines = run_lines + lines[1:] |
| 33 | +new_lines = [] |
| 34 | +for l in lines: |
| 35 | + if '3c-regtest' in l: |
| 36 | + m = re.search(r"\A// RUN: %S/3c-regtest\.py (.*) %s -t %t --clang '%clang'\n\Z", l) |
| 37 | + if m is None: |
| 38 | + sys.exit('Non-canonical 3c-regtest RUN line: %s' % l) # XXX Trailing newline |
| 39 | + test_type_flags_joined = m.group(1) |
| 40 | + |
| 41 | + # FUTURE: Will we need to handle quoting? |
| 42 | + test_type_flags = test_type_flags_joined.split(' ') |
| 43 | + # XXX: This just exits on error. We'd like to add a more meaningful message, but |
| 44 | + # the default Python version on gamera (2.7.18) is too old to support |
| 45 | + # exit_on_error=False. |
| 46 | + test_type_argobj = script_generator.parser.parse_args(test_type_flags + [argobj.test_file]) |
| 47 | + |
| 48 | + run_lines = [('// RUN: %s\n' % cmd if cmd != '' else '\n') |
| 49 | + for cmd in script_generator.generate_commands(test_type_argobj)] |
| 50 | + new_lines.extend(run_lines) |
| 51 | + else: |
| 52 | + new_lines.append(l) |
| 53 | + |
47 | 54 | sys.stdout.write(''.join(new_lines)) |
0 commit comments