test017.py
import sys, os, re, glob, shutil
def runaap(args):
return os.system("%s ..%sMain.py %s" % (sys.argv[1], os.sep, args))
os.chdir("rectest")
rec = "rectest.aap"
out = "rectest.out"
inp = "rectest.c"
lib = "librectest.a"
def cleanup():
for file in [ rec, out, inp, lib ]:
try:
os.remove(file)
except:
pass
try:
for dir in glob.glob('build-*'):
shutil.rmtree(dir)
except:
pass
cleanup()
f = open(rec, "w")
f.write("""
:usetool gcc
:lib %s : %s
all: %s
:print PASS
""" % (lib, inp, lib))
f.close()
f = open(inp, "w")
f.write("""
int foo() {return 0;}
""")
f.close()
res = runaap("-f %s >%s" % (rec, out))
f = open(out)
l = f.read()
if not re.search("PASS", l):
print 'Aap failed to behave as expected - output was:'
print l
res = 1
f.close()
cleanup()
sys.exit(res)