Skip to content

annakor98/2023-autumn-ab-python-ads-HW-6

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 

Repository files navigation

2023-autumn-ab-python-ads-HW-6

Общее описание

Дополнить HW5 работой с базой данных, тестированием методов API и настроить автоматический запуск линтеров и тестов при push в репозиторий.

API endpoints

endpoint Обновить существующий endpoint Создать новый endpoint Тип запроса Действие Подсказка
/predict/{baseline} ✔️ POST Возвращает предсказание класса (fraud/clean) для заданного входного текста и записывает входной текст, предсказание, используемый бейзлайн и время выполнения в базу messages.db
/get_latest_entry/{baseline} ✔️ GET Возвращает крайнюю запись в БД messages.db для бейзлайна baseline Используйте код вида db.query(model).filter(column == value)
/get_number_of_entries ✔️ GET Возвращает количество записей в БД messages.db для каждого бейзлайна, например: {"constant-fraud": 1, "constant-clean": 2, "first-hypothesis": 3} Используйте код вида db.query(column1, column2).group_by(column2) и функцию sqlalchemy.func.count

Тестирование API

Реализовать тесты для каждого метода API. Для /get_number_of_entries и /get_latest_entry достаточно реализовать только проверку response_code при правильном и неправильном запросе, для остальных - также добавить проверку response_body.

Actions

Настроить автоматический запуск make lint и make test при каждом push в репозиторий.

Критерии оценки

Критерий Количество баллов
Реализованы модули database.py и models.py для работы с БД +1
Реализованы и корректно работают все необходимые методы API +4
Реализованы все тесты +3
Реализован и корректно отрабатывает workflow lint_and_test_on_push.yaml +2

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published