mirror of
https://github.com/kevinveenbirkenbach/homepage.veen.world.git
synced 2026-04-07 05:12:19 +00:00
- Replace requirements.txt with pyproject.toml for modern Python packaging - Add unit, integration, lint and security test suites under tests/ - Add utils/export_runtime_requirements.py and utils/check_hadolint_sarif.py - Split monolithic CI into reusable lint.yml, security.yml and tests.yml - Refactor ci.yml to orchestrate reusable workflows; publish on semver tag only - Modernize Dockerfile: pin python:3.12-slim, install via pyproject.toml - Expand Makefile with lint, security, test and CI targets - Add test-e2e via act with portfolio container stop/start around run - Fix navbar_logo_visibility.spec.js: win.fullscreen() → win.enterFullscreen() - Set use_reloader=False in app.run() to prevent double-start in CI - Add app/core.* and build artifacts to .gitignore - Fix apt-get → sudo apt-get in tests.yml e2e job - Fix pip install --ignore-installed to handle stale act cache Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
26 lines
716 B
Python
26 lines
716 B
Python
import unittest
|
|
from pathlib import Path
|
|
|
|
|
|
class TestTestFileNaming(unittest.TestCase):
|
|
def test_all_python_files_use_test_prefix(self):
|
|
tests_root = Path(__file__).resolve().parents[1]
|
|
invalid_files = []
|
|
|
|
for path in tests_root.rglob("*.py"):
|
|
if path.name == "__init__.py":
|
|
continue
|
|
|
|
if not path.name.startswith("test_"):
|
|
invalid_files.append(path.relative_to(tests_root).as_posix())
|
|
|
|
self.assertFalse(
|
|
invalid_files,
|
|
"The following Python files do not start with 'test_':\n"
|
|
+ "\n".join(f"- {path}" for path in invalid_files),
|
|
)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|