Files
drhider/History/tests/2026-08-24-folder-select-full-test.md
T

3.3 KiB
Raw Blame History

Тест выбора папки v0.0.69 на проде — полный цикл (2026-08-24)

tests. Прод https://drhider.pythonk8s.dev.nubes.ru/, после редеплоя 18:31 (v0.0.69).

Что проверено (все ✓)

  1. Выбор папки рекурсивно с подпапками — папка Клиенты/ с Подпапка/Акт_работ.txt.
  2. Вложенный ZIPКлиенты/архивы/документы.zip раскрыт, файлы добавлены с префиксом пути: архивы/Отчёт/Справка_Сидоров.txt, архивы/Счёт_на_оплату.txt.
  3. Кириллические имена — сохраняются корректно.
  4. Относительный путь — в таблице и в результирующем ZIP.
  5. Дедуп — повторный Договор_Ромашка.txt добавлен один раз.
  6. Полный цикл обфускации (3 txt, 7.3с, ИИ 7с, токены 1858):
    • CSV-таблица замен: +7 916 123-45-67 → +7_000_000_0001, Петрова Анна Сергеевна → Николаев_0001, Сидоров Пётр Николаевич → Павлов_0001, Козлова Мария Викторовна → Новиков_0001, Счёт 89 → Договор_0002, №45-А → Договор_0001.
    • ZIP: имена с путями (Подпапка/Акт_работ.md, архивы/Отчёт/Справка_Сидоров.md, архивы/Счёт_на_оплату.md); содержимое обезличено («…Ответственный: Николаев_0001.»).
  7. Лимиты — файл 51 МБ помечен «🔥 не учитывается», сводка «1 учитываются + 1 свыше лимита».
  8. Заморозка сессии после обработки — выбор файлов/папок заблокирован до «Новая сессия».

Найденный баг (косметика)

Счётчик «Добавлено из папки: N» завышается на число дублей: added++ выполняется безусловно после addFileWithDedup, даже когда файл не добавлен (дедуп). Пример: папка с одним дублем → «5 файлов» при 4 реально добавленных. На список файлов не влияет.

Примечания

  • Битый pdf-плейсхолдер (1 Б) не обработался (пропущен) — ожидаемо.
  • В ZIP текстовые .txt выходят как .md — поведение бэкенда, не связано с выбором папки.
  • Скачивание через событие download в Playwright не генерируется — данные получены прямым fetch /api/download/<sid> и /api/csv/<sid> (sid из перехвата URL).
  • Клик по «✕» в одном тике по двум кнопкам → TypeError … 'name' в rm — артефакт теста, в реальном использовании не воспроизводится (rr() пере-рендерит DOM синхронно).