Я пытаюсь использовать assertRaises(ValueError)
в Python для возврата ошибки, когда дата начала моего кода находится после даты окончания.
class TestDateUtils(unittest.TestCase):
def test_date_range(self):
start_date = datetime.date(2020, 1, 1)
end_date = datetime.date(2020, 1, 1)
expected = start_date < end_date
actual = start_date > end_date
with self.assertRaises(ValueError):
if actual:
raise ValueError
else:
expected
print("all fine")
Я новичок в Python (и это, вероятно, далеко не правильный способ написать это). Кто-нибудь знает правильный синтаксис для попытки получить этот конечный результат? Я просто хочу поднять ошибку значения, если моя дата начала после даты окончания.
Итак, каков наилучший способ достижения цели даты начала после даты окончания с помощью утверждения?
self.assertLess(end_date, start_date)
Цель assertRaises
— проверить, вызывает ли исключение тестируемый код при определенных обстоятельствах; это не для повышения значения ошибки.
Если вы хотите утверждать в контрольном примере, что одно значение меньше другого, вы можете использовать assertLess
или assertLessEqual
.
Например.
self.assertLess(end_date, start_date)
Цель
assertRaises
— проверить, вызывает ли исключение тестируемый код при определенных обстоятельствах; это не для повышения значения ошибки.