Skip to content

Skypromd/bank_project

Repository files navigation

Проект: Виджет банковских операций

Описание

Этот проект предназначен для обработки данных о банковских операциях. Он включает функции для фильтрации операций по состоянию и сортировки операций по дате.

Цели проекта

  • Обеспечить удобный интерфейс для работы с банковскими операциями.
  • Позволить пользователям фильтровать и сортировать операции.

Установка

  1. Клонируйте репозиторий:
    git clone https://github.com/Skypromd/bank_project.gitRL

Модуль generators

Функции

  • filter_by_currency(transactions, currency): Возвращает итератор транзакций по заданной валюте.

    Пример использования:

    usd_transactions = filter_by_currency(transactions, "USD")
    for _ in range(2):
        print(next(usd_transactions))

Декоратор log

Описание

Декоратор log предназначен для автоматического логирования деталей выполнения функций, включая время вызова, имя функции, передаваемые аргументы, результат выполнения и информацию об ошибках. Это позволяет обеспечить более глубокий контроль и анализ поведения программы.

Функциональность

  • Логирует начало и конец выполнения функции.
  • Записывает результат выполнения функции или информацию об ошибке.
  • Поддерживает запись логов как в файл, так и в консоль.
  • Принимает необязательный аргумент filename, который определяет имя файла для записи логов. Если filename не задан, логи выводятся в консоль.

Пример использования

@log(filename="mylog.txt")
def my_function(x, y):
    return x + y

my_function(1, 2)


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

- Для запуска тестов используйте `pytest`. Убедитесь, что у вас установлены все зависимости, и выполните команду:

```bash
pytest

###  4: Проверка покрытия тестами

 1. **Установите необходимые зависимости**:
   Убедитесь, что у вас установлены `pytest` и `pytest-cov` для проверки покрытия кода:

   ```bash
   pip install pytest pytest-cov

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages