forked from OctaForge/libostd
don't use shell in test runner
parent
56ba03ad3f
commit
d10cdfebbb
26
run_tests.py
26
run_tests.py
|
@ -4,21 +4,24 @@ from os.path import splitext
|
||||||
import subprocess as sp
|
import subprocess as sp
|
||||||
|
|
||||||
COMPILER = "c++"
|
COMPILER = "c++"
|
||||||
# -Wno-missing-braces because clang false positive
|
CXXFLAGS = [
|
||||||
CXXFLAGS="-std=c++11 -Wall -Wextra -Wno-missing-braces -I."
|
"-std=c++11",
|
||||||
|
"-Wall", "-Wextra",
|
||||||
|
"-Wno-missing-braces", # clang false positive
|
||||||
|
"-I."
|
||||||
|
]
|
||||||
|
|
||||||
nsuccess = 0
|
nsuccess = 0
|
||||||
nfailed = 0
|
nfailed = 0
|
||||||
|
|
||||||
for fname in listdir("./tests"):
|
for fname in listdir("tests"):
|
||||||
(modname, modext) = splitext(fname)
|
(modname, modext) = splitext(fname)
|
||||||
|
|
||||||
if modext != ".cpp":
|
if modext != ".cpp":
|
||||||
continue
|
continue
|
||||||
|
|
||||||
pc = sp.Popen("%s tests/%s -o tests/%s %s"
|
pc = sp.Popen([ COMPILER, "tests/%s" % fname, "-o", "tests/%s" % modname ]
|
||||||
% (COMPILER, fname, modname, CXXFLAGS), shell = True,
|
+ CXXFLAGS, stdout = sp.PIPE, stderr = sp.STDOUT)
|
||||||
stdout = sp.PIPE, stderr = sp.STDOUT)
|
|
||||||
stdout.write(pc.communicate()[0])
|
stdout.write(pc.communicate()[0])
|
||||||
|
|
||||||
if pc.returncode != 0:
|
if pc.returncode != 0:
|
||||||
|
@ -26,20 +29,19 @@ for fname in listdir("./tests"):
|
||||||
nfailed += 1
|
nfailed += 1
|
||||||
continue
|
continue
|
||||||
|
|
||||||
pc = sp.Popen("./tests/%s" % modname, shell = True,
|
pc = sp.Popen("tests/%s" % modname, stdout = sp.PIPE, stderr = sp.STDOUT)
|
||||||
stdout = sp.PIPE, stderr = sp.STDOUT)
|
|
||||||
stdout.write(pc.communicate()[0])
|
stdout.write(pc.communicate()[0])
|
||||||
|
|
||||||
if pc.returncode != 0:
|
if pc.returncode != 0:
|
||||||
remove("./tests/%s" % modname)
|
remove("tests/%s" % modname)
|
||||||
print "%s...\t\033[91m\033[1m(runtime error)\033[0m" % modname
|
print "%s...\t\033[91m\033[1m(runtime error)\033[0m" % modname
|
||||||
nfailed += 1
|
nfailed += 1
|
||||||
continue
|
continue
|
||||||
|
|
||||||
remove("./tests/%s" % modname)
|
remove("tests/%s" % modname)
|
||||||
print "%s...\t\033[92m\033[1m(success)\033[0m" % modname
|
print "%s...\t\033[92m\033[1m(success)\033[0m" % modname
|
||||||
nsuccess += 1
|
nsuccess += 1
|
||||||
|
|
||||||
print "\n\033[94m\033[1mtesting done:\033[0m"
|
print "\n\033[94m\033[1mtesting done:\033[0m"
|
||||||
print "\033[92mSUCCESS\033[0m: %d" % nsuccess
|
print "\033[92mSUCCESS\033[0m: \033[1m%d\033[0m" % nsuccess
|
||||||
print "\033[91mFAILURE\033[0m: %d" % nfailed
|
print "\033[91mFAILURE\033[0m: \033[1m%d\033[0m" % nfailed
|
Loading…
Reference in New Issue