#!/usr/bin/env python3 """ Quick test runner for TheChart application. This script provides a simple way to run the test suite. """ import os import subprocess import sys def main(): """Run the test suite.""" print("🧪 Running TheChart Test Suite") print("=" * 50) # Change to project directory os.chdir(os.path.dirname(os.path.abspath(__file__))) # Run tests with coverage cmd = [ "uv", "run", "pytest", "tests/", "--cov=src", "--cov-report=term-missing", "--cov-report=html:htmlcov", "-v", ] try: result = subprocess.run(cmd, check=False) if result.returncode == 0: print("\n✅ All tests passed!") else: print(f"\n❌ Some tests failed (exit code: {result.returncode})") print("\n📊 Coverage report generated in htmlcov/index.html") return result.returncode except KeyboardInterrupt: print("\n⚠️ Tests interrupted by user") return 1 except Exception as e: print(f"\n💥 Error running tests: {e}") return 1 if __name__ == "__main__": sys.exit(main())