#!/usr/bin/python
# Copyright (c) 2018 Google LLC
# All rights reserved.
#
# See the file COPYING in the top directory of this distribution for
# more information.
#
# THE SOFTWARE IS PROVIDED _AS IS_, WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
import sys
import re
def process_file(path):
args = None
out = None
test = None
lines = []
with open(path) as f:
for line in f.readlines():
if line.startswith('#'):
lines.append(line)
continue
m = re.match(r'../examples/(test[0-9]+) (.*) > tmp.out.*', line)
if m:
(test, args) = m.groups()
lines.append("./simple-test.sh `basename $0 .sh` %s %s\n"
% (test, args))
continue
m = re.match(r'../examples/(test[0-9]+) > tmp.out.*', line)
if m:
test = m.group(1)
args = ""
lines.append("./simple-test.sh `basename $0 .sh` %s\n"
% test)
continue
m = re.match(r'.*(test[0-9]+).out.*', line)
if m:
out = m.group(1)
if not all([v != None for v in [out, test, args]]):
print "Failed to parse", path
print out, test, args
return
with open(path, 'w') as f:
for line in lines:
f.write(line)
for path in sys.argv[1:]:
process_file(path)