Python Django, модульные тесты для функций?
В проекте Python Django функция retrieve_timerange(request)
не является членом какого-либо класса и содержит встроенную функцию parse_timestamp(datetime_str)
. Я хочу написать модульные тесты, чтобы охватить граничные условия, например, вход и выход из летнего летнего времени в местном часовом поясе.
Мне интересно:
- Как написать модульный тест для функции
retrieve_timerange(request)
? - Как написать модульный тест для встроенной функции
parse_timestamp(datetime_str)
?
Я сгенерировал приведенный ниже модульный тест test_service.py
с помощью PyCharm, и он работает. Однако я не вижу никакой связи с тестируемыми функциями. Я не знаю, как подать входные данные на вызов функции и проверить возврат. Я новичок в написании юнит-тестов, поэтому буду очень признателен за любые подсказки или предложения.
Частичный пример исходного кода service.py
:
from django.utils import timezone
from dateutil.parser import isoparse
import datetime
...
def retrieve_timerange(request):
def parse_timestamp(datetime_str):
...
return timestamp
...
time_from = None
time_to = None
if query_params is not None:
time_from = parse_timestamp(str_time_from)
time_to = parse_timestamp(str_time_to)
return time_from, time_to
...
Образец исходного кода теста блока test_service.py
:
from unittest import TestCase
import unittest
import dateutil
import pytz
class Test(TestCase):
def test_parse_timestamp(self):
self.fail()