У меня есть такая модель:
class Car(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4)
create_date = models.DateTimeField('date added', auto_now_add=True)
modify_date = models.DateTimeField('date modified', auto_now=True)
...
def last_tracked_location(self):
...
try:
url = 'myurl'
return requests.get(
url,
).json()['location'])
except:
return False
Этот метод get вызывается позже для панели администратора.Он запрашивает что-то из API, а затем возвращает либо this, либо false.
В режиме тестирования другой API не существует, поэтому запрос задерживает все тесты до истечения времени ожидания, а затем возвращает False
.
Есть ли способ переопределить это?Я проверил docs , но смог найти только переопределение настроек.
Еще одна идея, которая у меня возникла, заключалась в том, чтобы проверить внутри метода, вызывается ли он в режиме тестирования, а затем просто никогда не входить в этот блок try.Но я не думаю, что это чистый способ.
ОБНОВЛЕНИЕ
Я называю тесты так:
python3 manage.py test --settings=app.settings_test