mirror of
https://github.com/cuberite/TCLAP.git
synced 2025-08-03 09:47:05 -04:00
Script to simlify all tests
This commit is contained in:
parent
b39f11f01d
commit
eb877b0fab
63
scripts/fix-test.py
Executable file
63
scripts/fix-test.py
Executable file
@ -0,0 +1,63 @@
|
||||
#!/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)
|
Loading…
x
Reference in New Issue
Block a user