forked from NUDT-compiler/nudt-compiler-cpp
parent
be143f5326
commit
3832d65537
@ -0,0 +1,39 @@
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
COMPILER = "./build/bin/compiler"
|
||||
TEST_DIR = "./test/test_case/functional"
|
||||
|
||||
pass_cnt = 0
|
||||
fail_cnt = 0
|
||||
|
||||
print("===== SysY Batch Test Start =====")
|
||||
|
||||
for file in os.listdir(TEST_DIR):
|
||||
if not file.endswith(".sy"):
|
||||
continue
|
||||
|
||||
path = os.path.join(TEST_DIR, file)
|
||||
print(f"[TEST] {file} ... ", end="")
|
||||
|
||||
result = subprocess.run(
|
||||
[COMPILER, "--emit-parse-tree", path],
|
||||
stdout=subprocess.DEVNULL,
|
||||
stderr=subprocess.PIPE
|
||||
)
|
||||
|
||||
if result.returncode == 0:
|
||||
print("PASS")
|
||||
pass_cnt += 1
|
||||
else:
|
||||
print("FAIL")
|
||||
fail_cnt += 1
|
||||
print("---- Error ----")
|
||||
print(result.stderr.decode())
|
||||
print("---------------")
|
||||
|
||||
print("===============================")
|
||||
print(f"Total: {pass_cnt + fail_cnt}")
|
||||
print(f"PASS : {pass_cnt}")
|
||||
print(f"FAIL : {fail_cnt}")
|
||||
print("===============================")
|
||||
Loading…
Reference in new issue