Делать некоторые вещи в одно и то же время в модульном тесте Django
Как проверить, могут ли два пользователя одновременно забронировать один и тот же автомобиль?
def test_if_two_users_can_reserve_the_same_car_simultaneously(self):
with patch.object(
timezone,
"now",
return_value=make_aware(
datetime.datetime.combine(
datetime.date.today() + datetime.timedelta(days=1), datetime.time(10, 30, 0)
),
timezone=pytz.timezone("UTC"),
),
):
self.client.login(username=self.user.username, password=self.PASSWORD)
url = reverse("booking-list")
data = {
"book_for": datetime.datetime.combine(
datetime.date.today() + datetime.timedelta(days=1), datetime.time(11, 30, 0)
),
}
response = self.client.post(url, data=data)
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
with patch.object(
timezone,
"now",
return_value=make_aware(
datetime.datetime.combine(
datetime.date.today() + datetime.timedelta(days=1), datetime.time(10, 30, 0)
),
timezone=pytz.timezone("UTC"),
),
):
self.client.login(
username=self.another_user.username, password=self.PASSWORD
)
url = reverse("booking-list")
data = {
"book_for": datetime.datetime.combine(
datetime.date.today() + datetime.timedelta(days=1), datetime.time(11, 30, 0)
),
}
response = self.client.post(url, data=data)
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
Вот как я его написал, но в модульном тесте он выполняется построчно. То есть первая создается, затем переходит ко второй, но я хочу, чтобы они обе выполнялись одновременно. (Пожалуйста, ответьте примером)