#!/usr/bin/env python3 """Verification test for dir_analyzer.py""" import subprocess import json import sys def _check(cond, msg="check failed"): """Explicit failure path -- survives `python3 -O`, where `assert` is compiled away.""" if not cond: raise SystemExit(f"FAIL: {msg}") # Test JSON mode result = subprocess.run(['python3', 'dir_analyzer.py', '/etc', '--json'], capture_output=True, text=True, cwd='/root/troupe-standup/wizard-work/spark') data = json.loads(result.stdout) _check('total_files' in data, "Missing total_files") _check('total_size_bytes' in data, "Missing total_size_bytes") _check(data['total_files'] > 0, "Should find files in /etc") _check(data['total_size_bytes'] > 0, "Should have size > 0") print(f"JSON mode: PASS - {data['total_files']} files, {data['total_size_bytes']} bytes") # Test text mode result2 = subprocess.run(['python3', 'dir_analyzer.py', '/tmp'], capture_output=True, text=True, cwd='/root/troupe-standup/wizard-work/spark') _check('Total files:' in result2.stdout, "Should show file count") _check('Total size:' in result2.stdout, "Should show size") print("Text mode: PASS") print("All verification tests passed")