[tool:pytest] # Test discovery testpaths = tests python_files = test_*.py *_test.py python_classes = Test* python_functions = test_* # Test output addopts = --verbose --tb=short --strict-markers --disable-warnings --cov=src --cov-report=html --cov-report=term-missing --cov-fail-under=80 --asyncio-mode=auto # Coverage configuration [coverage:run] source = src omit = */tests/* */venv/* */env/* setup.py [coverage:report] exclude_lines = pragma: no cover def __repr__ if self.debug: if settings.DEBUG raise AssertionError raise NotImplementedError if 0: if __name__ == .__main__.: class .*\bProtocol\): @(abc\.)?abstractmethod # Test markers configuration markers = # Test scope and type unit: Tests that verify individual components in isolation integration: Tests that verify integration between components system: Tests that verify the entire system end-to-end regression: Tests that ensure system behavior doesn't regress # Performance and benchmarking performance: Tests that measure performance metrics benchmark: Tests that benchmark performance characteristics slow: Tests that take a long time to run fast: Tests that should run quickly smoke: Basic sanity tests that should always pass # Module-specific tests verify: Tests specifically for verification modules mutate: Tests specifically for mutation modules parse: Tests specifically for parsing modules spec: Tests specifically for specification generation ui: Tests specifically for UI and API components # Verification types memory_safety: Tests focused on memory safety verification overflow_detection: Tests focused on overflow detection concurrency: Tests focused on concurrency verification bounds: Tests focused on bounds checking pointer: Tests focused on pointer safety # External dependencies cbmc: Tests requiring CBMC installation llm: Tests requiring LLM API access freertos: Tests requiring FreeRTOS to be available external: Tests that require external services or tools network: Tests that require network connectivity fileio: Tests that perform file I/O operations # Test environments local: Tests that can run locally without special setup ci: Tests that should run in CI environment requires_cbmc: Tests that require CBMC to be installed requires_freertos: Tests that require FreeRTOS to be available # Test features api: Tests that verify API endpoints workflow: Tests that verify workflow functionality cli: Tests that verify command-line interface validation: Validation tests parser: Parser tests # Test reliability flaky: Tests that are known to be unreliable experimental: Tests that are still experimental deprecated: Tests for deprecated functionality # Minimum Python version minversion = 6.0 # Async configuration asyncio_mode = auto # Filter warnings filterwarnings = ignore::DeprecationWarning ignore::PendingDeprecationWarning ignore::UserWarning:pytest.* ignore::UserWarning:pydantic.* ignore::UserWarning:urllib3.*