Files
upload-platform/HISTORY/2026-09-05-real-files-test.md
T

66 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 2026-09-05 — тестирование реальных файлов из `/mnt/y/T`
## Контекст
Универсальный browser file-picker версии `0.1.11` проверен на реальных
документах из каталога `/mnt/y/T`, а не только на синтетических `File` objects.
Для доступа браузера к Linux-файлам использовался временный HTTP-сервер с
CORS на порту `8766`. В репозитории и в каталоге тестовых файлов изменения не
вносились.
## Набор файлов
В `/mnt/y/T` на уровне проверки обнаружены:
- `186` PDF;
- `81` DOCX;
- `42` DOC;
- архивов `zip`, `7z` и `rar` не обнаружено.
Для массового browser-теста использован каталог `/mnt/y/T/many`:
- найдено файлов разрешённых типов: `300`;
- загружено в browser `File`: `300`;
- принято picker-ом: `300`;
- уникальных имён: `300`;
- суммарный размер: `6 453 081 B`.
## Отдельные реальные файлы
Проверены документы с пробелами, кириллицей и скобками в именах:
| Файл | Размер |
|---|---:|
| `Assumption of Responsibility for Hosting.pdf` | `19 755 B` |
| `1 РИМО.docx` | `18 301 B` |
| `GU2_ot_23.01.2047 (1).doc` | `29 184 B` |
| `Evaporator Drain Access.pdf` | `29 767 B` |
Суммарный размер этих четырёх файлов: `97 007 B`.
## Результаты
- Все четыре отдельных файла отображаются со статусом `готов`.
- Имена с кириллицей, пробелами, `$` и скобками не искажаются.
- Размеры browser `File` совпали с размерами файлов на диске.
- PDF, DOC и DOCX принимаются при конфигурации `allowedExt: ['.pdf', '.doc', '.docx']`.
- Массовый набор из `300` документов принят без потерь и без дубликатов.
- Счётчик picker-а показывает `300 файлов · 6453081 B`.
- Файлы не отправляются в upload backend: обработка остаётся browser-only.
## Ограничения теста
- В каталоге `/mnt/y/T` не было реальных архивов, поэтому ZIP проверялся
отдельными синтетическими архивами в предыдущем browser-тесте.
- Прямой системный chooser remote browser не смог принять Linux-пути
`/mnt/y/T`; поэтому реальные байты были получены браузером через временный
CORS-сервер и переданы в тот же публичный API `picker.addFiles()`.
- Временные Flask и HTTP-серверы завершались по заданному `timeout`; это
нормальное завершение тестового окружения, а не ошибка picker-а.
## Итог
Тест реальных документов подтверждает корректную работу фильтра расширений,
чтение browser `File`, сохранение имён и размеров, массовую загрузку и
отображение документов на русском, английском и смешанном наборе имён.