-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcopy-test-outputs.py
More file actions
53 lines (39 loc) · 1.78 KB
/
copy-test-outputs.py
File metadata and controls
53 lines (39 loc) · 1.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/env python3
"""
Copy non-.diff output files from test-diffs/BACKEND/ to src/test/resources/golden-masters/BACKEND/
This script copies generated backend outputs (e.g., .efg, .sol, .vy files) from the
test-diffs directory structure to the golden-masters directory.
Directory structure:
test-diffs/gambit/Simple.efg -> src/test/resources/golden-masters/gambit/Simple.efg
test-diffs/solidity/Simple.sol -> src/test/resources/golden-masters/solidity/Simple.sol
etc.
.diff files are excluded from copying.
"""
import shutil
from pathlib import Path
# Backend directories to process
BACKENDS = ["gallina-fair", "gallina-independent", "gallina-monotone", "gambit", "graphviz", "lean-fair", "lean-independent", "lean-monotone", "lightning", "scribble", "smt", "solidity", "vyper"]
def copy_test_outputs():
"""Copy non-.diff files from test-diffs/BACKEND/ to src/test/resources/golden-masters/BACKEND/"""
for backend in BACKENDS:
src_dir = Path("test-diffs") / backend
dst_dir = Path("src/test/resources/golden-masters") / backend
if not src_dir.exists():
print(f"Warning: Source directory {src_dir} does not exist, skipping")
continue
# Create destination directory
dst_dir.mkdir(parents=True, exist_ok=True)
# Copy all non-.diff files
count = 0
for src_file in src_dir.iterdir():
# Skip directories and .diff files
if src_file.is_dir() or src_file.suffix == ".diff":
continue
# Copy the file
dst_file = dst_dir / src_file.name
shutil.copy2(src_file, dst_file)
count += 1
print(f"Copied {count} files from {src_dir} to {dst_dir}")
print("Done!")
if __name__ == "__main__":
copy_test_outputs()