2 Commits
Author SHA1 Message Date
Hermes 57add9e337 feat: Add test runner script and Gitea Actions CI
Test Suite / test (push) Canceled after 0s
How to run tests (answers user question):

Manual execution:
  ./run_tests.sh                    # Quick way with auto-configured python
  python -m pytest tests/unit/ -v   # Direct pytest command

Automated (Gitea Actions):
  - Tests run on every push/PR to main branch
  - Workflow file: .gitea/workflows/test.yml
  - Status visible at repo actions page

CI skips PySide6-dependent GUI tests by default.
2026-11-07 16:38:49 -07:00
Hermes 516397dd96 security: Fix command injection vulnerability in updater.py
- Add shlex.quote() on all path arguments before subprocess calls (lines 404-407)
- Consolidate duplicated version_compare() function into single module-level utility
- Remove three identical class methods from UpdateCheckThread, LocalPendingUpdateCheckThread, and UpdateManager
- Add comprehensive test suite for updater.py security-critical functionality
- Add requirements-dev.txt with pytest dependency

Addresses critical security findings from flares_audit_report.md:
  S001: Command Injection in Updater (CVSS ~7.5)
  Q001: Duplicated version_compare logic
  T001: Insufficient test coverage for updater.py
2026-11-07 15:14:32 -07:00