feat: add streamArchiveEntry to archiveReader and tests
- Añade `streamArchiveEntry` que devuelve un stream para entradas internas de ZIP/7z - Añade tests unitarios que mockean `child_process.spawn` (7z + unzip fallback) - Mantiene `listArchiveEntries` y documenta dependencia de binarios en CI
This commit is contained in:
28
plans/integrar-archive-entries-plan-phase-1-complete.md
Normal file
28
plans/integrar-archive-entries-plan-phase-1-complete.md
Normal file
@@ -0,0 +1,28 @@
|
||||
## Phase 1 Complete: Contracto de ArchiveReader (list + stream)
|
||||
|
||||
TL;DR: Añadida `streamArchiveEntry` a `archiveReader` y tests unitarios que cubren streaming con `7z`, fallback `unzip -p` y formato no soportado. Los tests unitarios específicos pasan y la implementación es mockeable.
|
||||
|
||||
**Files created/changed:**
|
||||
|
||||
- backend/src/services/archiveReader.ts
|
||||
- backend/tests/services/archiveReader.stream.spec.ts
|
||||
- backend/tests/services/archiveReader.spec.ts
|
||||
|
||||
**Functions created/changed:**
|
||||
|
||||
- `streamArchiveEntry(containerPath, entryPath)` — nueva función que retorna un `Readable` con el contenido de una entrada interna (o `null` para formatos no soportados).
|
||||
- `listArchiveEntries(filePath)` — sin cambios funcionales (pruebas de listado existentes siguen pasando).
|
||||
|
||||
**Tests created/changed:**
|
||||
|
||||
- `backend/tests/services/archiveReader.stream.spec.ts` — tests unitarios para `streamArchiveEntry` (7z success, unzip fallback, unsupported formats).
|
||||
- `backend/tests/services/archiveReader.spec.ts` — tests de listado existentes (sin cambios funcionales relevantes).
|
||||
|
||||
**Review Status:** APPROVED with minor recommendations
|
||||
|
||||
**Git Commit Message:**
|
||||
feat: add streamArchiveEntry to archiveReader and tests
|
||||
|
||||
- Añade `streamArchiveEntry` que devuelve un stream para entradas internas de ZIP/7z
|
||||
- Añade tests unitarios que mockean `child_process.spawn` (7z + unzip fallback)
|
||||
- Mantiene `listArchiveEntries` y documenta dependencia de binarios en CI
|
||||
Reference in New Issue
Block a user