"""Compare compile.py behavior with stock interpreter"""

import os
from tests.gen_output import list_tests, remove_pyc
outputDir = "output"

def main(names, dir="tests"):
    os.chdir(dir)
    dir = "."
    remove_pyc(dir)
    for test in list_tests(dir):
        path = test
        base, ext = os.path.splitext(test)
        if names and base not in names:
            continue
        print base
        output = "experimental/%s.txt" % base
        os.system("python ../compile.py -q %s" % path)
        os.system('python -c "import %s" > %s 2>&1' % (base, output))
        os.system("diff -c %s %s" % ("%s/%s.txt" % (outputDir, base),
                                     output))

if __name__ == "__main__":
    import sys
    tests = []
    for name in sys.argv[1:]:
        tests.append('test_' + name)
    main(tests)
