feat: add e2e tests - #5
Conversation
There was a problem hiding this comment.
Pull request overview
This PR adds a comprehensive end-to-end (E2E) testing suite for the Lalo EPUB to audiobook converter. The test suite validates the complete conversion pipeline using real TTS engines and real EPUB files from Project Gutenberg.
Changes:
- Added 51 E2E tests across 6 test files covering CLI commands, audio format conversion, streaming modes, parallel processing, error handling, and multi-language support
- Created test utilities and fixtures for audio validation, quality checking, and M4B chapter marker validation
- Added comprehensive documentation including testing guide and E2E test suite README with usage instructions
- Updated CI/CD workflows to exclude GPU-dependent E2E tests from automated runs
Reviewed changes
Copilot reviewed 16 out of 20 changed files in this pull request and generated 14 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/e2e/init.py | Module initialization for E2E tests |
| tests/e2e/conftest.py | Test fixtures and pytest configuration for E2E tests |
| tests/e2e/utils.py | Utility functions for audio validation and quality checking |
| tests/e2e/test_e2e_cli_basic.py | Tests for CLI commands (version, help, speakers, languages, inspect) |
| tests/e2e/test_e2e_convert_formats.py | Tests for output formats (MP3, WAV, M4B) and chapter markers |
| tests/e2e/test_e2e_convert_modes.py | Tests for streaming vs non-streaming modes and chapter selection |
| tests/e2e/test_e2e_convert_parallel.py | Tests for parallel vs sequential processing |
| tests/e2e/test_e2e_error_handling.py | Tests for error scenarios and edge cases |
| tests/e2e/test_e2e_languages.py | Tests for multi-language support (Portuguese) |
| tests/e2e/README.md | Comprehensive documentation for E2E test suite |
| docs/TESTING.md | Testing guide for unit and E2E tests |
| README.md | Added development setup and testing reference |
| pyproject.toml | Added pytest markers configuration |
| .github/workflows/ci.yml | Updated to exclude E2E tests from CI pipeline |
| .github/workflows/pr.yml | Updated to exclude E2E tests from PR checks |
| .gitattributes | Added binary handling for EPUB files |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
dbc8fa0 to
231eb12
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 16 out of 20 changed files in this pull request and generated 9 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Signed-off-by: Willian Paixao <willian@ufpa.br>
231eb12 to
4103812
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 16 out of 20 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.