chore: sync все локальные изменения (auto, 2026-05-04)

This commit is contained in:
“Naeel”
2026-05-04 11:55:49 +04:00
parent 25816395d3
commit e128bdc28f
21 changed files with 299 additions and 0 deletions
@@ -0,0 +1,57 @@
# План тестирования: загрузка функций из архива (Fission Console)
Дата: 2026-05-04
## Цели
- Проверить корректность загрузки функций из архива для всех поддерживаемых языков (Python, Node.js, Ruby, PHP)
- Проверить работу линтера, валидацию entrypoint, соответствие языка, структуру архива
- Проверить обработку ошибок, edge-cases, граничные размеры
## Категории тестов
### 1. Валидные случаи
- [ ] Python: demo.py с def main(), entrypoint demo.main
- [ ] Node.js: demo.js с module.exports = main, entrypoint demo.main
- [ ] Ruby: demo.rb с def main, entrypoint demo.main
- [ ] PHP: demo.php с function main, entrypoint demo.main
- [ ] Архив с несколькими файлами (несколько языков, только один выбран)
- [ ] Архив с подпапками (файл demo.py внутри src/)
- [ ] Entrypoint с нестандартным именем (myfunc.py, entrypoint myfunc.main)
### 2. Ошибочные случаи
- [ ] Нет файла с нужным именем (entrypoint demo.main, а demo.py отсутствует)
- [ ] Нет функции с нужным именем (demo.py есть, но нет def main)
- [ ] Язык выбран Python, а в архиве только .js
- [ ] Язык выбран Node.js, а в архиве только .py
- [ ] Entrypoint пустой
- [ ] Entrypoint без точки ("main")
- [ ] Архив пустой
- [ ] Архив > 100 KB
- [ ] Суммарный размер файлов > 100 KB (zip bomb)
- [ ] Файл с синтаксической ошибкой (Python, JS, Ruby, PHP)
### 3. Пограничные случаи
- [ ] demo.py ровно 100 KB
- [ ] Архив с demo.py и demo.js, язык Python, entrypoint demo.main
- [ ] Архив с demo.py и demo.js, язык Node.js, entrypoint demo.main
- [ ] demo.py с def main(event, context)
- [ ] demo.py с def main() и def main2()
- [ ] demo.py с def main : (без скобок)
- [ ] demo.py с декоратором @fission_entry
- [ ] demo.py с не-ASCII именем функции
### 4. UI/UX
- [ ] Проверка сообщений линтера (ошибки, предупреждения, OK)
- [ ] Проверка отображения имени архива, entrypoint, языка
- [ ] Проверка что после ошибки можно загрузить исправленный архив
## Автоматизация
- Тесты реализовать на Go (backend), Python (pytest), JS (playwright) — по необходимости
- Для каждого теста: архив, ожидаемый результат, шаги UI/REST, ожидаемое сообщение
---
## Ход выполнения
- [ ] Подготовить тестовые архивы
- [ ] Реализовать автотесты (минимум: backend REST, опционально UI)
- [ ] Зафиксировать результаты в doc/reports/