Refactor tests, and pump symbolic container sizes

This commit is contained in:
Peter Goodman
2018-07-18 09:26:44 -04:00
parent 4de753a619
commit 15ee6c849c
4 changed files with 193 additions and 198 deletions
+39 -39
View File
@@ -4,44 +4,44 @@ import time
import sys
def logrun(cmd, file, timeout):
sys.stderr.write("\n\n" + ("=" * 80) + "\n")
sys.stderr.write("RUNNING: ")
sys.stderr.write(" ".join(cmd) + "\n\n")
sys.stderr.flush()
with open(file, 'w') as outf:
p = subprocess.Popen(cmd, stdout=outf, stderr=outf)
start = time.time()
oldContents = ""
lastOutput = time.time()
while (p.poll() is None) and ((time.time() - start) < timeout):
if (time.time() - lastOutput) > 300:
sys.stderr.write(".")
sys.stderr.flush()
lastOutput = time.time()
with open(file, 'r') as inf:
contents = inf.read()
if len(contents) > len(oldContents):
sys.stderr.write(contents[len(oldContents):])
sys.stderr.flush()
oldContents = contents
lastOutput = time.time()
time.sleep(0.05)
totalTime = time.time() - start
sys.stderr.write("\n")
rv = (p.returncode, contents)
if p.poll() is None:
rv = ("TIMEOUT", contents)
if "Traceback (most recent call last)" in contents:
rv = ("EXCEPTION RAISED", contents)
if "internal error" in contents:
rv = ("INTERNAL ERROR", contents)
sys.stderr.write("\nDONE\n\n")
sys.stderr.write("TOTAL EXECUTION TIME: " + str(totalTime) + "\n")
sys.stderr.write("RETURN VALUE: " + str(p.returncode) + "\n")
sys.stderr.write("RETURNING AS RESULT: " + str(rv[0]) + "\n")
sys.stderr.write("=" * 80 + "\n")
sys.stderr.write("\n\n" + ("=" * 80) + "\n")
sys.stderr.write("RUNNING: ")
sys.stderr.write(" ".join(cmd) + "\n\n")
sys.stderr.flush()
with open(file, 'w') as outf:
p = subprocess.Popen(cmd, stdout=outf, stderr=outf)
start = time.time()
oldContents = ""
lastOutput = time.time()
while (p.poll() is None) and ((time.time() - start) < timeout):
if (time.time() - lastOutput) > 300:
sys.stderr.write(".")
sys.stderr.flush()
lastOutput = time.time()
with open(file, 'r') as inf:
contents = inf.read()
if len(contents) > len(oldContents):
sys.stderr.write(contents[len(oldContents):])
sys.stderr.flush()
oldContents = contents
lastOutput = time.time()
time.sleep(0.05)
totalTime = time.time() - start
sys.stderr.write("\n")
rv = (p.returncode, contents)
if p.poll() is None:
rv = ("TIMEOUT", contents)
if "Traceback (most recent call last)" in contents:
rv = ("EXCEPTION RAISED", contents)
if "internal error" in contents:
rv = ("INTERNAL ERROR", contents)
sys.stderr.write("\nDONE\n\n")
sys.stderr.write("TOTAL EXECUTION TIME: " + str(totalTime) + "\n")
sys.stderr.write("RETURN VALUE: " + str(p.returncode) + "\n")
sys.stderr.write("RETURNING AS RESULT: " + str(rv[0]) + "\n")
sys.stderr.write("=" * 80 + "\n")
return rv
return rv