JustCaptain kod-buduschego
main
Перейти к файлу
Код
main.py
"""

Задача 4. Фильтрация активных пользователей

Тикет

Проект: CRM-система

Отдел: Продажи

Менеджеры жалуются, что в ежедневный отчёт иногда попадают заблокированные пользователи.

Разработчик утверждает, что ошибка отсутствует.

Необходимо подготовить unit-тесты.

Функция должна вернуть только активных пользователей.

⸻

Необходимо протестировать

Рассмотрите различные случаи:

- пустой список;
- все пользователи активны;
- все заблокированы;
- смешанный список;
- один пользователь.

⸻

⸻


"""

users: list[dict[str, str | bool]] = [
    {"name": "Stas", "active": True},
    {"name": "Danila", "active": False},
    {"name": "Oleg", "active": True},
    {"name": "Nikita", "active": False},
]


def get_active_users(users: list[dict[str, str | bool]]) -> list[dict]:
    output: list[dict[str, str | bool]] = []
    for user in users:
        if user.get("active") and user["active"]:
            output.append(user)
    return output