feat: Add coverage, iniconfig, pluggy, pygments, pytest, pytest-cov, and pytest-mock as dependencies

- Added coverage version 7.10.1 with multiple wheel distributions.
- Added iniconfig version 2.1.0 with its wheel distribution.
- Added pluggy version 1.6.0 with its wheel distribution.
- Added pygments version 2.19.2 with its wheel distribution.
- Added pytest version 8.4.1 with its wheel distribution and dependencies.
- Added pytest-cov version 6.2.1 with its wheel distribution and dependencies.
- Added pytest-mock version 3.14.1 with its wheel distribution and dependencies.
- Updated dev-dependencies to include coverage, pytest, pytest-cov, and pytest-mock.
- Updated requires-dist to specify minimum versions for coverage, pytest, pytest-cov, and pytest-mock.
This commit is contained in:
William Valentin
2025-07-28 17:53:19 -07:00
parent 9aa1188c98
commit c20c4478a6
18 changed files with 2951 additions and 2 deletions

51
test.py Executable file
View File

@@ -0,0 +1,51 @@
#!/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())