NoDataFile #1
@ -121,7 +121,7 @@ For each task completed:
|
||||
|
||||
---
|
||||
|
||||
## Task: Enhanced Anime Add Flow
|
||||
## Task: Enhanced Anime Add Flow ✅ COMPLETED
|
||||
|
||||
### Overview
|
||||
|
||||
@ -196,14 +196,31 @@ Enhance the anime addition workflow to automatically persist anime to the databa
|
||||
|
||||
### Acceptance Criteria
|
||||
|
||||
- [ ] When adding a new anime, it is immediately saved to the database
|
||||
- [ ] When adding a new anime, only that anime is scanned for missing episodes (not full library)
|
||||
- [ ] Folder is created using the sanitized display name (e.g., "Attack on Titan" not "attack-on-titan")
|
||||
- [ ] Special characters in anime names are properly handled (`:`, `?`, etc.)
|
||||
- [ ] Existing anime entries continue to work (backward compatibility)
|
||||
- [ ] API response includes the created folder path and missing episodes count
|
||||
- [ ] Unit tests cover the new functionality
|
||||
- [ ] No regressions in existing tests
|
||||
- [x] When adding a new anime, it is immediately saved to the database
|
||||
- [x] When adding a new anime, only that anime is scanned for missing episodes (not full library)
|
||||
- [x] Folder is created using the sanitized display name (e.g., "Attack on Titan" not "attack-on-titan")
|
||||
- [x] Special characters in anime names are properly handled (`:`, `?`, etc.)
|
||||
- [x] Existing anime entries continue to work (backward compatibility)
|
||||
- [x] API response includes the created folder path and missing episodes count
|
||||
- [x] Unit tests cover the new functionality
|
||||
- [x] No regressions in existing tests
|
||||
|
||||
### Implementation Summary (Completed)
|
||||
|
||||
**Files Created/Modified:**
|
||||
- `src/server/utils/filesystem.py` - New file with `sanitize_folder_name()`, `is_safe_path()`, `create_safe_folder()`
|
||||
- `src/core/entities/series.py` - Added `sanitized_folder` property
|
||||
- `src/core/entities/SerieList.py` - Updated `add()` to use sanitized folder names
|
||||
- `src/core/SerieScanner.py` - Added `scan_single_series()` method
|
||||
- `src/server/api/anime.py` - Enhanced `add_series` endpoint with full flow
|
||||
|
||||
**Tests Added:**
|
||||
- `tests/unit/test_filesystem_utils.py` - 43 tests for filesystem utilities
|
||||
- `tests/unit/test_serie_class.py` - 6 tests for `sanitized_folder` property
|
||||
- `tests/unit/test_serie_scanner.py` - 9 tests for `scan_single_series()`
|
||||
- `tests/api/test_anime_endpoints.py` - 6 integration tests for enhanced add flow
|
||||
|
||||
**All 97 related tests passing. No regressions in existing 848 unit tests and 60 API tests.**
|
||||
|
||||
### Testing Requirements
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user