Бюджет 20$ / 1200
руб
в месяц
Создан: 2 года назад
На модерации
Описание
Нужно написать универсальный декоратор для валидации входных и выходных параметров функции.
Требуется:
- В качестве параметра input_validation декоратор принимает функцию для проверки входных параметров. При провале проверки выдаётся исключение InputParameterVerificationError
- В качестве параметра result_validation декоратор принимает функцию для проверки результата выполнения функции. При провале проверки выдаётся исключение ResultVerificationError, если не указан параметр default_behavior.
- В качестве опционального параметра on_fail_repeat_times (По умолчанию равен 1) декоратор принимает количество раз повторения вызова функции при провале валидации результата. При установке параметра в значение 0 выдать написанное самостоятельно исключение. При отрицательном значении параметра функция, над котором стоит декоратор, выполнится до тех пор, пока результат не пройдёт условия проверки, либо будет выполняться вечно.
- В качестве опционального параметра default_behavior декоратор принимает функцию, которая выполнится при истечении дозволенного количества повторений. По умолчанию значение параметра – None.
- Дополнительные параметры, если они нужны, нужно определить самостоятельно.
- Написать юнит-тесты с использованием unittest или pytest (на выбор). Среди тестов обязательно должны быть проверки: валидация входного json-параметра; валидация строки по регулярному выражению; проверка валидации возвращаемого результата; проверка что при определенных условиях действительно поднимаются исключения InputParameterVerificationError, ResultVerificationError;
- Написать tox.ini для автоматической проверки программы (tox есть готовый, нужно проверить и может слегка подправить).

Требования к качеству кода:
1. Формат кода соответствует pep8
Проверка: flake8 --max-line-length=120 .
2. Формат докстрингов соответствует pep 257
Проверка: pep257 . 
3. Формат аннотаций соответствует pep 484
Проверка: mypy . --disallow-untyped-calls --disallow-untyped-defs --disallow-incomplete-defs --check-untyped-defs  --disallow-untyped-decorators --ignore-missing-imports --pretty
4. Если в проекте используются сторонние библиотеки – они все указаны в файле requirements.txt вместе с версиями
5. Отсутствует мертвый код
Проверка:  vulture . --min-confidence 70
6. Индекс поддерживаемости кода на отметке не ниже «B».
Проверка: radon mi -m .

Категория
Источник: fl.ru

Похожие проекты

safe$22
9 0
требуется готовую онлайн анкету на django по приему на работу перенести в whatsapp, telegram и viber. Нужно чтобы кандидат мог с удобством заполнять анкету с телефона, а все заполненные им данные по всем позициям автоматически загружались в нашу базу данных. В нашей базе будет создаваться резюме кандидата......
safe 
28 0
В наличии массив кадастровых номеров (КН), необходимо путем запроса на ПКК определить примерные географические координаты каждого объекта из массива КН (ОКС, ЗУ), вывести в результирующий файл эти ко-ты и ряд сопутствующих данных по этому КН....
1 год назад
safe 
44 1
Необходимо разработать бек и фронт мини-сервиса таким образом, чтоб его можно было развернуть внутри другого проекта....
safe$1111
23 0
Стоит на Бизнесе для своих нужд на простеньком базовом шаблоне, складываю туда контент потихоньку. Нужно начинать приводить в соответствие что бы публика сразу не убегала, а как то цеплялась, да и продвигать не торопясь. Шаблон где порвался от вставки баннеров подправить, для мобилок может сверстать.......
safe$22
55 0
Парсер для сайта stockx. com на питоне (selenium/pyppeteer). Необходим следующий функционал: 1. На главной странице с поиском по ключевым словам найти первый результат из поиска (ссылку на страницу товара) ....
1 год назад
safe$44
49 0
Трипланарная транспортная задача (отправители - транспорт - получатели) генерация исходных данных трехэтапное решение 1....
safe$1111
48 0
Требуется написать парсер маркетплейса, у которого есть только мобильное приложение (IOS, Android). Есть исходный код Android приложения (Java + Kotlin), реверснутый через JADX. Необходимо парсить данные о товарах, полученные по артикулу. За подробностями тг: @markermann)....
1 год назад
 
38 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
36 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
37 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
31 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
40 1
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
$22
59 1
В Геткурсе нужно сделать интеграцию со Сбербанком для оформления рассрочки/кредита. Основная задача – передача суммы и номера заказа при переходе для оформления рассрочки и возврат сведений при удачном оформлении. Эквайринг от Сбербанка к Геткурсу подключён, а готовой интеграции для рассрочки нет. Если......
1 год назад
 
96 0
Нужно сделать бот перехватчик заказов по фильтру такси Максим!...
1 год назад
$33
75 1
Как можно загрузить готовое фото из галереи, если приложение просит загрузить фото и при этом открывает камеру телефона? Нужно вместо использования реальной камеры смоделировать вход камеры и при этом загрузить фото из галереи....
1 год назад
 
117 3
Очень простой криптообменник в виде веб-сайта. Без смарт-контрактов и т. Все платежи вручную....
Смотреть все