feat: Set up comprehensive Python testing infrastructure with Poetry#57
Open
llbbl wants to merge 1 commit into
Open
feat: Set up comprehensive Python testing infrastructure with Poetry#57llbbl wants to merge 1 commit into
llbbl wants to merge 1 commit into
Conversation
- Initialized Poetry as package manager with pyproject.toml configuration - Migrated dependencies from requirements.txt to Poetry - Added testing dependencies: pytest, pytest-cov, pytest-mock - Configured pytest with coverage reporting (HTML/XML formats) - Created test directory structure with unit/integration subdirectories - Added comprehensive shared fixtures in conftest.py - Created validation tests to verify infrastructure works correctly - Updated .gitignore with testing artifacts and Claude settings - Set up test markers for unit, integration, and slow tests - Configured coverage exclusions and thresholds
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Python Testing Infrastructure Setup
Summary
This PR sets up a comprehensive testing infrastructure for the AvatarREx project using Poetry as the package manager and pytest as the testing framework.
Changes Made
Package Management
pyproject.tomlwith all project dependenciesrequirements.txtto Poetry formatTesting Framework
unit,integration, andslowTesting Structure
Shared Fixtures (conftest.py)
temp_dir: Temporary directory for test filessample_config: Sample configuration dictionarymock_config_file: Temporary YAML config filesample_tensor_data: PyTorch tensor test datasample_numpy_data: NumPy array test datamock_model_checkpoint: Mock PyTorch checkpointmock_data_file: Mock NPZ data filemock_obj_file: Mock OBJ mesh filemock_environment_variables: Environment variable mockingreset_random_seeds: Automatic seed resetting for reproducibilitydevice: CPU/CUDA device selectioncleanup_gpu_memory: GPU memory cleanupCoverage Configuration
htmlcov/directoryAdditional Updates
.gitignoreUpdates:.pytest_cache/,htmlcov/,coverage.xml.claude/*How to Use
Install Dependencies
Run Tests
View Coverage Reports
htmlcov/index.htmlin a browsercoverage.xmlfor CI toolsNotes
Validation
All validation tests pass successfully, confirming that:
The testing infrastructure is now ready for developers to start writing unit and integration tests for the codebase.