#!/usr/bin/python # # Generate a test suite # # argv[1] tuple width # stdin list of protocol file names # import sys import os import time #import datetime import string tempfile = 'generated-test-list.tmp' # Derive tuple list count = sys.argv[1] lstatus=os.system('./tuples.py ' + count + ' >' + tempfile) # Header print "#!/bin/sh" print "#" print "# Test list generated by gen-tests.py" #print "# at ", time.asctime() print "#" # Functions to assist def getline (inputfile): return string.strip(inputfile.readline()) def removespdl (str): return string.replace(str,".spdl","") def makefilepart (tuple): rt = count + "-" namelist = string.split (tuple) for name in namelist: rt = rt + "[" + removespdl(name) + "]" return rt def makefileline (tuple): return "results/combined" + makefilepart(tuple) + ".txt" def makefileerror (tuple): return "results/errors" + makefilepart(tuple) + ".txt" def processline (l): print "./mp.sh ", print l, # redirect stderr print " 2>>", makefileerror(l), # redirect stdout print " >", makefileline(l), # new line print # Process lines inp = open(tempfile, 'r') line = getline(inp) lines = 0 while line: # process the line processline(line) lines = lines + 1 # get next line = getline(inp) inp.close() print "#" print "# ", lines, " lines processed." # TODO Add code to clean up the mess: delete all files of zero length.