Add comprehensive unit tests for core modules #201
Merged
+947
−0
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.
Summary
This PR addresses issue #147 by adding comprehensive unit tests for the core AI and API modules that were previously untested.
Changes
New Test Files
tests/unit/test_ai.py (630+ lines)
clean_playlist_name()- text sanitization and validationget_openai_compatible_playlist_name()- OpenAI/OpenRouter API integrationget_ollama_playlist_name()- Ollama API wrapperget_gemini_playlist_name()- Google Gemini API integrationget_mistral_playlist_name()- Mistral API integrationget_ai_playlist_name()- provider routing and orchestrationtests/unit/test_app_analysis.py (317+ lines)
/cleaning,/api/analysis/start,/api/cleaning/startTest Coverage
The new tests cover:
CI Integration
Tests will run automatically via the existing GitHub Actions workflow (
.github/workflows/tests.yml) on Python 3.11.Testing
All tests follow the existing project patterns:
tests/unit/test_analysis.pyandtests/unit/test_commons.pyCloses #147