File size: 528 Bytes
4adaccc
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
#!/usr/bin/env python3
import hashlib
from pathlib import Path
r=Path(__file__).resolve().parent; rows=(r/'BUNDLE_SHA256SUMS.txt').read_text().splitlines(); seen=set()
for row in rows:
 digest,name=row.split('  ',1); p=r/name; assert p.is_file() and hashlib.sha256(p.read_bytes()).hexdigest()==digest; seen.add(name)
actual={p.relative_to(r).as_posix() for p in r.rglob('*') if p.is_file() and p.name!='BUNDLE_SHA256SUMS.txt' and '__pycache__' not in p.parts}
assert seen==actual; print(f'manifest verified: {len(rows)} files')